Roles and job titles

By Allen Jay Bercero

A role is a job to be done on a software team (own the product’s direction, write the code, keep it running). A job title is the label a specific company prints on your offer letter. The two are only loosely connected, which is the single biggest reason the industry feels confusing from the inside.

This article maps the stable underlying roles, then shows the many titles each one hides behind. Treat it as a decoder ring, not an org chart: it is not a hierarchy, and no company uses all of these.

The core problem: titles are not standardized

Three failure modes to watch for:

  • Same title, different job. A “Program Manager” at Microsoft is roughly a Product Manager; at Amazon it’s a delivery/coordination role. “Senior Engineer” at a 10-person startup ≠ “Senior Engineer” at Google.
  • Different titles, same job. Software Engineer = Developer = Programmer = SDE. All the same role.
  • Colliding acronyms. “PM” means Product Manager or Project Manager depending on the room. Always disambiguate.

Practical rule: ask about scope and responsibilities, never trust the title alone.


Product roles

Who decides what gets built and why.

RoleWhat they actually ownAlso known as / notes
Product Manager (PM)Product vision, strategy, market/customer research, the roadmap, and prioritization across the whole product. Business- and customer-facing.The strategic “CEO of the product” (a cliché: they have no direct authority). Not a Scrum term.
Product Owner (PO)A Scrum accountability: owns and orders the Product backlog, maximizes the value the team delivers. Tactical, team-facing.A Scrum role. See below, constantly confused with PM.
Business Analyst (BA)Elicits, analyzes, and documents requirements; bridges business stakeholders and the tech team.Common in enterprise, consulting, and plan-driven shops. Overlaps the PO’s job in agile teams.

Product Owner vs Product Manager: the classic mix-up

  • PM = why and what, at the strategy level (which problems, for which market, in what order overall).
  • PO = what, at the backlog level (turning that into ordered, ready stories for one team). In small companies one person is both. In larger ones a PM sets strategy while one or more POs run the backlogs. Neither “owns” the engineers.

Delivery & process roles

Who keeps the work flowing: coordination, unblocking, schedule.

RoleWhat they actually ownAlso known as / notes
Project ManagerScope, schedule, budget, and risk for a defined project with an end date. Plan-driven origin.The other “PM.” Certified via PMI/PMP. Rare inside pure agile teams.
Program ManagerCoordinates many related projects/teams (a “program”) toward a larger goal.At Microsoft, historically ≈ a Product Manager, a notorious company-specific meaning.
Technical Program Manager (TPM)Program management for cross-team technical delivery (dependencies, infra rollouts).Common at Google/Amazon/Meta.
Scrum MasterA Scrum accountability: coaches the team on Scrum, removes impediments, protects focus. Servant-leader with no authority over scope or people.See warning below.
Delivery Manager / LeadAgile-flavored delivery coordination: flow, impediments, stakeholder comms.a.k.a. Iteration Manager; often overlaps the Scrum Master role.
Agile CoachCoaches multiple teams or the whole org on agile ways of working.A step broader than a Scrum Master.

Scrum Master vs Project Manager vs Delivery Lead

A Project Manager directs scope, plan, and budget top-down. A Scrum Master has none of that authority. They coach and unblock. Companies that relabel their project managers “Scrum Masters” without changing the job are a common source of confusion (and of “fake agile”).


Engineering roles: the person who builds it

The base title is one role with many names

Software Engineer = Software Developer = Programmer = Coder = SDE (Software Development Engineer) = Dev. These are synonyms for the same core role: writing and maintaining software. Minor connotation differences exist (some argue “engineer” implies broader design responsibility than “programmer”) but in job markets they’re interchangeable.

Seniority: the individual-contributor (IC) ladder

Levels measure scope and autonomy, not just years. A representative ladder (titles vary; the shape is stable):

LevelCommon titlesRough scope
EntryIntern → Junior / Associate Engineer, SWE I, New GradExecutes well-defined tasks with guidance.
MidSoftware Engineer, SWE II, Engineer IIOwns features independently.
SeniorSenior EngineerOwns systems; mentors; drives projects.
Staff+Staff → Senior Staff → Principal → Distinguished → FellowImpact across teams/org; sets technical direction.

"Senior" is the least reliable word in tech

