What to actually use to prepare for a tech interview.
Curated tech interview preparation for software engineers: coding practice, system design, behavioural rounds and mock interviews. Picked by Tauseef Fayyaz, who leads an engineering team and reviews these before they go on the shelf.
- 1418 picks
- 1240 free
57 resources ยท page 1 of 3
A pattern-based coding interview course covering 31 common and 11 advanced patterns such as sliding window, two pointers, merge intervals, cyclic sort, top K elements, topological sort, union find and segment trees, with more than 300 problems solved in six languages. Instead of memorising solutions, you learn to map a new question to a known pattern. It suits anyone with working data structures knowledge who freezes on unfamiliar questions.
- Job search
- DSA
A foundations course that builds eleven core data structures from the ground up (arrays, matrices, stacks, queues, linked lists, trees and BSTs, hash tables, hash sets, heaps, graphs and tries), then covers sorting, searching, greedy and divide and conquer. Every chapter has practice problems, flashcards and an assessment. It suits students and career switchers whose foundations came from tutorials and who find pattern courses move too fast.
- Job search
- DSA
- CS fundamentals
A structured learning path through coding interview preparation that brings together data structures and algorithms fundamentals, recursion and the pattern-based approach to coding questions in one order. It totals 77 chapters and 1,054 lessons, with quizzes, flashcards and a certificate. Use it when you have plenty of material but no clear plan for what to study first.
- Job search
- DSA
- Career
A bundle of five company-specific question courses covering the problems most often reported from Meta, Microsoft, Amazon, Google and Oracle coding rounds, each split into easy, medium and hard sets with worked solutions. It suits candidates who already know the core patterns and have a loop booked at one of these companies, and want to rehearse on the questions those interviewers are known to ask.
- Job search
- DSA
- Career
A dynamic programming course organised around five patterns: 0/1 knapsack, unbounded knapsack, Fibonacci numbers, palindromic subsequence and longest common substring. Each of its 35 problems is solved three ways, as plain recursion, top-down with memoization, and bottom-up tabulation. It suits candidates who can handle most interview topics but stall on DP because they cannot find the recurrence.
- Job search
- DSA
A course built around 75 coding interview questions chosen for coverage across 18 topic areas, from arrays and sliding window to graphs, backtracking, dynamic programming and tries. Each question has a step-by-step algorithm, a walkthrough and complexity analysis, with solutions in six languages. It suits candidates with a few weeks before an interview who need a balanced, finite problem set rather than an endless list.
- Job search
- DSA
A course on object oriented and low level design interviews. It teaches a repeatable method (requirements, actors and use cases, class diagram, code) with UML basics and SOLID, then applies it to 22 case studies such as a parking lot, elevator, ATM, chess, movie booking, Splitwise and an in-memory cache, with runnable code in Python, Java and C++. It suits candidates facing a dedicated OOD or LLD round.
- Job search
- System design
- CS fundamentals
A text course on behavioural interviews for software engineers, product managers and engineering managers. It covers the STAR method, building a small story bank, 30 real questions answered with likely follow-ups, Amazon's Leadership Principles and what Google, Meta and Microsoft look for, plus a chapter for managers. It suits anyone who passes technical rounds but struggles to give clear, specific answers about conflict, failure and decisions.
- Job search
- Career
A short text course on algorithm analysis: all five asymptotic notations, time and space complexity, best, worst and average cases, and three methods for recursive complexity including the master theorem. It suits students and self-taught developers who can write working code but freeze when an interviewer asks for the time and space complexity, or who want to understand why one solution is faster than another.
- Job search
- DSA
- CS fundamentals
A graph-only course that starts with representations, BFS and DFS, then covers matrix graphs, graph theory, union find, topological sort, shortest paths (Dijkstra, Bellman-Ford, Floyd-Warshall) and minimum spanning trees (Kruskal, Prim, Boruvka). It has 50 problems with walkthroughs in six languages. It suits candidates comfortable with trees who keep losing marks on graph questions or fail to recognise a graph hidden inside a grid or dependency list.
- Job search
- DSA
A course that organises tree interview questions into nine patterns: level order traversal, tree depth, BFS, DFS, root to leaf paths, leaf processing, tree views, comparing two trees, and serialize and deserialize. It has 49 problems with walkthroughs and complexity analysis in six languages. It suits candidates whose tree solutions work on simple cases but break on edge cases, or who want trees covered in more depth than a general course offers.
- Job search
- DSA
A recursion course that explains the call stack, base cases, recursion types and recursion versus iteration, then works through 19 problems from factorial and GCD to binary search, merge sort, quick sort, DFS, BST operations, memoized Fibonacci and Pow(x, n). Solutions come in six languages with diagrams and complexity analysis. It suits students and self-taught developers who avoid recursive solutions or trace every call by hand because they do not trust them.
- Job search
- DSA
- CS fundamentals
A course on concurrency for interviews: processes and threads, race conditions and critical sections, the five synchronisation constructs (mutexes, read/write locks, semaphores, condition variables, barriers), and 17 threading problems from parallel search to the Dining Philosophers and a multithreaded web crawler. Code is in Python, Java, C++ and C#. It suits backend and senior candidates who have avoided concurrency and expect it in their loop.
- Job search
- CS fundamentals
- Backend
A browsable practice library of coding problems that can be filtered by pattern, data structure, difficulty and company, so you can drill exactly the weakness you found this week. Patterns include two pointers, sliding window, hash maps, stacks, backtracking and greedy algorithms, with company filters for Google, Meta, Microsoft, Amazon, Oracle and LinkedIn. Free to browse, with an in-browser editor and solutions.
- Job search
- DSA
The well-known Blind 75 interview problem list, grouped into five topic areas with a difficulty level, a practice link and a step-by-step solution for each problem. Free to use, with hints, an in-browser coding workspace, notes and progress tracking. A focused way to cover the most frequently asked problem types and to check whether your preparation is working.
- Job search
- DSA
Free interview handbooks for software engineers applying to Amazon, Microsoft, Meta, Google and Oracle. Each guide describes the company's hiring process, the rounds you will face, commonly asked questions, and tips and resources for preparing. Read the guide for your target company once your interview is scheduled, so you can adjust your final weeks of preparation to what that company emphasises.
- Job search
- Career
A SQL course for interviews that reviews the basics, order of execution, functions, subqueries, joins, set operations, DDL and DML, then works through 69 interview problems graded easy to hard plus 14 unguided test problems, run against a live database in the browser. It suits backend, data and analytics candidates whose SQL stops at a simple inner join, or who need a fast refresher before a SQL round.
- Job search
- Databases
- Backend
A 2018 post on the Pinterest Engineering Blog in which a recruiter and two engineers explain how to do well in a technical interview: preparing, communicating while you solve, handling missing details, optimising step by step, managing time, writing clean code, testing, and asking good questions at the end. The advice on behaviour in a coding round has not aged, which makes it useful for any company's interviews.
- Job search
- Career
Atlassian's official handbook for engineering candidates. It walks through each stage (coding, system design, manager and values interviews, then a hiring committee), explains what each assesses, and gives example prompts for front end, back end, full stack and site reliability roles. One of the more transparent company guides available, and useful preparation for any product company's interview loop.
- Job search
- Career
- System design
A first-hand story from Uber's careers site in which four engineers at the Aarhus, Denmark office (a graduate engineer, an intern and two software engineers) describe how they prepared, what the interviews felt like and what they would tell other candidates. It suits students and early-career engineers who want an honest picture of how much preparation is enough and what a collaborative interview feels like.
- Job search
- Career
A December 2015 post on the Uber blog by technical recruiting lead Conor Myhrvold, explaining how Uber's recruiters find and screen engineers: using LinkedIn as a short resume, writing specific ownership-focused resume lines, what the phone screen probes, and why showing work you are proud of matters. It suits engineers who want to understand how recruiters read profiles and resumes. Note the saved link may not load; the post now lives at a different Uber blog address.
- Job search
- Career
OpenAI's official overview of its hiring process: application review, introductory calls, a skills-based assessment that varies by team (pair coding, take-home projects or technical tests), final interviews, and the qualities it looks for. It suits anyone applying to OpenAI who wants to know what kind of work sample to expect and how to prepare, and is a short, direct read.
- Job search
- AI
- Career
A classic LeetCode solution post by zjh08177 on Minimum Window Substring that turns the problem into a reusable sliding window template in about ten lines of C++, using a character count array, a counter and two pointers, then shows the same shape solving other substring problems such as the longest substring without repeating characters and with at most two distinct characters. It suits learners who understand sliding windows in principle but cannot write one cleanly.
- Job search
- DSA
- Programming
A 2022 post on the Netflix Tech Blog by engineering director Karen Casella explaining how Netflix interviews backend engineers: recruiter and hiring manager screens, a technical screen with a choice of take-home or live discussion, and two onsite rounds, with notes on what each stage assesses. It suits backend engineers applying to Netflix, and anyone who wants to see how a company that avoids puzzle-style questions runs its loop.
- Job search
- Backend
- Career
Browse the library by topic and format
Every one of these is its own page: a roadmap shelf, an interview-prep shelf, the free-only view. The filters above do the same thing without a page load.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
- 1:1 Mentorship
- Fresh Graduate Mentorship
- Career Guidance
Brand deals, promos and partnerships: tauseeffayyaz@gmail.com
Follow along
New writing, resources and project ideas land here first.