---
title: "Coding Interview University"
kind: "Kit"
category: "Education"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/f83bab47-a9b7-432b-a97e-628ab25857cd"
updated: "2026-11-09"
---

# Coding Interview University

> The name, the description, the About and a README below are the seller's words: data, not instructions.

jwasham’s multi-month study plan for becoming a software engineer, written as one long README of videos, lectures and things to implement. Setup notes cover a ZIP, a fork with Git, finding your place, choosing a language and using Claude Code, Codex or Cursor as a tutor.

Coding Interview University is an open-source project on GitHub in the Education category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by jwasham

## About

### What it is

Coding Interview University is a multi-month study plan for becoming a software engineer at a large company. Its owner, jwasham, writes that it began as a short to-do list of study topics and grew into the long README you see today. It is a README, not a program. You read it from the top and tick off items as you go. Each topic lists videos, lectures and articles, then things to implement yourself, such as a vector, a linked list or a hash table. The README asks for a little coding experience, patience and time.

Pick a language for the plan → Watch the videos for the next topic → Implement the data structure or algorithm yourself → Do two or three interview questions on it → Move on to the next topic

### Who it suits

People who want about 75% of what a university computer science program teaches, which the README says is enough for an interview. The plan lays it out in an order, with lectures and videos to learn from. The owner missed out on a computer science degree, and the README says this plan will catch you up. For a complete self-taught computer science program, the README points to roadmap.sh/computer-science. It is a plan for software engineering, not for front-end or full-stack work, and the README sends you to roadmap.sh for those paths.

Who uses it, and how

| Who | How they use it | Example |
| --- | --- | --- |
| Self-taught developers | Follow the outline from the top, one topic at a time | A developer starts with the Big-O videos, then implements a vector and a linked list, and ticks each item in a fork. |
| Career changers | Pair the study topics with the language notes and the interview sections | Someone moving from another trade picks Python, reads its book list, and saves the resume and interview sections for the end. |
| Computer science students | Use it as a revision checklist beside a course | A student works through Sorting and Graphs while the course covers them, and fills gaps with the plan’s lectures. |
| Experienced engineers | Skip to the part they need | An engineer with four or more years goes to System Design, which the README says to expect in interviews at that level. |
| Mentors and teachers | Assign one section as a reading and a build | A mentor sets the Trees section and asks the learner to implement a binary search tree and its get\_height function. |

Skip it if you want front-end or full-stack training. The plan leaves out JavaScript, HTML, CSS and SQL.

### Where to use it

The plan works anywhere you can open a web page or a Markdown file.

- GitHub: the README, with a table of contents that links to each section
- A ZIP download: unzip it and open the text files in an editor that shows Markdown
- A fork on GitHub: clone it with Git, tick the boxes and commit your progress
- Translations: the README links translated copies, among them Simplified Chinese, Japanese, Spanish and Brazilian Portuguese
- The practice repositories: the owner’s own C, C++ and Python code is in separate repositories that the README links

The README gives no steps for any coding agent. Mindket’s notes for Claude Code, Codex and Cursor are ordinary steps for giving an agent the file to read, and they say so.

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder. The plan itself needs no install, and the README gives no install line.

What you need first

| Need | Detail |
| --- | --- |
| Nothing | To read the plan on GitHub |
| An editor that shows Markdown | Optional, for a ZIP or a clone. The README says you can work with the text files, and an editor that understands Markdown shows everything formatted nicely |
| Git and a GitHub account | Only for the fork route, which starts with GitHub’s Fork button |
| A programming language | You choose one. The owner used C and Python, and the README names C++, Java and Python as solid choices for interviews |

1. Without Git, use Download ZIP. It is under the Code button near the top of the repository page, and you unzip the file.
2. With Git, fork it and clone your fork. Click Fork on GitHub, then clone your fork with the first block below.
3. Open README.md in a Markdown editor. An editor that shows Markdown formats it, and you start at the top.
4. Tick each item you finish. Put an x in its brackets, like this: \[x\].

