Inexperienced Teachers and Leaders
Share of Georgia teachers and leaders in their first career years by school, district, role, and poverty stratum, 2018-2024.
- 2018–2024
- annual
- 1.0.0
- 97f942f22b6b
Resumen
Georgia Office of Student Achievement (GOSA) Inexperienced Teachers and Leaders report. For every Georgia public school, school district, and the state as a whole, reports the total educator full-time equivalent (`total_fte`), the FTE of educators classified as Inexperienced — within the first years of their career, per the ESSA inexperienced-educator standard — (`inexperienced_fte`), and the inexperienced FTE as a percentage of total FTE (`inexperienced_fte_rate`, on a 0-1 decimal scale). Unlike the sibling educator-qualifications topics (Teachers-only), this dataset reports both Teachers and Leaders (`role`), and each entity carries rows across school-poverty strata (`poverty_subgroup`: total, high_poverty, low_poverty, plus not_applicable and unknown for Leaders). Coverage spans the 2017-2018 school year through 2023-2024.
Granularidad de fila: Una fila por year, district_code, school_code, role, poverty_subgroup.
inexperienced_fte_rate — Inexperienced FTE Rate (proportion)
El valor principal que la mayoría de las consultas busca.
Variables
Todas las columnas de la tabla de hechos. El código es el nombre exacto del campo que devuelve la API.
| Columna | Tipo | Unidad | Rango | ¿Nulo? | Descripción |
|---|---|---|---|---|---|
year | integer | — | — | no | Ending calendar year of the school year. Year 2024 = 2023-2024 school year. Derived from the bronze `LONG_SCHOOL_YEAR` column's ending year.Descripción completa▾Ending calendar year of the school year. Year 2024 = 2023-2024 school year. Derived from the bronze `LONG_SCHOOL_YEAR` column's ending year. |
district_code | string | — | — | yes | 3-digit GOSA district code (zero-padded) for standard districts; 7-digit charter code for charter / specialty-school districts; NULL for state-level aggregate rows. FK to the education districts dimension. Because the source publishes only district NAMES (no codes), codes are resolved against `data/gold/education/_dimensions/districts.parquet` via the shared educator-topic resolver (year-aware certified_personnel lookups, curated code pins, and guarded name matching — see src/etl/education/gosa/_educator_lookups.py). Rows whose names cannot be resolved or faithfully attributed are dropped only under documented predicates; the transform manifest records each dropped class and count per year.Descripción completa▾3-digit GOSA district code (zero-padded) for standard districts; 7-digit charter code for charter / specialty-school districts; NULL for state-level aggregate rows. FK to the education districts dimension. Because the source publishes only district NAMES (no codes), codes are resolved against `data/gold/education/_dimensions/districts.parquet` via the shared educator-topic resolver (year-aware certified_personnel lookups, curated code pins, and guarded name matching — see src/etl/education/gosa/_educator_lookups.py). Rows whose names cannot be resolved or faithfully attributed are dropped only under documented predicates; the transform manifest records each dropped class and count per year. |
school_code | string | — | — | yes | 4-digit GOSA school code (zero-padded); NULL for district-level and state-level aggregate rows. FK to the education schools dimension (composite key with district_code). Resolved by name via the shared educator-topic resolver; school-level rows whose name cannot be resolved to a dimension entry are dropped under documented source-gap predicates only (counts in the transform manifest).Descripción completa▾4-digit GOSA school code (zero-padded); NULL for district-level and state-level aggregate rows. FK to the education schools dimension (composite key with district_code). Resolved by name via the shared educator-topic resolver; school-level rows whose name cannot be resolved to a dimension entry are dropped under documented source-gap predicates only (counts in the transform manifest). |
role | string | — | — | no | Workforce role the row measures: teachers or leaders (principals and assistant principals).Descripción completa▾Workforce role the row measures: `teachers` or `leaders` (principals / assistant principals). Unlike the sibling emergency / out-of-field educator-qualifications topics (Teachers-only), this dataset reports both roles. 2 valores permitidos▾
|
poverty_subgroup | string | — | — | no | School-poverty stratum the row covers (total, high, or low poverty; Leaders add not_applicable/unknown); a school-poverty level, not a student demographic.Descripción completa▾Poverty stratum of the schools whose FTE this row aggregates. `total` covers all schools in the entity; `high_poverty` / `low_poverty` cover only the entity's schools in the state's highest- / lowest-poverty quartile (per GOSA's K-12 Teacher & Leader Workforce Reports, school poverty is defined by the direct-certification rate). Leaders rows additionally carry `not_applicable` (the dominant Leaders stratum) and `unknown` (rare — chiefly Department of Juvenile Justice facilities, plus isolated Mitchell County 2022 and Gwinnett County 2024 rows); Teachers rows never carry either (enforced by a quality check). For a school-level row the stratum describes the school itself, so a stratum row duplicates that school's `total` row (enforced by a quality check). This is a SCHOOL-poverty stratum, NOT a student demographic — it does not map to the global demographics dimension. 5 valores permitidos▾
|
total_fte | number | — | yes | Total educator full-time equivalent count in the entity for the given role and poverty subgroup. For `poverty_subgroup = total` this is the entity's total role FTE; for other strata it is the FTE in just that stratum of schools. Fractional FTEs are real (e.g. 58.2). NULL when suppressed by the GOSA reporting floor (`TFS`, < 10 FTE) — 2021 onward. Denominator of `inexperienced_fte_rate`.Descripción completa▾Total educator full-time equivalent count in the entity for the given role and poverty subgroup. For `poverty_subgroup = total` this is the entity's total role FTE; for other strata it is the FTE in just that stratum of schools. Fractional FTEs are real (e.g. 58.2). NULL when suppressed by the GOSA reporting floor (`TFS`, < 10 FTE) — 2021 onward. Denominator of `inexperienced_fte_rate`. | |
inexperienced_fte | number | — | yes | Educator FTE classified as Inexperienced (within the first years of their career, per the ESSA inexperienced-educator standard) in the entity for the given role and poverty subgroup. NULL when suppressed (`TFS`, < 10 FTE) — observed from 2021 onward. True zeros (no inexperienced educators) are preserved as 0.0 in 2018-2020, before GOSA introduced suppression for this report. Numerator of `inexperienced_fte_rate`. WARNING — not additive across hierarchy levels for Teachers: school-row sums exceed the district row and district-row sums exceed the state row by ~1.4x in every year (bronze-native; consistent with experience measured relative to the reporting unit — new-to-school vs new-to-district vs new-to-profession). Never derive an aggregate by summing lower-level rows; use the published row for the level you need. Leaders rows and `total_fte` DO reconcile across levels (~1.000). Six 2018-2020 Leaders rows at tiny programs exceed `total_fte` by exactly 0.1 (e.g. 2.0 vs 1.9 at Randolph Clay High School 2018) — an artifact of GOSA rounding each FTE to 0.1 independently; preserved per data-cleaning-standards §4b (extreme-but-conceivable).Descripción completa▾Educator FTE classified as Inexperienced (within the first years of their career, per the ESSA inexperienced-educator standard) in the entity for the given role and poverty subgroup. NULL when suppressed (`TFS`, < 10 FTE) — observed from 2021 onward. True zeros (no inexperienced educators) are preserved as 0.0 in 2018-2020, before GOSA introduced suppression for this report. Numerator of `inexperienced_fte_rate`. WARNING — not additive across hierarchy levels for Teachers: school-row sums exceed the district row and district-row sums exceed the state row by ~1.4x in every year (bronze-native; consistent with experience measured relative to the reporting unit — new-to-school vs new-to-district vs new-to-profession). Never derive an aggregate by summing lower-level rows; use the published row for the level you need. Leaders rows and `total_fte` DO reconcile across levels (~1.000). Six 2018-2020 Leaders rows at tiny programs exceed `total_fte` by exactly 0.1 (e.g. 2.0 vs 1.9 at Randolph Clay High School 2018) — an artifact of GOSA rounding each FTE to 0.1 independently; preserved per data-cleaning-standards §4b (extreme-but-conceivable). | |
inexperienced_fte_rate | number | — | yes | Share of educator FTE classified as inexperienced, on a 0-1 scale (inexperienced_fte / total_fte).Descripción completa▾`inexperienced_fte` / `total_fte` on a 0-1 decimal scale. Bronze publishes an integer 0-100 percent (verified range 0-100 across all years); divided by 100 per data-cleaning-standards §4. GOSA computes the integer percent from UNROUNDED FTE values while publishing FTEs rounded to 0.1, so at small programs the published rate deviates from inexperienced_fte/total_fte (up to 0.9 below 10 FTE, e.g. published 0.1/0.1 with rate 0.10; at or above the 10-FTE reporting floor the worst observed deviation is 0.09). A quality check enforces reconciliation within 0.10 where total_fte >= 10. The rate is preserved from bronze even when `inexperienced_fte` is suppressed. |
Filtros
Parámetros de consulta que acepta el endpoint de hechos. Los valores separados por comas son OR dentro de un parámetro; varios parámetros se combinan con AND.
| Parámetro | Tipo | Valores permitidos | Notas |
|---|---|---|---|
year | year_exact | cualquier valor | — |
year_min | year_range | cualquier valor | — |
year_max | year_range | cualquier valor | — |
detail | detail | districtsschoolsstates | enum validado, predeterminado: schools |
district_code | foreign_key | cualquier valor | valores múltiples |
school_code | foreign_key | cualquier valor | valores múltiples |
role | categorical | leadersteachers | valores múltiples, enum validado, elige uno |
poverty_subgroup | categorical | high_povertylow_povertynot_applicabletotalunknown | valores múltiples, enum validado |
district_type | dimension_attribute | 7 valores permitidos▾
| valores múltiples, enum validado |
Ejemplos de solicitudes
Ejecútalos contra la URL base: devuelven datos en vivo.
All rows (first page), schools level
curl "https://georgiacivicdata.org/api/v1/education/educator_qualifications_inexperienced_teachers_leaders"schools data for 2024
curl "https://georgiacivicdata.org/api/v1/education/educator_qualifications_inexperienced_teachers_leaders?year=2024"Filtered to role = leaders for 2024
curl "https://georgiacivicdata.org/api/v1/education/educator_qualifications_inexperienced_teachers_leaders?year=2024&role=leaders"One district (code 601), 2024
curl "https://georgiacivicdata.org/api/v1/education/educator_qualifications_inexperienced_teachers_leaders?district_code=601&year=2024&detail=districts"Download 2024 as CSV
curl "https://georgiacivicdata.org/api/v1/education/educator_qualifications_inexperienced_teachers_leaders?year=2024&format=csv"Notas y limitaciones
Manejo de NULL
- Las celdas suprimidas (muy pocos estudiantes para reportar) son NULL, nunca cero.
- El cero es un valor real y reportado.
Limitaciones
Suppression is era-asymmetric: 2018-2020 publish a real `0` (true zero inexperienced educators, 723-765 rows per year), while 2021 onward suppress any value below 10 with `TFS` (treat NULL as 'value < 10' for 2021+ but as genuinely missing pre-2021); inexperienced_fte_rate may be non-null even when inexperienced_fte is suppressed. The source publishes only district/school NAMES, so codes are resolved by name against the education dimensions via the shared educator-topic resolver (year-aware certified_personnel lookups, curated code pins, guarded matching); rows that cannot be resolved or faithfully attributed are dropped only under documented predicates — unresolved truncated charter-container placeholders, cataloged source gaps (e.g. Ivy Prep Kirkwood), and the ambiguous 52-char-truncated Genesis Innovation Academy district aggregates (Boys/Girls distinguisher erased; bare school rows carry the real values) — with per-year counts in the transform manifest. District-level coverage for Genesis Innovation Academy is therefore missing in 2023-2024 while its school-level rows are complete. The 2024 truncated Utopian Academy aggregates (one Leaders/Total identical-metric pair collapsed by dedup, plus a single Leaders/Low Poverty row) are all bound to the pinned main campus 7820121 even though the truncated name also covers the Trilith campus 7820619 — the Low Poverty row likely describes Trilith; preserved as published and matching the v1-approved handling. Six 2018-2020 Leaders rows carry inexperienced_fte exceeding total_fte by exactly 0.1 (independent 0.1-FTE rounding; preserved per data-cleaning-standards §4b). Teachers `inexperienced_fte` does NOT aggregate across hierarchy levels: school-row sums exceed the district row and district-row sums exceed the state row by ~1.4x in every year (consistent with experience measured relative to the reporting unit); never derive aggregates by summing lower-level rows. The 2019 file's Teachers FTE levels run ~40% above adjacent years statewide (162,256.2 vs 118,009.1 in 2018 / 110,800.8 in 2020) and the 2018 file's school-level total_fte can sum above the district row (149 of 205 districts) — treat 2018-2019 levels as a distinct measurement basis when trending. State rows have NULL district_code and school_code; district rows have NULL school_code.