Skip to content

Latest commit

Β 

History

249 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Interview Prep

Everything between "I should start applying" and "I signed the offer."

The resume that gets the call, the rounds in the middle, the negotiation at the end β€” and 150 practice problems with the reasoning written out.

Guides Solutions Kotlin Tests License: MIT PRs Welcome

Start here Β· The interview Β· Practice Β· AI-era interviewing


Most interview repos are a pile of solutions. Solutions are the easy part β€” a model can write every one of them in seconds. What actually decides offers is the stuff around them: whether your resume gets read, whether you can think out loud, whether you know what a round is measuring, and whether you negotiate at the end.

So this repo is organised around the interview, not around the problem list.


🧭 Start here

Where are you in the process right now?

Right now Read this
Not applied yet The process, end to end β†’ Resume
Applications are out Study plans β†’ The 18 patterns
Loop is next week The coding round, minute by minute β†’ Practise out loud
Interview is tomorrow The 18 patterns β€” recognition beats recall
Offer in hand Negotiation β€” do not accept on the call
Worried AI made this pointless Interviewing when the machine can already solve it
Interviewing for Android The Android / Kotlin interview

πŸ—ΊοΈ The pipeline

Each stage filters for something different, and most people only prepare for one of them.

graph LR
    A["<b>Resume screen</b><br/><br/>keywords Β· numbers<br/>a link that works"]
    B["<b>Recruiter call</b><br/><br/>don't name<br/>a number first"]
    C["<b>Technical screen</b><br/><br/>clarify, brute force,<br/>then optimise β€” out loud"]
    D["<b>On-site loop</b><br/><br/>patterns Β· system design<br/>verify before they ask"]
    E["<b>Behavioural</b><br/><br/>six STAR stories<br/>say I, not we"]
    F["<b>Offer</b><br/><br/>counter once<br/>get it in writing"]

    A --> B --> C --> D --> E --> F

    style A fill:#ddf4ff,stroke:#54aeff,color:#0a3069
    style B fill:#ddf4ff,stroke:#54aeff,color:#0a3069
    style C fill:#fff8c5,stroke:#d4a72c,color:#4d2d00
    style D fill:#fff8c5,stroke:#d4a72c,color:#4d2d00
    style E fill:#dafbe1,stroke:#4ac26b,color:#003d16
    style F fill:#ffeff7,stroke:#ff80c8,color:#5e103e
Loading

πŸ“‹ The interview

Getting in the door

Guide What it covers
The process, end to end Every stage, what it filters for, where people lose offers they should have won
Resume The bullet formula, why ATS parsers reject good resumes, what to cut

The rounds

Guide What it covers
The 18 patterns Recognise the shape of a problem in two minutes. The most useful page here.
The coding round, minute by minute What to do with the 45 minutes, and what the rubric actually scores
Interviewing in the AI era AI-allowed rounds, code-comprehension rounds, and how to answer "do you use AI?"
System design The 45-minute shape, the concepts, and designing systems that use models
The Android / Kotlin interview Coroutines, Compose stability, lifecycle, mobile system design
The behavioural round Six stories that cover thirty questions

Getting good, and getting paid

Guide What it covers
Practise out loud The highest-value habit almost nobody builds deliberately
Study plans 1 week / 4 weeks / 3 months, including what to cut when time runs out
Negotiation Don't name a number first. Don't accept on the call. What else is negotiable.
Resources A short, opinionated list β€” books, platforms, mocks, comp data

πŸ’» Practice

Practice is one input to interviewing, not the whole thing β€” but you do still have to do it.

The 150 problems from neetcode.io, grouped into 18 patterns, in Kotlin and JavaScript. Every solution explains why the approach works and names the trap, and every one runs its own assertions:

node tools/test.js          # the JavaScript suite
node tools/test-kotlin.js   # the Kotlin suite

Open any file and you get the idea, the complexity, and the edge cases that break the naive version β€” written as tests you can run and break yourself:

// 424. Longest Repeating Character Replacement β€” Medium
// Time O(n) | Space O(1)
//
// Idea: a window is legal when (length - count of its most common character) <= k.
// `maxCount` is deliberately never decreased: the answer only grows, so a stale high
// value can never produce a longer-than-real result.

193 problems across Kotlin, JavaScript, C++ and Java, cross-linked when a problem is solved in more than one. Generated from the repo, so it never goes stale.

🟩 Easy 🟨 Medium πŸŸ₯ Hard
51 116 26

Foundations

Data structures/ and algorithms/ hold the things built from nothing β€” linked lists, trees, graphs, heaps, sorting, searching, Big-O demonstrations. Start here if you want to understand why a hash map is O(1) before using one to solve Two Sum.


🧠 How to practise so it transfers

Reading solutions is the least useful thing you can do with them.

  1. Solve it yourself first, badly if necessary. The brute force counts.
  2. State the complexity out loud before checking. Being wrong here is the most useful signal you get.
  3. Find the bottleneck, then name the pattern that removes it. Rescanning β†’ hash map. Recomputing β†’ memoise. This step is the skill.
  4. Then open the solution here and compare reasoning, not syntax.
  5. Re-solve it from scratch in three days. Non-negotiable.

If you are doing this at a desk in silence, you are practising the wrong half β€” see Practise out loud.


🀝 Contributing

PRs welcome. The 150 are solved in Kotlin and JavaScript, so Python, Java, Go, Swift and Rust ports are all open β€” and so is anything that improves the guides.

See CONTRIBUTING.md. The one rule: a solution must run and pass its own assertions. CI checks it.

Good first contributions:

  • Port a pattern folder to your language
  • Add a section to a guide from your own interview experience
  • Improve an explanation that didn't click for you
  • Fix a typo β€” genuinely, they all help

Contributors


If this helped, a ⭐ helps someone else find it.

Something unclear, wrong, or missing β€” open an issue.

Built by Muntasir Mahmud Saif Β· LinkedIn Β· LeetCode

About

A collection of all the necessary questions and DSA (libraries, services, editors, tools, cheatsheets, etc.) 😊 Here you can get all the codes built from scratch and leetcode solutions that I have done in Javascript. Resources are gathered from many places and pushed into a single repository so that everyone can get what they want at a glance πŸ˜„

Topics

Resources

Code of conduct

Contributing

Stars

27 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages