
NIO Software Engineer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 27 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at NIO.
Software Engineer
Four rounds of interviews: first was a coding challenge with LeetCode easy/medium problems, the second was a React coding task to build a timer countdown, the third was a system design question about YouTube's TopK in a sliding window, and the last one was with the hiring manager.
- Can you explain Topological Sorting?
- How would you solve the 3 Sum problem?
Cloud Software Engineer
The interview process started with a phone call from the recruiter, followed by an interview with the hiring manager, then a team interview, and finally an interview with the head of the department. Getting any feedback between stages took weeks, and my emails, phone calls, and WhatsApp messages often went unanswered. I had to chase for information about the next steps at every point. It took three months to get through these four stages, and in the end, there was no offer.
- Did you work on any easy leetcode coding problems?
- Were there other technical questions you were asked?
Software Engineer
Recruiter hit me up on LinkedIn because I work for the biggest electric car maker. I thought, why not? The manager called for a phone screen and asked a LeetCode question about stock buying. I nailed it in 15 mins and asked about the job, but he was vague and didn't mention it was front-end, which isn't my area (I'm more backend/services). I went for the onsite anyway. The first round was another LeetCode question, this time about arrays with binary search, which was fine. The second round, this guy with an attitude made me code on an Apple laptop connected to a TV. I struggled since I've never used Mac, and he was like, 'You have to use Apple here.' He asked about JavaScript and generating random numbers. I gave it a shot with my limited JS knowledge. He then showed me an O(n^2) solution and said he wanted it in JavaScript, which was weird since I could do it in O(n) in my preferred language. Then there was a Director with a lunch interview. He chatted a bit about the company and led me to the free lunch line. It felt like a movie scene. I asked about their US car release, and he said never, and when I pressed him on why NIO wouldn't just decide to do software in China and close shop in the US, he said they were going IPO, so that wasn't possible. It didn't feel like a solid answer, considering other companies with minimal US presence are on US stock exchanges. The fourth round was the hiring manager, who did the phone screen. He asked me to draw a 2D rectangle animation. I told him I'm backend/services, and he revealed it was a front-end role. I was frustrated, asking why he didn't say that in the phone screen to save us both time. I decided to be direct and said I couldn't do the task. Then he asked about a current REST services problem, and I drew a diagram and explained a solution, which he seemed to like. The fifth round was a system design for Twitter, which went okay, but I was just going through the motions by then. The sixth round was with a Product Manager for behavioral questions. Given my CPM certification, I offered various approaches, and he seemed impressed. A big tip for future interviews: be clear about what you want and don't compare yourself to FANG/FLAG. If you want front-end, ask front-end questions in screening, not old Google questions. It feels like a 'fox got itself scars to become a tiger.' Also, don't hype free lunch as a major perk; everyone mentions it. I didn't even follow up, but someone else mentioned scheduling calls twice that didn't happen, and then the recruiter called to say they needed more front-end skills. I suggested they update the job title and hung up.
- Can you explain the best time to buy stocks, as per LeetCode?
- Could you solve this LeetCode problem related to arrays using binary search?
- Can you write some code in Javascript to address a programming task?
NIO Software Engineer Interview Questions
Quoted word for word from NIO interview reports.
“What is a suffix tree and how is it used?”
Read reports →“Could you tell me the difference between fragments and pixels?”
Read reports →“Could you implement the iPod shuffle play functionality given a playlist?”
Read reports →“Could you solve this LeetCode problem related to arrays using binary search?”
Read reports →“If a system has very poor network throughput, how would you go about debugging that problem?”
Read report →“Can you detect if a sentence or verse is a panagram and, if time allows, optimize your solution?”
Read report →“Could you derive the solution for the basic curve-fitting problem?”
Read report →“Can you solve LeetCode 42, Trapping Rain Water?”
Read report →“Can you explain the best time to buy stocks, as per LeetCode?”
Read report →Formats, difficulty and experience
Across all 27 NIO interview reports.