Infosys Specialist Programmer | 2024 | OFFER

infosys logo
infosys
Specialist ProgrammerOffer
February 18, 202511 reads

Summary

I secured an offer for the Specialist Programmer role at Infosys, which involved an online assessment with three coding problems and a subsequent interview round focusing on data structures, algorithms, and system design.

Full Experience

I am a 2024 Computer Science and Engineering graduate from a tier 3 private college. I'm proficient in competitive programming, being a Knight on LeetCode (top 3%) and a Specialist on Codeforces, having solved about 2000 problems across various platforms. My development skills include React.js, Next.js, Node.js, TypeScript, and I am familiar with AWS.

Infosys typically offers packages around 3.5 LPA to freshers. For the Specialist Programmer role, it provides around 9.5 LPA. My college placement team made a small mistake, initially mentioning the 3.5 LPA role, which led to 1900 students appearing for the drive. However, the job description and pre-placement talk clarified that only the Specialist Programmer role was available.

Online Assessment (OA):

The OA was conducted on campus under strict invigilation. It comprised 3 questions with a total time limit of 3 hours. The catch was that once I moved to the next question, I couldn't go back. I decided to allocate 1 hour per question.
  • Question 1: This was the hardest. It involved a segment tree. I usually copy my segment tree class in contests, but copy-pasting was disallowed. I spent half an hour trying to implement it from scratch but couldn't. I then tried brute force and an optimized brute force, but both failed all hidden test cases. I'd rate this around Codeforces 1700-1800 level.
  • Question 2: An ad-hoc problem, roughly Codeforces 1600 level. I don't recall the exact question, but it involved a small observation, possibly related to caching the last visited index. I solved it in 30 minutes. By this point, 70% of candidates had already quit.
  • Question 3: A straightforward recursion question to explore all possible combinations. There were no repeating sub-problems, so memoization wasn't required. I solved it in 15 minutes. This was comparable to a LeetCode second Medium question during contests.

Out of 1900 students, only 12 were called for the interview.

Interview:

My interview began with a short introduction. Then, I was given a quick tree problem to test my knowledge of tree traversal (DFS or BFS), which took about 5 minutes.

The main challenge was to Design an LFU Cache. I hadn't studied LFU since my second year. The interviewer explained the problem statement and his expectations, then left the room. I thought about the problem, recalling the necessary data structures like LinkedLists and HashMaps. The logic magically started falling into place, and I had the solution. Once the logic was clear, coding it wasn't an issue. I wrote the code and drew a proper, color-coded diagram to explain my solution, which took about 10 minutes. When he returned, he was somewhat surprised by my speed. He reviewed my code, asked a few questions about specific lines, and I clarified everything to his satisfaction.

He then moved to system design. He asked: "Given a list with filters, such as a list of orders for an e-commerce site, how will you optimize when a user wants to filter the list by COD or prepaid?" I explained that with a simple filter, we would have to go through the complete database. For an on-off logic filter like COD/not-COD, I suggested storing separate tables for COD and prepaid orders. He then mentioned this wouldn't work well for write-heavy systems. I tried to come up with a different approach, but after about 2 minutes, he ended the discussion and asked if I had any questions for him. He might have asked other system design questions that I don't distinctly remember.

I received the result after one day. Out of the 12 interviewees, 6 were selected, and I was one of them.

Interview Questions (2)

Q1
Design LFU Cache
Data Structures & AlgorithmsHard

Design and implement an LFU Cache. I was expected to recall and apply appropriate data structures like LinkedLists and HashMaps to build the logic.

Q2
Optimize E-commerce Order Filtering (COD/Prepaid)
System Design

Given a list of orders for an e-commerce site with filters, how would you optimize filtering when a user wants to filter the list by 'Cash on Delivery (COD)' or 'Prepaid' options? The interviewer specifically questioned my initial approach, stating it wouldn't work for write-heavy systems.

Preparation Tips

For the Infosys Specialist Programmer role, I believe being very strong with Data Structures and Algorithms is crucial, which I gained through competitive programming. Additionally, I recommend going through system design articles on Medium and reading about the famous design patterns—singleton, factory, decorator, etc. (focus on the 6-7 most important ones). The expectation isn't to code and implement these patterns, but to be able to draw some boxes and explain what is happening within them.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!