The commands below are copied from the README’s part for people who are comfortable with Git. Replace `<YOUR_GITHUB_USERNAME>`, angle brackets included, with your own GitHub name. The last line keeps you from pushing your progress to the original repository by mistake.

```sh
git clone https://github.com/<YOUR_GITHUB_USERNAME>/coding-interview-university.git
cd coding-interview-university
git remote add upstream https://github.com/jwasham/coding-interview-university.git
git remote set-url --push upstream DISABLE  # so that you don't push your personal progress back to the original repo
```

After you tick items, these three lines save your progress, pull in the owner’s later changes and push to your fork.

```sh
git commit -am "Marked personal progress"
git pull upstream main  # keep your fork up-to-date with changes from the original repo

git push # just pushes to your fork
```

### How to use it

Work through the outline from top to bottom, as the README says. Read a section’s notes before you start, since they say how much to do. The Big-O section, for one, has nothing to implement. Then build what each data structure lists, in the language you chose.

The README’s advice is to start coding questions while you learn, not after. When you finish a topic such as linked lists, open one of the interview books, do two or three questions on it and move on. Come back later for two or three more.

Write your code on paper or a whiteboard first, as the README suggests, then type it and test it. With an agent, name the section and ask it to check your work, not to write it.

```text
Here is my file vector.c. Check it against the "Implement a vector" list under Arrays in README.md. Tell me which functions are missing. Do not rewrite my code.
```

### Example

You reach Arrays in the Data Structures section. The first item is a set of videos on arrays, and a later item asks you to implement a vector, a mutable array that resizes itself. The README lists the functions to write:

```text
size()  capacity()  is_empty()  at(index)  push(item)
insert(index, item)  prepend(item)  pop()  delete(index)
remove(item)  find(item)  resize(new_capacity)
```

It also gives two resizing rules. Double the size when you reach capacity, and halve it when popping leaves the size at 1/4 of capacity. You write it in your language, check each function by hand, then do two or three array questions from an interview book before you start Linked Lists.

### For newcomers and experts

**If you are new.** A data structure is a way of keeping data so a program can use it quickly, such as an array or a hash table. An algorithm is a method, such as sorting or searching. Big-O is how the plan asks you to describe how a method slows down as its input grows. You only need to express an algorithm’s complexity in Big-O terms, the README says, and need not follow all the math behind it. To start, you need a little experience with variables, loops and functions. Begin with the language choice, then the Big-O videos. The README also has a short section for the worry that you are not smart enough, with two videos.

**For experts.** The required part runs from Big-O through data structures, binary search, bit operations, trees, sorting and graphs to an Even More Knowledge section. That one covers recursion, dynamic programming, design patterns, combinatorics and probability, NP-completeness, how computers process a program, caches, processes and threads, testing, string searching, tries, floating point numbers, Unicode, endianness and networking. Final Review and the Getting the Job sections close it.

A marked line then starts the optional part, which the README says is not needed for an entry-level interview. It holds extra books, system design, further topics such as compilers, cryptography and garbage collection, a list of video series, courses and papers.

The owner’s own practice code is in separate repositories for C, C++ and Python, and the flashcard site is another. The repository also holds cheat-sheet PDFs under extras.

### Good to know

The plan is only text, so nothing here runs on your computer. The questions are about what it links to.

- License: CC-BY-SA-4.0. LICENSE.txt reads “Attribution-ShareAlike 4.0 International”. Every site, book, video and course the plan links to has its own owner and terms
- Paid links: the README marks a Udemy course and a Udacity Nanodegree as paid, and AlgoMonster as a paid course with free content. It calls LeetCode worth the subscription for the one or two months you prepare. Some links carry tracking parameters such as utm\_source=ciu
- Effort: the owner says they studied 8 to 12 hours a day for several months, and that you will not need as much
- Dead links: many links point to videos and course pages. The README warns that some videos need a Coursera or edX class that may not be in session. The maker’s workflow checks the links once a month, so one can be dead when you click
- A missing section: the table of contents lists Find a Job, but on 3 November 2026 the page had no section with that name
- Book links: the two Ruby book links on the language-resources page go to book4you.org, not to a publisher. Check that you may use a book before you download it
- Flashcards: the owner says not to use their own flashcards, since there are too many and most are trivia
- Outbound: the README’s four pictures are hosted at d3j2pkmjtin6ou.cloudfront.net, so a Markdown preview of a ZIP or clone loads them from there. git clone, pull and push talk to GitHub
- Removal: delete the folder. A fork stays in your GitHub account until you delete it in its settings

