Summary
I recently interviewed for the Software Development Engineer (SDE) role at Sigmoid during their on-campus recruitment. Although I successfully navigated several technical and managerial rounds, I ultimately received a rejection after the final round. Despite the outcome, the entire interview process proved to be a significant learning experience for me.
Full Experience
I had the opportunity to interview with Sigmoid for the Software Development Engineer (SDE) role during their campus recruitment drive. The process was structured into four distinct rounds, and while I wasn't ultimately selected, it was an incredibly valuable journey that sharpened my technical and problem-solving skills.
Round 1: Online Coding Test (2 hours)
The first hurdle was an online coding test lasting two hours. This round was comprehensive, divided into three sections:- Section 1: 8 Data Structures and Algorithms (DSA) problems.
- Section 2: 15 Computer Science Fundamentals questions.
- Section 3: 15 Puzzles & Aptitude questions.
Round 2: Technical Interview (80 min)
My second round was an 80-minute technical interview. The interviewer delved into both DSA and core CS concepts:- I was asked to solve DSA problems like Decode String (LeetCode 395), Three Sum (LeetCode 15), and Longest Substring Without Repeating Characters (LeetCode 3).
- We discussed the fundamental pillars of OOPS.
- Questions on various HTTP status codes were posed.
- A system design discussion covered topics such as load balancing, horizontal vs. vertical scaling, and SOLID principles.
- Finally, I had to explain the key differences between Python, C++, and Java.
Round 3: Technical Interview (40-50 min)
The third technical interview was shorter, lasting about 40-50 minutes, and primarily focused on coding:- I was asked to code a solution in VS Code to 'Build Tree From preorder and postorder'.
- Another coding challenge in VS Code was to 'find minimum Cost in Grid' using dynamic programming.
Round 4: HR + Managerial Round (approx 70-80 min)
The final round was a combined HR and Managerial interview, lasting approximately 70-80 minutes. This round assessed both my soft skills and project-specific technical depth:- I started with a self-introduction.
- I was given a medium-to-hard level SQL query to solve.
- We had an in-depth discussion about my projects.
- A significant part involved drawing the architectural diagram of one of my projects on paper, explaining how it works, how each component is connected, and their behavior and interaction.
Verdict: Rejected
Unfortunately, despite making it to the final round, I was not among the 6 students selected for the role. Although I didn't get the offer, the process was a fantastic learning opportunity that helped me understand the interview landscape better and hone my skills.Interview Questions (13)
The interviewer questioned me about the fundamental pillars of Object-Oriented Programming (OOPs), such as encapsulation, inheritance, polymorphism, and abstraction.
I was asked to explain various HTTP status codes and their meanings, including examples for different categories like informational, success, redirection, client error, and server error.
I discussed system design concepts including load balancing techniques and the differences between horizontal and vertical scaling. I also touched upon SOLID principles in software design.
I was asked to explain the key differences and use cases for programming languages like Python, C++, and Java, discussing aspects such as memory management, execution speed, and paradigms.
In VS Code, I was tasked with building a binary tree given its preorder and postorder traversals. This involved reconstructing the tree structure based on the order of node visits in both traversals.
I was asked to solve a dynamic programming problem in VS Code: finding the minimum cost path to reach a specific cell in a grid, given movement rules and associated costs.
I was asked to introduce myself, covering my background, education, and professional aspirations.
I was given a medium-to-hard level SQL query to write, likely involving joins, subqueries, or aggregate functions, to extract specific data from a hypothetical database schema.
I discussed my past projects, highlighting my role, the technologies used, challenges faced, and outcomes.
I had to draw an architectural diagram of one of my projects on paper, illustrating its components, their connections, and explaining their behavior and interactions.
Summary
I had an interview round with Sigmoid on May 10th which included questions on data structures & algorithms and Java/Spring core concepts.
Full Experience
Q1. Given an array arr[] of size N, find the smallest and second smallest element in an array.
Q2. Min Path Sum from Top Left to Bottom Right
Q3. Diff between String, StringBuilder and StringBuffer Q4. Why we need String in java if we have StringBuilder and StringBuffer Q5. Diff between SingletonClass in Java and Spring Q6. What to do when we need new bean each time not singleton object in spring ?
Interview Questions (6)
Given an array arr[] of size N, find the smallest and second smallest element in an array.
Min Path Sum from Top Left to Bottom Right
Diff between String, StringBuilder and StringBuffer
Why we need String in java if we have StringBuilder and StringBuffer
Diff between SingletonClass in Java and Spring
What to do when we need new bean each time not singleton object in spring ?