Skip to main content

Software Engineering

Build the fundamentals that survive framework churn: one language deeply, data structures you can reason about, version control, testing, and how code actually reaches users.

3 stages15 steps~405 hours~9 months
Track this roadmap free
  1. 1

    Fundamentals

    Beginner~10 weeks

    One language, properly. Breadth before depth is how people end up unable to finish anything.

    • Core syntax and control flow in one language

      Pick Python, JavaScript or Go and stay there for three months.

      Skill~30h
    • Data structures: arrays, maps, sets, trees

      Skill~25h
    • Git and GitHub: branching, rebasing, pull requests

      Skill~12h
    • Command line and a real editor setup

      Skill~8h
    • Build a CLI tool that solves a problem you actually have

      Project~20h
  2. 2

    Building real things

    Intermediate~14 weeks

    Databases, HTTP, testing and deployment — the parts that turn scripts into software.

    • Relational databases and SQL joins, indexes, transactions

      Skill~30h
    • HTTP, REST and authentication fundamentals

      Skill~20h
    • Automated testing: unit, integration, and what not to test

      Skill~22h
    • Ship a full-stack app with auth and a real database

      Project~60h
    • Deploy it, with CI running your tests on every push

      Skill~18h
  3. 3

    Engineering judgement

    Advanced~16 weeks

    System design, performance and the trade-offs that separate senior engineers from prolific ones.

    • System design: caching, queues, replication, consistency

      Skill~40h
    • Profiling and performance: measure before optimising

      Skill~25h
    • Observability: structured logs, metrics, tracing

      Skill~20h
    • Contribute a merged pull request to an open-source project

      Project~30h
    • AWS Certified Developer or equivalent cloud credential

      Certification~45h