The short version: form → take-home → technical interview → live coding with the mentor you would ship under. Out of thousands of applicants, two were selected for the project I joined: graph-heavy transit network simulation in C/C++.
What actually mattered
- Choosing depth over breadth on the take-home when multiple project prompts were offered.
- C++ fluency under honest questioning: templates, OOP, memory and concurrency intuition.
- Live coding as communication: the graph task was as much about narrating trade-offs as finishing code.
What I took home
IISc is not only a campus; it is a tempo. The library, the corridors, and the expectation of rigor recalibrated how I read papers and how I write production simulation code. If you are applying: be thorough in the form, ruthless in project choice, and rehearse coding out loud before the final round.