What is a full-stack developer?
A full-stack developer can build a feature from the database to the user interface and everything between. Not an expert in every layer, but capable across all of them — able to own a whole feature rather than just one slice of it.
Why it matters
Smaller teams and startups especially value people who can ship end to end without handing off at every boundary. Full-stack developers understand how decisions in one layer ripple into others, which makes them effective and employable. This track gives enough of both halves plus the seam that joins them.
What to learn
- The layers: client, server, database, infrastructure
- What "owning a feature end to end" means in practice
- The breadth-versus-depth trade-off of the role
- Common full-stack architectures
- Where this track focuses: the seam between front and back
- The TypeScript-everywhere stack this track uses
- Realistic expectations for the role
Common pitfall
Believing full-stack means being an expert at everything simultaneously. Nobody is. It means competent across the stack and able to learn the layer a task needs. Chasing mastery of every technology at once leads to burnout and shallow knowledge; aim for working competence plus the judgment to go deep when needed.
Resources
Primary (free):
- roadmap.sh — Full Stack · docs
- MDN — Server-side overview · docs
- The Odin Project — Full stack path · course
Practice
Map a feature you have used — say posting a comment — through every layer: the UI that captures it, the API that receives it, the database that stores it, and the response back to the screen. Done when you can name what each layer does for that one feature.
Outcomes
- Describe the layers of a full-stack application.
- Explain what owning a feature end to end means.
- Set realistic breadth-versus-depth expectations.
- Trace one feature through every layer of the stack.