Roadmap
Full-Stack Developer
Full-stack means being useful on both sides of an HTTP request rather than expert on both. This route uses JavaScript and TypeScript so the same language carries you from the page to the server, then covers the browser, the API, the database and deployment in that order. It is longer than the single-side roadmaps, and it is deliberately honest that depth in one half still has to come from building things.
6 stages · 34 steps
Who this is for
Developers who want to own a feature end to end, and people building their own product who cannot hand either half to someone else. Comfortable with one of the other roadmaps' early stages is a fine place to join from.
One language on both sides
Write JavaScript confidently and add TypeScript to it, so the same skills serve the browser and the server.
- Language guideJavaScriptChosen because it runs in the browser and, with Node, on the server too.
- LessonJavaScript FunctionsA route handler and a component are both functions before they are anything else.
- LessonJavaScript ObjectsThe same shape you will send as JSON and read back from a database driver.
- ExercisesJavaScript exercisesChecked exercises, so the next stage does not begin on a language you are still guessing at.
- Language guideTypeScriptAdd types once the language itself is no longer new.
- LessonInterfaces and Object TypesOne type for a payload, shared by the code that sends it and the code that receives it.
- ExercisesTypeScript exercisesPractise until a checker complaint reads as information rather than an obstacle.
The browser half
Build a page that works, then understand what a framework adds and what it does not protect you from.
- Language guideHTML & CSSSkip this only if you can already lay out a page without copying one.
- PlaygroundHTML & CSS playgroundChange one rule and watch the layout move; quicker than reading about the box model.
- Concept guideReact and Next.jsComponents, state and where rendering happens — the vocabulary job adverts use.
- Concept guideCommon Web VulnerabilitiesRead while the frontend is fresh: several of these are introduced in the template layer.
The server half
Serve an API you designed, with sign-in that you can explain line by line.
- Concept guideHTTP and HTTPSThe contract between the two halves you are now writing.
- Concept guideNode.js and ExpressThe server runtime that lets you keep writing the language from stage one.
- Concept guideREST APIsNow from the other side: the conventions your own endpoints should follow so the browser half can predict them.
- Concept guideAuthentication vs AuthorizationBefore you write a login form, decide what it is proving.
- Concept guideJWT and OAuthThen the mechanics, including where a token may and may not be stored.
Data
Model the data your feature needs, query it directly, and know what your ORM is doing on your behalf.
- Language guideSQLLearn the query language before the library that writes queries for you.
- PlaygroundSQL playgroundRun the queries an ORM would generate for you, and see exactly what comes back.
- Concept guidePostgreSQLA sensible default database, and a specific one to reason about.
- Concept guideSQL vs NoSQLWhy some of your feature's data may not belong in the same store as the rest.
- Concept guideORM ConceptsNow the abstraction is safe to use, because you can read what it generated.
- Concept guideCaching StrategiesFor the point where the page is slow and the query is the reason.
Shipping and keeping it alive
Get both halves onto a machine that is not yours, automatically, without committing a secret.
- Concept guideGit and GitHubBranches and pull requests: where both halves of your work meet a reviewer.
- ReferenceGit commands referenceWith the commands that rewrite history clearly marked.
- Concept guideDocker and ContainersOne image that behaves the same on your laptop and on the server.
- Concept guideCI/CD PipelinesSo tests and deploys happen on a push instead of from memory.
- Concept guideCloud Computing FundamentalsWhat you are actually renting when you deploy, and what each part of it is billed for.
- Concept guideSecrets and Credential ManagementThe stage where an API key is most likely to end up in a public repository.
Interviews across the stack
Handle a frontend round, a backend round and a design discussion without sounding like you only did one of them.
- Interview prepFrontend interview questionsExpect the browser half to be tested in detail even when the advert says full-stack.
- Interview prepBackend & API interview questionsAnd the other half, asked in its own vocabulary in a separate round.
- Interview prepDatabase interview questionsSchema and indexing questions, which full-stack candidates are expected to answer too.
- Interview prepSystem Design interview questionsFull-stack candidates get these earlier, because they are expected to see the whole request.
- Practice problemMerge Overlapping BookingsSorting plus a careful sweep: the kind of problem a product codebase actually contains.
- Interview prepBehavioral interview questionsHave a couple of real stories ready about owning a feature end to end.
Projects to build along the way
Briefs in the languages this roadmap uses.
- Bill splitter and tip calculatorWork out the tip, add it on, and split the bill into whole cents that add back up exactly.
- Personal profile pageOne hand-written page about you that reads well on a phone and on a wide screen.
- Corner shop sales reportBuild a two-table shop database from scratch, then answer six real questions about it in SQL.
- To-do list that remembersA single-page task list with filters that survives a reload, built with no framework.
- Markdown-subset to HTML converterParse a documented subset of Markdown into typed blocks, then render safe HTML from them.
- REST API for a notes appA small HTTP API with a real database behind it, honest status codes, and tests that hit every route.
Interview topics for this role
What you will need to learn elsewhere
This site cannot teach everything this role involves. Plan for these too:
- Shipping one project end to end, including the parts nobody enjoys: a domain, HTTPS, a database that persists, and a bug reported by someone else.
- The official tutorials for the framework and the database driver you settle on — this site explains the ideas, not their current API.
- Working in a team codebase, where the frontend and backend were written by different people with different opinions.
- Testing at both levels: component tests, API tests, and one end-to-end test you trust.
- Estimating and scoping work, then negotiating when the estimate was wrong.
- Cost and operations on a real cloud account, with a bill you are accountable for.
- Depth in whichever half you are drawn to — full-stack means useful on both sides, not expert on both.