Got the offerSDE1 at McKinsey & Company
- Difficulty
- Process took
- 3-4 Weeks
- Rounds
- 4
- Format
- Hybrid
- Applied via
- Referral
How it went
- Take every question as an opportunity to demonstrate your structured thinking. McKinsey’s interviewers value candidates who can break down a problem logically, approach it step by step, and communicate their reasoning clearly.
- Be ready for deep dives into your previous experiences. Don’t just focus on the “what” you did, but also explain the “why” and “how.”
- For behavioral questions, focus on your thought process and how you collaborate with others. McKinsey values team-oriented individuals who can thrive in complex, fast-paced environments.
What they would tell you
- Take every question as an opportunity to demonstrate your structured thinking. McKinsey’s interviewers value candidates who can break down a problem logically, approach it step by step, and communicate their reasoning clearly.
- Be ready for deep dives into your previous experiences. Don’t just focus on the “what” you did, but also explain the “why” and “how.”
- For behavioral questions, focus on your thought process and how you collaborate with others. McKinsey values team-oriented individuals who can thrive in complex, fast-paced environments.
How to prepare
- Focus on solidifying your grasp of algorithms and really get comfortable with classic problems like DP and graph traversals.
- Try to build intuition by explaining your solutions to others or even to yourself aloud. For system design, practice breaking big problems into smaller pieces, think components, data flow, and bottlenecks.
Round by round
- 1
Online Assessment90 min
The assessment was a good warm-up. Two problems that tested my fundamentals but also pushed me to optimize. I remember pacing myself and making sure to write clean code while explaining my logic to myself out loud. It felt like a good balance between challenge and fun. Longest Increasing Subsequence Using Dynamic Programming I used a DP array and walked through the sequence, updating the longest subsequence lengths. It wasn’t trivial, but after some thinking, it clicked. Shortest Path in Weighted Graph Using Dijkstra’s Algorithm I implemented Dijkstra with a priority queue, ensuring efficient pathfinding. I double-checked edge cases to avoid bugs.
- 2
Technical Interview90 min
This round really made me think bigger picture. Designing a messaging system that could scale globally was no small feat. I tried to break down the problem step-by-step, thinking about messaging queues, storage, and fault tolerance. The interviewer and I had a good back-and-forth, which helped me refine ideas.
- 3
Coding + Behavioral60 min
During this round, I coded on a whiteboard, implementing array intersection using hash maps. It felt great to solve something straightforward after the heavier system design. The behavioral part was a nice change of pace. I shared stories about challenges I’d overcome, how I handle team conflicts, and how I stay productive.
- 4
HR round30 min
The last round was about fit, talking about values, collaboration, and growth. It felt more like a conversation than an interview. I appreciated how they wanted to understand what drives me beyond code.
What came up
A candidate-reported account, lightly edited. Interview processes change by team and date.