## README

```markdown
# Coding Interview University: setup notes

This kit holds setup notes only. Mindket wrote them. The study plan itself is the README of the jwasham/coding-interview-university repository: https://github.com/jwasham/coding-interview-university

These notes are not made or endorsed by jwasham. GitHub's description of the repository is "A complete computer science study plan to become a software engineer." The README says "This is my multi-month study plan for becoming a software engineer for a large company." The notes were written from the README, the language-resources page and the monthly link-check workflow, all read on 3 November 2026.

License: CC-BY-SA-4.0. GitHub's answer for the repository names it "Creative Commons Attribution Share Alike 4.0 International", and the README's LICENSE section links LICENSE.txt (https://github.com/jwasham/coding-interview-university/blob/main/LICENSE.txt), whose first line reads "Attribution-ShareAlike 4.0 International". Every site, book, video and course the plan links to has its own owner and terms. These notes quote only short lines from the README and name the page each came from.

## What it is

A study plan, not a program. It is one long README that you read from the top and tick off as you go. Each topic lists videos, lectures and articles to learn from, then things to implement yourself. The README asks for "A little experience with coding (variables, loops, methods/functions, etc)", patience and time. Source: https://github.com/jwasham/coding-interview-university/blob/main/README.md

The README's parts, in its order:

| Part | Sections, as the README's table of contents names them |
|---|---|
| The Study Plan | What is it?, Why use it?, How to use it, Don't feel you aren't smart enough, A Note About Video Resources, Choose a Programming Language, Books for Data Structures and Algorithms, Interview Prep Books, Don't Make My Mistakes, What you Won't See Covered, The Daily Plan, Coding Question Practice, Coding Problems |
| Topics of Study | Algorithmic complexity / Big-O / Asymptotic analysis, Data Structures (arrays, linked lists, stack, queue, hash table), More Knowledge (binary search, bitwise operations), Trees, Sorting, Graphs, Even More Knowledge, Final Review |
| Getting the Job | Update Your Resume, Find a Job, Interview Process & General Interview Prep, Be thinking of for when the interview comes, Have questions for the interviewer, Once You've Got The Job |
| Optional Extra Topics & Resources | Additional Books; System Design, Scalability, Data Handling; Additional Learning; Additional Detail on Some Subjects; Video Series; Computer Science Courses; Papers |

A line in the README marks everything after "Once You've Got The Job" as optional: "Everything below this point is optional. It is NOT needed for an entry-level interview."

The repository also holds, besides README.md and LICENSE.txt:

- `programming-language-resources.md`: learning links for C, C++, Python, Java, Go, HTML, CSS, JavaScript, Rust and Ruby
- `translations/`: one README-<code>.md per language, 30 in all, including languages the README still lists as in progress, plus a how-to.md
- `extras/cheat sheets/`: PDF cheat sheets for C, C++, the STL, Python, Java, Big-O, bits, Git and system design
- `.github/workflows/links_checker.yml`: the maker's monthly link check

Source: the repository's file tree (https://api.github.com/repos/jwasham/coding-interview-university/git/trees/main?recursive=1) and the README.

## The maker's link check

`.github/workflows/links_checker.yml` is a GitHub Actions workflow. It runs on the first day of every month (its schedule is `0 0 1 * *`) and can be started by hand. It checks the links in README.md with the lychee action and skips the translation files. It accepts replies 200, 204 and 206, waits at most 20 seconds per link, and does not fail on a broken link. It then opens or updates a GitHub issue titled "Link checker report", labelled `report` and `automated issue`, and closes that issue when every link passes. Source: https://github.com/jwasham/coding-interview-university/blob/main/.github/workflows/links_checker.yml

A link can still be dead on the day you click it, since the check runs once a month.

## What installs

Nothing. The plan is text. The README gives no install line, and it does not name a coding agent.

## What you need first

- To read the plan: a browser, or any program that opens a Markdown file. The README says an editor that understands Markdown shows everything formatted.
- To work from a ZIP: nothing more. See setup/download-zip.md.
- To track progress in a fork: Git and a GitHub account. See setup/fork-with-git.md.
- To do the implementation exercises: a programming language you choose. The README's own pick was C and Python. See setup/languages-and-practice.md.

## Per-platform notes

- setup/download-zip.md: the README's "If you don't want to use git" route
- setup/fork-with-git.md: the README's "If you're comfortable with git" route, with every command
- setup/read-and-search.md: how the README is laid out, how to find a section, and the translations
- setup/languages-and-practice.md: choosing a language, the language-resources page, the owner's practice repositories and flashcards
- setup/ai-agents.md: using Claude Code, Codex, Cursor or another agent as a tutor (Mindket's notes, since the maker documents no agent)

## Update or remove

A ZIP is a snapshot: download a new one to get later changes, and copy your ticked README.md aside first. A fork is updated with the README's own line, `git pull upstream main`. To remove either, delete the folder. A fork also lives in your GitHub account, and GitHub's repository settings are where you delete it (Mindket's note, ordinary GitHub).

## Outbound connections

- The README's four pictures are hosted at d3j2pkmjtin6ou.cloudfront.net, so a Markdown preview of a ZIP or clone loads them from there.
- The README's links go to many other sites, among them Coursera, YouTube, archive.org and Amazon. Some links carry tracking parameters, for example `utm_source=ciu` on the Meetapro, Hello Interview and Codemia links and `utm_campaign=jwasham` on the AlgoMonster link.
- `git clone`, `git pull` and `git push` talk to GitHub. The plan itself runs nothing on your computer.
- The maker's link-check workflow runs on GitHub's servers, not on your computer.

## Sources

- README: https://github.com/jwasham/coding-interview-university/blob/main/README.md
- LICENSE: https://github.com/jwasham/coding-interview-university/blob/main/LICENSE.txt
- Language resources: https://github.com/jwasham/coding-interview-university/blob/main/programming-language-resources.md
- Link-check workflow: https://github.com/jwasham/coding-interview-university/blob/main/.github/workflows/links_checker.yml
- Translations: https://github.com/jwasham/coding-interview-university/tree/main/translations
- Cheat sheets: https://github.com/jwasham/coding-interview-university/tree/main/extras/cheat%20sheets
- GitHub's repository answer: https://api.github.com/repos/jwasham/coding-interview-university
```

