Part 5 of 9 in The Office That Tripled

SDP's 26,433 Positions, Mapped by What They Do

SDP's 26,433 positions split into ten role families. School support, per-diem, and central office drove 98.8% of growth.

SDP’s 2025-26 roster, headcount by role family, sorted descending. Teacher is the largest at 9,686 positions. Food services is the smallest at 99. Source: SDP Open Data, position roster.

A school district employs a lot of different kinds of people. The School District of Philadelphia's April 2026 roster shows 26,433 positions. Sorting those positions by what kind of work the title describes, ten categories fit, plus a small remainder of titles that don't map cleanly to any of them.

Each dot is one role family. Position on the right = how big the family is in 2025-26; position up = how fast it grew since 2014-15. Teacher is the largest family but grew modestly; central office is mid-sized and grew fastest. Source: SDP Open Data, position roster.

Three families drove essentially the entire headcount expansion. School support more than doubled (+113% — counselors, school nurses, social workers, school psychologists, classroom assistants, paraprofessionals, climate staff). Per-diem more than tripled (+238%). Central office more than tripled (+240% — lawyers, analysts, directors, chiefs, assistant superintendents, IT, HR, finance, communications). Together those three added 7,477 positions — 98.8% of the District's net 7,567-position increase since 2014-15. Some of that growth — especially in the per-diem bucket — is partly tracking how the District classifies its workers rather than a pure expansion.

Two families shrank. Transportation fell 37% as more bus routes went to vendor contracts; the District still runs its own depots (BROAD STREET, SHALLCROSS, PASSYUNK) with in-house drivers and mechanics, just fewer of them. Food services collapsed 89% as a central-org classification — but only as a central-org classification. The District-wide food-services workforce (counted across central, school, admin, and per-diem orgs) is 1,046 positions, not 99. The 89% drop is a reclassification event, mostly because cafeteria workers now sit in school-based orgs and get counted in school support above. The piece two steps back in this series walked through this in detail.

The pattern on the right side of the scatter is the interesting one. The biggest families in the system — teacher, building services, safety — each grew at roughly the rate of the District overall (8-19%). The fastest-growing families are mid-sized or smaller. Size and growth rate, in other words, don't move together: this isn't a story about the District getting uniformly bigger, it's a story about three specific kinds of work expanding much faster than the rest.

All ten role families (and one more)
Role familyWhat they do2025-26 positionsChange since 2014-15
TeacherClassroom teachers. Regular-education teachers, special-education teachers, teacher-track support roles. The step-and-lane salary schedule governs most of the pay.9,686+10%
School supportSchool-based roles that aren't classroom teachers or administrators: counselors, school nurses, social workers, school psychologists, classroom assistants, paraprofessionals, climate staff.5,920+113%
Per-diemPer-diem workers, long-term contractors, leave-status staff. Many rows are the same person working more than one assignment concurrently.4,635+238%
Central officeCentral-office administrators by title: lawyers, analysts, directors, chiefs, assistant superintendents, IT staff, HR, curriculum, finance, communications, school-safety leadership, facilities-management leadership.1,515+240%
Building servicesCustodians, trades staff (carpentry, plumbing, electrical, painting, masonry, machinist), facilities staff. Mostly school-based.1,345+19%
School adminPrincipals, assistant principals, deans, vice principals at individual schools. The educational leadership at each building.583+59%
TransportationBus drivers and bus-depot staff. The District still runs its own bus depots (BROAD STREET, SHALLCROSS, PASSYUNK) with in-house drivers and mechanics.531−37%
SafetySchool police officers, campus security, school safety officers. Mostly school-based.397+8%
Food servicesCafeteria workers, cooks, food-service managers with central-org titles. The District-wide food-services workforce is 1,046 positions; the 99 here is the central-org subset.99−89%
OtherThe remainder. NON DISTRICT EMPLOYEE, CONTRACTED POSITION, and a small number of titles that don't match any of the ten families cleanly.1,722−9%

Where each role family sits in the District

A second cut of the same data: for each role family, what share of its positions sit in school-based orgs vs central admin vs central operations vs per-diem orgs. The chart below breaks each role family into its organizational unit.

SDP 2025-26 headcount by role family, broken into organizational unit (school / central admin / central operations / per-diem). Most role families have a natural home; a few straddle. Source: SDP Open Data, position roster.

Most role families have a clear organizational home. Teacher, school support, school admin, safety, food services: predominantly school-based. Central office: predominantly central admin. Building services: split between school and central. Transportation: predominantly central operations. Per-diem: per-diem.

The shape is mostly unsurprising — what kind of work a person does tends to predict which org unit they sit in. The map is useful here for two reasons: it gives readers a way to move from the role-family cut to the org-class cuts used elsewhere in the series without losing context, and it flags the cases where the two cuts disagree (food services above; central office above).

Three families (school support, per-diem, central office) accounted for 98.8% of the District's 7,567-position net headcount growth since 2014-15 — adding 7,477 of those positions between them. By comparison, teachers who themselves comprise the largest chunk of SDP positions (roughly 40%) only grew by 12%. During this same 10-year period, the student body shrunk by about 13%. It is important to note that the SDP is still, at its core (as measured by position count), a teaching organization. However, there has been substantial growth in both services surrounding teaching (e.g., social services) as well as the central office (which as my prior research noted, is largely people responsible for the essential work of fixing and updating the school buildings).

Notes, Sources, and Methodology

Source: SDP's quarterly position roster on OpenDataPhilly, 2014-15 and 2025-26 snapshots. Role family classifications come from keyword patterns over TITLE_DESCRIPTION in lib_sdp_roles.py (1,900+ distinct titles classified into ten role families + an "other" catch-all). The role-family classification is separate from the org-class classification the District uses internally: ROLE_FAMILY is by what kind of work the title describes; ORG_CLASS is by the organizational unit the position sits in. The same row appears in both classifications.

The narrower 1,515 "central office" count here reflects a title-keyword cut (positions whose title signals central-office work, like DIRECTOR / CHIEF / ASSISTANT SUPERINTENDENT). Earlier pieces in this series used the District's own org-class taxonomy, which counts 4,228 central-administration positions because the administrative orgs also include rows whose titles don't match the keyword patterns here (ADMINISTRATIVE ASSISTANT, OFFICE MANAGER, and similar). Both counts are accurate; they describe different cuts of the same data.

All pay types (SALARIED + DAILY + HOURLY + per-diem) are included in the role-family counts. The 4,635 per-diem row count includes some duplicate person-counts across concurrent positions, since per-diem staff can hold more than one assignment in a quarter. The percentages are computed against 2014-15 baseline counts in the same role family.