YOUR LEARNING TRACK
Software Engineer.
Build your problem-solving skills, model better software, and understand how systems work. Start from the fundamentals or revisit the concepts you need.
3 subjectsSelf-pacedFree access
EXPLORE THE SUBJECTS
Choose what you want to learn.
Each subject has its own course. Begin wherever you need to build understanding.
PART 01Start learning
Data Structures & Algorithms
Understand the structures. Recognize the patterns. Turn intuition into working solutions.
- Data structures & their operations
- Algorithm patterns & complexity
- Visual walkthroughs & LeetCode practice
30 chapters · 173 complete topicsExplore DSA
PART 02Coming soon
Object-Oriented Design
Learn to give objects clear responsibilities and build designs that can evolve.
- Objects, relationships & SOLID
- Design patterns & their tradeoffs
- Class diagrams & guided design cases
13 chapters · 92 planned topicsView outline
PART 03Coming soon
System Design
Follow a request through a system and learn how to make each architectural choice.
- Networking, storage & caching
- Scalability, reliability & tradeoffs
- Guided system design cases
18 chapters · 135 planned topicsView outline
A good place to begin: Data Structures & Algorithms.
Start DSAStart with a visual walkthrough, trace the idea, and try a related problem. The Object-Oriented Design and System Design outlines are ready to explore.