Junior Habits & First Job
The habits that make a junior engineer effective, fast.
Backend Engineer track
Junior
Write correct code, ship small changes safely, ask good questions.
Core: start here
- Clarifying TicketsAsking questions before building the wrong thing.
- Following Team ConventionsMatching the existing style even when you'd do it differently.
- Making Mistakes in ProductionOwning up quickly when you break something.
- Productive StruggleStruggling long enough to learn, but not so long you waste days.
- Reading an Unfamiliar CodebaseStarting from entry points, tests and data flow.
- Testing Your Own WorkChecking that your change works before calling it done.
- Understand Before You ChangeKnowing why code exists before you modify it.
- Your First WeeksSetting up, meeting people, and shipping something small early.
11 more junior concepts
- Context Switching CostWhy jumping between tasks destroys productivity.
- Deep Work / Focus TimeLong, uninterrupted blocks for hard problems.
- Done Is Better Than PerfectShipping working software instead of polishing forever.
- Finding a MentorGetting guidance from someone more experienced.
- Fundamentals over FrameworksFrameworks change; the concepts underneath them don't.
- Impostor SyndromeFeeling you don't belong despite the evidence.
- Keeping an Engineering JournalWriting down what you learn, decide and get stuck on.
- Learning How to LearnDeliberate practice, spaced repetition and building things.
- Onboarding YourselfUsing code, docs and history to learn a new codebase.
- Time ManagementPlanning your day, protecting focus time and finishing what you start.
- Tutorial HellEndlessly following tutorials without building anything on your own.
Mid-level
Own a feature end to end without hand-holding.
Nothing here yet.
Senior
Own a system, its failure modes, and its trade-offs.
Nothing here yet.
Staff
Shape how many teams build, across systems.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.
Data Analyst track
Junior
Write correct SQL, build trusted dashboards, ask good questions.
- Clarifying TicketsAsking questions before building the wrong thing.
- Testing Your Own WorkChecking that your change works before calling it done.
Mid-level
Own an analysis end to end, from vague question to recommendation.
- Done Is Better Than PerfectShipping working software instead of polishing forever.
Senior
Own experimentation and metrics design; call out bad numbers.
Nothing here yet.
Staff
Shape how the organization measures and decides.
Nothing here yet.
Principal
Set measurement strategy across the company.
Nothing here yet.
Data Engineer track
Junior
Build and fix pipelines from clear specs; write correct SQL.
Core: start here
- Clarifying TicketsAsking questions before building the wrong thing.
- Following Team ConventionsMatching the existing style even when you'd do it differently.
- Making Mistakes in ProductionOwning up quickly when you break something.
- Productive StruggleStruggling long enough to learn, but not so long you waste days.
- Reading an Unfamiliar CodebaseStarting from entry points, tests and data flow.
- Testing Your Own WorkChecking that your change works before calling it done.
- Understand Before You ChangeKnowing why code exists before you modify it.
- Your First WeeksSetting up, meeting people, and shipping something small early.
11 more junior concepts
- Context Switching CostWhy jumping between tasks destroys productivity.
- Deep Work / Focus TimeLong, uninterrupted blocks for hard problems.
- Done Is Better Than PerfectShipping working software instead of polishing forever.
- Finding a MentorGetting guidance from someone more experienced.
- Fundamentals over FrameworksFrameworks change; the concepts underneath them don't.
- Impostor SyndromeFeeling you don't belong despite the evidence.
- Keeping an Engineering JournalWriting down what you learn, decide and get stuck on.
- Learning How to LearnDeliberate practice, spaced repetition and building things.
- Onboarding YourselfUsing code, docs and history to learn a new codebase.
- Time ManagementPlanning your day, protecting focus time and finishing what you start.
- Tutorial HellEndlessly following tutorials without building anything on your own.
Mid-level
Own pipelines and models end to end, including their quality.
Nothing here yet.
Senior
Design the platform's storage, processing and modeling choices.
Nothing here yet.
Staff
Shape how the whole organization produces and uses data.
Nothing here yet.
Principal
Set data strategy and architecture across the company.
Nothing here yet.
Frontend Engineer track
Junior
Build UI that works, ship small changes safely, ask good questions.
Core: start here
- Clarifying TicketsAsking questions before building the wrong thing.
- Following Team ConventionsMatching the existing style even when you'd do it differently.
- Making Mistakes in ProductionOwning up quickly when you break something.
- Productive StruggleStruggling long enough to learn, but not so long you waste days.
- Reading an Unfamiliar CodebaseStarting from entry points, tests and data flow.
- Testing Your Own WorkChecking that your change works before calling it done.
- Understand Before You ChangeKnowing why code exists before you modify it.
- Your First WeeksSetting up, meeting people, and shipping something small early.
11 more junior concepts
- Context Switching CostWhy jumping between tasks destroys productivity.
- Deep Work / Focus TimeLong, uninterrupted blocks for hard problems.
- Done Is Better Than PerfectShipping working software instead of polishing forever.
- Finding a MentorGetting guidance from someone more experienced.
- Fundamentals over FrameworksFrameworks change; the concepts underneath them don't.
- Impostor SyndromeFeeling you don't belong despite the evidence.
- Keeping an Engineering JournalWriting down what you learn, decide and get stuck on.
- Learning How to LearnDeliberate practice, spaced repetition and building things.
- Onboarding YourselfUsing code, docs and history to learn a new codebase.
- Time ManagementPlanning your day, protecting focus time and finishing what you start.
- Tutorial HellEndlessly following tutorials without building anything on your own.
Mid-level
Own a feature end to end without hand-holding.
Nothing here yet.
Senior
Own an app's architecture, performance, and failure modes.
Nothing here yet.
Staff
Shape how many teams build, across apps.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.