Hysen Labs
Open-source project
jwasham/coding-interview-university avatar
jwasham

coding-interview-university

A complete computer science study plan to become a software engineer.

358,827 stars84,635 forksUnknownCC-BY-SA-4.0
01
DEEP OPEN-SOURCE ANALYSIS

Coding Interview University, a study plan with a success story

Coding Interview University started as one person's to-do list and grew into a complete computer science study plan. The author says it got him hired at Amazon after months of full-time study.

02
DEEP OPEN-SOURCE ANALYSIS

Where it came from

The origin story is told in the first person. The author made a short to-do list of study topics for becoming a software engineer, and it grew into the large list that exists today. He studied eight to twelve hours a day for several months and got hired at Amazon. He also insists, more than once, that readers will not need to study as much as he did.

03
DEEP OPEN-SOURCE ANALYSIS

The scope

The plan targets software engineering, not frontend or full-stack work, and points elsewhere for those paths. It covers roughly 75 percent of a university computer science program, which the author argues is enough for an interview. The topic list runs from balanced search trees and traversals to heapsort, quicksort, mergesort, and graph work with adjacency matrices and BFS and DFS. Optional sections cover AVL, splay, red-black, and B-trees, plus system design for people with four or more years of experience.

04
DEEP OPEN-SOURCE ANALYSIS

How the plan works

Everything below the top is an outline, and the README says to work through it in order. Git users fork the repository; everyone else grabs the zip from the Code button. Each day means taking the next subject, watching some videos, and writing an implementation in the chosen language. You do not need to memorize every algorithm, just understand it well enough to write your own version.

05
DEEP OPEN-SOURCE ANALYSIS

Advice from the author's mistakes

The author volunteers his own missteps. He watched hours of videos, took copious notes, and still forgot much of it months later. His answer was flashcards, and he built a mobile-first site for reviewing them. He also warns against overdoing it: his own database ran to over a thousand cards, most of them trivia nobody needs. Anki comes recommended as a lighter alternative.

06
DEEP OPEN-SOURCE ANALYSIS

Languages and resources

The plan asks readers to pick one language for the interview and a second for study. C gets a recommendation for learning data structures and memory, because pointers and allocation are visible there. Python is praised as expressive and useful for writing less code. Books are listed per language, and some video resources are MOOCs that require enrollment and may not be in session.

08
DEEP OPEN-SOURCE ANALYSIS

Official sources

09
Community notes

Community notes