Because there’s no standard, “Senior” at a small startup can mean 3 years’ experience, while at a big tech company it’s a specific, hard-to-reach level (e.g. Google L5, Meta E5, Amazon SDE III). Judge by the responsibilities described, not the word.

Level numbers you'll hear (all mean roughly "senior → staff → principal")

Google L5 / L6 / L7 · Meta E5 / E6 / E7 · Amazon SDE III / Principal / Senior Principal · Microsoft levels 63 / 65 / 67+. The numbers are company-internal. Don’t try to convert them precisely across companies.

The fork: IC track vs management track

Around the senior level, careers split into two parallel ladders. You do not have to become a manager to keep advancing.

  • IC (individual contributor) track: Senior → Staff → Principal → Distinguished → Fellow. Grows technical scope and influence; you keep building.
  • Management track: Engineering Manager (EM) → Director → VP of Engineering → CTO. Grows people and organizational responsibility; you stop coding day-to-day.

Tech Lead vs Engineering Manager vs Architect

  • Tech Lead (TL): leads the technical direction of a team’s work. Usually a hat worn by a senior/staff engineer, not a separate rank, and typically not a people manager. (Google’s Tech Lead Manager / TLM is a hybrid that does both.)
  • Engineering Manager (EM): a people manager: hiring, growth, performance, team health. May or may not still code.
  • Architect (Software / Solution / Enterprise, in increasing scope): owns high-level system design. In some orgs it’s a senior IC role ≈ Principal Engineer; in others a distinct, often non-coding role. Some modern orgs have no “architect” title and expect Staff+ engineers to do it.

Engineering specializations

The base engineer role, pointed at a particular layer or concern:

SpecializationFocusWatch out
FrontendThe user-facing UI (browser/app).
BackendServers, APIs, business logic, databases.
Full-stackBoth front and back.Scope varies enormously by company.
MobileiOS / Android apps.
DevOps EngineerCI/CD pipelines, infrastructure automation, deployment.”DevOps” is really a culture; as a title it means infra/automation work.
Site Reliability Engineer (SRE)Reliability via software engineering: SLOs, error budgets, on-call.Google’s discipline; overlaps DevOps but is more ops-as-software.
Platform EngineerBuilds the internal tools/platform other engineers build on.Newer; overlaps DevOps/SRE.
QA / Test Engineer / SDETQuality and testing; SDET writes test automation (a coding role).”Tester” (manual) vs “SDET” (writes code) are different jobs.
Security EngineerApplication/infra security, threat modeling.a.k.a. AppSec; “red team” attacks, “blue team” defends.

SRE vs DevOps Engineer

DevOps is a philosophy (dev + ops working as one, automating everything). SRE is a specific implementation of that idea from Google, treating operations as a software problem with measurable reliability targets. As job titles they overlap heavily; ask what the team actually does.


Data & ML roles

Frequently blurred into “the data team,” but they’re distinct:

RoleFocusOne-line distinction
Data AnalystQuerying data, dashboards, business insight (SQL, BI tools).Explains what happened.
Data ScientistStatistics, experimentation, modeling, ML research.Predicts what will happen / why.
Data EngineerBuilds the pipelines and storage that move data reliably.Builds the plumbing the other two use.
ML EngineerPuts machine-learning models into production.Ships/serves models at scale.
Analytics EngineerTransforms raw data into clean, modeled datasets (e.g. dbt).Bridges data engineer and analyst.

Design & UX roles

RoleFocus
UX DesignerResearch, user flows, information architecture, usability: how it works.
UI DesignerVisual design: how it looks (mockups, design systems).
Product DesignerBoth UX and UI plus product thinking; common at startups.
UX ResearcherStudies users through interviews and testing; feeds the designers.

Don't confuse with the design fidelity artifacts

A UI Designer (a person) produces mockups (a thing). Don’t mix the role with the artifact.


For the career-changer

  • Advancement doesn’t require management. The Staff+ IC track exists precisely so strong builders can grow without managing people.
  • Titles are negotiable and inflate at small companies. A grand title at a tiny startup may carry less scope than a humble one at a large firm.
  • When comparing offers or roles, compare the responsibilities and level, not the words. Ask: “What does someone at this level own here?”
  • Entry-level goes by many names: Junior, Associate, SWE I, Graduate/New Grad, Apprentice. They’re all “the first rung.”

See also

References