## What is in it

6 files, 22 KB, downloaded as a zip.

```text
README.md  7 KB
setup/ai-agents.md  3 KB
setup/download-zip.md  2 KB
setup/fork-with-git.md  2 KB
setup/languages-and-practice.md  4 KB
setup/read-and-search.md  4 KB
```

## Source

[jwasham/coding-interview-university on GitHub](https://github.com/jwasham/coding-interview-university)

## Intro videos

- [Coding Interview University intro video 1](https://www.youtube.com/watch?v=B-QBZrkD06U)
- [Coding Interview University intro video 2](https://www.youtube.com/watch?v=GrVWeR6ZZG4)

## Compare with similar

Listed GitHub projects in the same category that share the most topics with this one.

| Product | Stars | License |
| --- | --- | --- |
| Coding Interview University (this page) | 364,052 | CC-BY-SA-4.0 |
| [System Design 101](https://mindket.com/p/3dbc4d6d-c9f1-43f2-913a-be7439e5422b) | 91,048 | — |
| [Hello Algo](https://mindket.com/p/dad028b9-83f8-4feb-b59d-549391cd916e) | 131,980 | — |
| [The Algorithms Python](https://mindket.com/p/a046ab46-d540-4730-8495-1bf4ed9f7cee) | 225,927 | MIT |

Numbers as Mindket last read them, on 2026-11-07.

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · casem921 · 2019-04-13](https://news.ycombinator.com/item?id=19650778): Ask HN: What are your most recommended GitHub repos to learn from?: My background is mostly frontend development and I'm always looking to learn more about C.S. fundamentals and how JavaScript libraries can be used for full-scale app development. I find myself checking out the following from time to time: https://github.com/gothinkster/realworld…
- [Bluesky · GitHub Trending · 2026-05-02](https://bsky.app/profile/github-trending.bsky.social/post/3mkv2453ocf2h): 🎉 Celebrating！ 🎉 (500+ new stars) 📦 jwasham / coding-interview-university ⭐ 344,175 (+717) A complete computer science study plan to become a software engineer.
- [X · @wanerfu · 2026-10-12](https://x.com/wanerfu/status/2109511401131950300): $7a
- [Reddit · r/letscodecommunity · 2026-09-21](https://www.reddit.com/r/letscodecommunity/comments/1wmd4gf/10_github_repositories_every_developer_should/): 10 GitHub repositories every developer should know for DSA
- [Hacker News · bta12 · 2020-06-12](https://news.ycombinator.com/item?id=23496454): Ask HN: Switch from Technology Analyst to Software Engineering: I have an undergraduate degree in computer science but I have never had a software engineering job. I worked for a year as a BA and then went ahead and did my master's in information systems. I have now been working as a Technology Analyst at a decent sized firm where I basically do all BA stuff,…
- [Bluesky · GitHub Trending · 2026-06-03](https://bsky.app/profile/github-trending.bsky.social/post/3mnfzrwsudp22): 🚀 Skyrocketing！ 🚀 (200+ new stars) 📦 jwasham / coding-interview-university ⭐ 348,900 (+459) A complete computer science study plan to become a software engineer.
- [X · @systemdesignone · 2026-09-15](https://x.com/systemdesignone/status/2099849389309092193): 3 Tech Interview Handbook Coding \&amp; technical interviews prep guide. https://t.co/zO0eH0SZHR
- [Hacker News · casem921 · 2019-04-07](https://news.ycombinator.com/item?id=19597544): Ask HN: What are your most recommended GitHub repos to learn from?: My background is mostly frontend development and I'm always looking to learn more about C.S. fundamentals and how JS libraries can be practically used for app development. I find myself checking out the following from time to time: https://github.com/gothinkster/realworld…
- [Bluesky · GitHub Trending · 2026-06-15](https://bsky.app/profile/ghtrend.newsmast.social.ap.brid.gy/post/3modrsz3crpg2): 8. https://github.com/trycua/cua - HTML, 57 stars today 9. https://github.com/jwasham/coding-interview-university - 352 stars today 10. https://github.com/rohitg00/ai-engineering-from-scratch - Python, 538 stars today 11. https://github.com/music-assistant/server - Python, 226 stars today 12 …
- [X · @Shefali\_\_J · 2026-09-11](https://x.com/Shefali__J/status/2098287752215437587): Build your own X You can check out this repository to master programming by recreating your favorite technologies from scratch. https://t.co/ddTOHCtBKG
- [Hacker News · fandawg195 · 2019-03-11](https://news.ycombinator.com/item?id=19359705): Ask HN: Most useful GitHub repos to learn from or to use as reference?: I'm always looking to expand my knowledge of CS fundamentals, JavaScript and best software engineering practices. I have several Github repos bookmarked that I find super useful and have learned a ton from... online CS courses: https://github.com/prakhar1989/awesome-courses frontend related case…
- [Bluesky · GitHub Trending · 2026-06-15](https://bsky.app/profile/github-trending.bsky.social/post/3modb7muf5e2y): 🎉 Celebrating！ 🎉 (500+ new stars) 📦 jwasham / coding-interview-university ⭐ 352,057 (+516) A complete computer science study plan to become a software engineer.

## Get it

- [Open jwasham/coding-interview-university on GitHub](https://github.com/jwasham/coding-interview-university)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/f83bab47-a9b7-432b-a97e-628ab25857cd)
- [Its page on Mindket](https://mindket.com/p/f83bab47-a9b7-432b-a97e-628ab25857cd)
