Roles and job titles
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.
| Role | What they actually own | Also 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.
| Role | What they actually own | Also known as / notes |
|---|---|---|
| Project Manager | Scope, 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 Manager | Coordinates 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 Master | A 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 / Lead | Agile-flavored delivery coordination: flow, impediments, stakeholder comms. | a.k.a. Iteration Manager; often overlaps the Scrum Master role. |
| Agile Coach | Coaches 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):
| Level | Common titles | Rough scope |
|---|---|---|
| Entry | Intern → Junior / Associate Engineer, SWE I, New Grad | Executes well-defined tasks with guidance. |
| Mid | Software Engineer, SWE II, Engineer II | Owns features independently. |
| Senior | Senior Engineer | Owns systems; mentors; drives projects. |
| Staff+ | Staff → Senior Staff → Principal → Distinguished → Fellow | Impact 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:
| Specialization | Focus | Watch out |
|---|---|---|
| Frontend | The user-facing UI (browser/app). | |
| Backend | Servers, APIs, business logic, databases. | |
| Full-stack | Both front and back. | Scope varies enormously by company. |
| Mobile | iOS / Android apps. | |
| DevOps Engineer | CI/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 Engineer | Builds the internal tools/platform other engineers build on. | Newer; overlaps DevOps/SRE. |
| QA / Test Engineer / SDET | Quality and testing; SDET writes test automation (a coding role). | ”Tester” (manual) vs “SDET” (writes code) are different jobs. |
| Security Engineer | Application/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:
| Role | Focus | One-line distinction |
|---|---|---|
| Data Analyst | Querying data, dashboards, business insight (SQL, BI tools). | Explains what happened. |
| Data Scientist | Statistics, experimentation, modeling, ML research. | Predicts what will happen / why. |
| Data Engineer | Builds the pipelines and storage that move data reliably. | Builds the plumbing the other two use. |
| ML Engineer | Puts machine-learning models into production. | Ships/serves models at scale. |
| Analytics Engineer | Transforms raw data into clean, modeled datasets (e.g. dbt). | Bridges data engineer and analyst. |
Design & UX roles
| Role | Focus |
|---|---|
| UX Designer | Research, user flows, information architecture, usability: how it works. |
| UI Designer | Visual design: how it looks (mockups, design systems). |
| Product Designer | Both UX and UI plus product thinking; common at startups. |
| UX Researcher | Studies 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
- Scrum: where Product Owner, Scrum Master, and Developers are defined precisely
- Software development process: why Project Manager fits plan-driven and Scrum Master fits agile
- Product backlog · User story: the artifacts product roles work with
References
- S. Wang (swyx), The Coding Career Handbook (2020). On levels and tracks. https://learninpublic.org/
- W. Larson, Staff Engineer: Leadership Beyond the Management Track (2021). The IC ladder above senior. https://staffeng.com/book
- C. Fournier, The Manager’s Path: A Guide for Tech Leaders Navigating Growth and Change, O’Reilly (2017). The management ladder. https://openlibrary.org/works/OL19860807W
- K. Schwaber & J. Sutherland, The Scrum Guide (2020). For the Scrum accountabilities. https://scrumguides.org/scrum-guide.html