I applied online. I interviewed at IBM (San Francisco, CA) in Apr 2017
Interview
A couple phone screens with plenty of discussion on experience, past projects, etc. leading up to a single on-site that entailed meeting with multiple engineering teams, further discussion of experience and past projects followed by whiteboarding.
Interview questions [1]
Question 1
Given an aray with ['a1', 'a2', .....'aN', 'b1', 'b2', ....'bN', 'c1', 'c2', .....'cN'], stagger the subarrays so it becomes ['a1', 'b1', 'c1', 'a2', 'b2', 'c2', ...'aN', 'bN', 'cN']. The optimal solution requires linear-time sorting and a constant space complexity.
Applied through the company portal, completed an online coding assessment, followed by a technical interview covering data structures, algorithms, OOP concepts, and project experience. Concluded with an HR discussion about the role, career goals, availability, and compensation expectations.
## IBM Interview Process
The process began with initial resume shortlisting, followed by competitive **DSA and coding rounds** to test core technical concepts. After clearing those, I cleared two comprehensive interviews with the **Hiring Manager/Tech Expert** and **HR**.
Describe the interview process: The process consisted of three rounds: an initial online assessment focusing on data structures and algorithms, followed by two technical video interviews. The technical rounds were intensive, covering system design, live coding, and deep-dive questions into previous project experience and database optimization.
Interview questions [1]
Question 1
Design a scalable URL shortener system and explain how you would handle high read/write throughput.