v2.0

If you haven’t already, check out our Pre-Requisites guide to get your local macbook setup and build familiarity with your code editor (Cursor)

Overview

This is a realistic roadmap for complete beginners, focusing on only the most important things you need to know to get job-ready, build your own products, and become an all-round productive Software Engineer.

Frontend Development

Estimated time to complete: 3-5 months

1

What even is a 'Frontend'?

2

Main Content

FrontendExpert

Price: $59 (1-year access)

After completing this course, you will have a strong foundation in the most important concepts to know as a Frontend Engineer.

Web Development Fundamentals
HTML (HyperText Markup Language)
CSS (Cascading Style Sheets)
JavaScript (Most Popular Frontend Language)
Web APIs
ReactJS (JavaScript Library for building user interfaces)

This course also includes a quiz and frontend interview questions to help you prepare for coding interviews for frontend roles.

You do not need to complete all questions. 20-30 questions should be sufficient.

3

(Optional) UI/UX Design

You don’t need to take this course straight away. You can take it later when you feel like you need it or you notice that the websites and products you build lack intuitive interfaces and the designs feel brittle (honest feedback from others).

Become really good at UI/UX Design. By taking this course, you’ll set yourself apart from the average frontend engineer and be able to have really interesting and productive conversations with your team’s designer/s, helping build intuitive, pixel-perfect user interfaces. Or on your own, if you’re building solo as a technical founder, you’ll have insight into what makes a good design clean and intuitive.

Main Course Link

Price: $99 (One-time payment)

4

Project Building

Practice your skills by building mini projects on GreatFrontend:

Build UI Components from scratch (News Feed, Type-ahead Search, Image Carousel, Chat Application etc.)
Implement JavaScript utilities
Create React Components that interact with an API

Extra helpful content:

Start Building Real Products

Once you’ve completed the above Frontend Development path, you can start building real products with our custom boilerplate codebase (Titan).

The key benefit with this approach is that you’ll learn backend development in a practical, need-driven way. Instead of spending months on theory before building anything real, you’ll:

  1. Validate your idea with real users
  2. Start with simple features and some marketing
  3. Gradually tackle more complex features as your product and userbase needs grow
  4. Learn system design principles through actual scaling challenges, no theoretical concepts (if your userbase grows)
  5. Build a deep understanding by solving real customer problems (bugs) and feature requests

This approach isn’t a replacement for comprehensive backend knowledge - you’ll still be scheduling in time to go through the Backend Development section. The difference is that you’re building something real, with clear context for why each concept matters.

You will naturally ignore unnecessary distributed systems concepts that your project/app won’t require or that will be abstracted away for you.

Build with Titan

Start building full-stack products immediately. Deploy real apps, gain system design experience, and ship to users fast.

Backend Development

Estimated time to complete: 4-6 months

1

What even is a 'Backend'?

2

Main Content

1

High-Level Backend System Design

Price: $59 (1-year access)

After completing this course, you will have a strong foundation in the most important concepts to know as a Backend Engineer to build scalable distributed systems.

Client-Server Model
Network Protocols
Storage
Latency and Throughput
Availability
Caching
Proxies
Load Balancers
Hashing
Relational Databases
Key-Value Stores
Specialized Storage Paradigms
Replication and Sharding
Leader Election
Peer-to-Peer Networks
Polling and Streaming
Configuration
Rate Limiting
Logging and Monitoring
Publish/Subscribe Pattern
MapReduce
Security and HTTPS
API Design
2

Core Backend Development

Main Course Link

Price: £10/month

Only the following modules are required:

Price: £10/month

After completing these courses, you will have a strong foundation in the most important concepts to know as a Backend Engineer.

Linux Fundamentals
Git Version Control
Golang (High-Performance Backend Language)
HTTP Clients & Servers
SQL & Database Design
Docker Containerisation
CI/CD Pipelines
3

Project Building

Practice your skills by building projects with CodeCrafters

You don’t have to build them all. Just pick a few that are interesting to you and build them. You’ll gain a lot of hands-on experience and understanding of backend system design concepts.

Redis Clone
SQLite Clone
BitTorrent Clone
Git Clone
Shell Clone
Interpreter
HTTP Server
DNS Server