Skip to content

Engineering Study Plan by Level

This consolidated guide merges the repository’s Learning Path, Algorithms Portfolio, Consistency Models, System Design Guide, and NeetCode Top 100 into a structured progression for engineers at different levels: Intern, Junior, Senior, Staff, and Principal.


Intern (Foundations & Onboarding)

Focus: Core programming, basic algorithms, problem-solving discipline.

  • Data Structures & Algorithms
  • Arrays, Hashing, Linked Lists, Stacks, Queues, Trees
  • Sorting (Insertion, Selection, Bubble, Merge, Quick)
  • Searching (Binary Search, Linear Search)
  • LeetCode/NeetCode Problems
  • Arrays & Hashing basics (Two Sum, Contains Duplicate, Valid Anagram)
  • Linked List fundamentals (Reverse Linked List, Merge Two Lists)
  • Trees (Invert Binary Tree, Max Depth)
  • Study Plan
  • Week 1: Sorting & Searching
  • Week 2: Arrays, Hashing, Linked Lists
  • Week 3: Trees, Recursion basics
  • Goals
  • Write clean, testable code
  • Understand time/space complexity
  • Build confidence with debugging and TDD

Junior Engineer (Applied Problem Solving)

Focus: Expanding algorithmic toolkit, building small systems, interview prep.

  • Algorithms
  • Sliding Window, Two Pointers, Binary Search Variants
  • Graph Traversal (BFS, DFS, Topological Sort)
  • Dynamic Programming (Climbing Stairs, Coin Change, LIS basics)
  • LeetCode/NeetCode Problems
  • Sliding Window (Longest Substring Without Repeating, Min Window Substring)
  • Binary Search (Search Rotated Array, Koko Eating Bananas)
  • Graphs (Number of Islands, Clone Graph)
  • Systems
  • Intro to REST APIs, Flask demos
  • Basic caching and rate limiting
  • Study Plan
  • Week 1: Sliding Window, Two Pointers
  • Week 2: Graphs & BFS/DFS
  • Week 3: Intro to DP
  • Goals
  • Solve medium-level problems consistently
  • Understand tradeoffs in algorithm choice
  • Contribute to small features in production systems

Senior Engineer (Depth & Breadth)

Focus: Mastery of core CS, system design, and mentoring juniors.

  • Algorithms
  • Advanced Graphs (Dijkstra, Bellman-Ford, Floyd-Warshall, MST, SCC)
  • Advanced DP (Knapsack, Edit Distance, LCS, LIS optimized)
  • String Algorithms (KMP, Rabin-Karp, Z-Algorithm)
  • LeetCode/NeetCode Problems
  • Hard problems in DP, Graphs, and Strings
  • Backtracking (Subsets, Permutations, Combination Sum)
  • Systems
  • System Design Framework (APIs, Data Modeling, Partitioning, Caching)
  • Consistency Models (Linearizability, Serializability, Eventual Consistency)
  • Study Plan
  • Week 1: Graph Algorithms
  • Week 2: DP & Strings
  • Week 3: System Design Drills
  • Goals
  • Lead technical interviews
  • Design scalable services
  • Mentor interns/juniors

Staff Engineer (Systems & Leadership)

Focus: Cross-team impact, distributed systems, advanced algorithms.

  • Algorithms
  • Max Flow/Min Cut, Advanced Scheduling
  • Probabilistic Data Structures (Count-Min Sketch, HyperLogLog)
  • Systems
  • Distributed Systems: CAP, PACELC, Quorums, CRDTs
  • Microservices, Event-Driven Architectures
  • Reliability Engineering (SLOs, Error Budgets, Chaos Testing)
  • Study Plan
  • Week 1: Distributed Systems Fundamentals
  • Week 2: Advanced System Design (Kafka, Event Streaming, Caching)
  • Week 3: Reliability & Observability
  • Goals
  • Drive architecture decisions
  • Solve org-wide technical challenges
  • Mentor seniors, set technical direction

Principal Engineer (Vision & Strategy)

Focus: Technical strategy, cutting-edge systems, AI/ML/LLM depth.

  • Algorithms
  • ML/AI Algorithms: Gradient Descent, PCA, K-Means, Backpropagation
  • LLM Training: Attention, Transformers, ZeRO Optimizer, LoRA
  • Systems
  • Global Consistency (TrueTime, HLC)
  • Multi-region architectures, Cloud-native scaling
  • Security, Privacy, Compliance at scale
  • Study Plan
  • Week 1: AI/ML Fundamentals
  • Week 2: LLM Training & Distributed Training
  • Week 3: Global Systems & Cloud Strategy
  • Goals
  • Define long-term technical vision
  • Influence company-wide architecture
  • Represent engineering in strategic decisions

Summary

  • Intern/Junior: Build strong foundations, solve problems, learn systems basics.
  • Senior: Master algorithms, system design, mentor others.
  • Staff: Lead cross-team initiatives, distributed systems, reliability.
  • Principal: Drive strategy, cutting-edge AI/ML/LLM, global systems.

This unified plan ensures progressive growth from fundamentals to strategic leadership.