CommerceIQ | SDE-2 | Bangalore June 2022 Offer

commerceiq logo
commerceiq
SDE-2Bangalore3 yearsOffer
June 24, 20222 reads

Summary

I interviewed for an SDE-2 role at CommerceIQ in June 2022 and successfully received an offer after completing four rounds focused on problem-solving, code review, low-level design, and behavioral aspects.

Full Experience

I brought about 3 years of experience from a small Fintech startup, comprising around 10 team members, located in Noida. My interview process with CommerceIQ took place between June 8-15, 2022, and consisted of four distinct rounds.

Round 1: Problem Solving (1 hour)
I can't recall the exact problem, but it was a LeetCode medium-level question. I was able to articulate both brute-force and optimal approaches and successfully coded the optimal solution within the given time limit.

Round 2: Code Review (1.5 hours)
This round involved two interviewers, a senior engineer and another shadowing him. I was given a Java-based mailing application repository to clone and set up. The core task was to refactor the code and provide detailed comments. I was allowed to go through the repo independently and document my comments in a local text file. Towards the last 30 minutes, the interviewers asked specific questions about the code's scalability, particularly regarding its ability to handle around 1,000 notifications from different users. They also probed into error handling and failure scenarios within the Java code. After the interview, I shared my code review comments file with them.

Round 3: LLD round (1 hour)
I was challenged to implement the move-forward and backward functionality of a web browser. This involved discussing which data structures to use and justifying my choices. My approach was to use a doubly linked list, refreshing elements when a new page loaded, or maintaining a current pointer to the active browser node. I coded this solution and was able to execute it successfully.

Round 4: Hiring Manager Round (45 minutes)
This was a more relaxed discussion. I introduced myself and elaborated on my previous work. The round also included behavioral questions such as describing an instance of conflict with a senior or team-mate, a time I found a task difficult and how I resolved it, and a discussion about my strengths and weaknesses along with plans for improvement. This round felt like a thorough discussion about my work experience and interests, both technical and non-technical.

Result:
I received an offer from CommerceIQ, having also secured offers from CoinDCX and PepperContent. I had a 30-minute discussion with the Director to negotiate the offer and gain further insight into the company and its business plans. I felt that the recruiter and HR were very accommodating with scheduling changes. While the code-review round initially made me apprehensive due to the depth comments could entail, I focused on avoiding repetitive feedback and highlighting broader areas. The HM and LLD rounds particularly impressed me and helped me lean towards CommerceIQ’s offer. The interviewers were friendly and asked questions in a non-interrogating manner, which was a refreshing change from other companies. The director clearly understood my concerns regarding the offer and presented their pitch compellingly. Despite potentially bargaining for a higher offer from CoinDCX, I was genuinely happy with CommerceIQ's work culture and team, so negotiating for a slightly higher hike didn't seem as crucial to me. Furthermore, my two years of experience at Amazon, coupled with many senior leaders at CommerceIQ also coming from Amazon, provided a sense of familiar vision and guiding principles for the company.

Interview Questions (5)

Q1
Code Review and Scalability of a Mailing App
Other

I was given a Java mailing application repository to clone and set up. My task was to review the code and provide comments on refactoring. Additionally, I was asked to address the scalability of the code, specifically how the app would handle scaling to approximately 1,000 notifications from different users. I also had to provide comments on error handling and failure scenarios within the Java codebase.

Q2
Browser Navigation (Move Forward/Backward) Low-Level Design
Data Structures & AlgorithmsMedium

Design and implement the move-forward and backward functionality of a web browser. Discuss the choice of data structures for this implementation and justify your reasoning.

Q3
Conflict with a Senior/Teammate
Behavioral

Elaborate on an instance where you had a conflict with a senior or a team-mate.

Q4
Overcoming a Difficult Task
Behavioral

Describe an instance where you found a task particularly difficult and how you resolved it.

Q5
Strengths, Weaknesses, and Improvement Plans
Behavioral

Discuss your strengths and weaknesses, and outline your plans or actions to improve on both.

Preparation Tips

My preparation involved practicing problem-solving, though I don't recall specific LeetCode questions for the first round. I also focused on understanding code quality, scalability concerns for applications, and low-level design principles, which proved beneficial for the later rounds. For behavioral aspects, I reflected on my past experiences to formulate clear and concise answers.

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!