Increff | Software Engineer | Bengaluru | Sept 2024
Summary
I interviewed at Increff for an SDE-1 (UI) role, undergoing an online test, a DSA + JavaScript technical round, and a Hiring Manager round. I was ultimately rejected due to a perceived lack of React.js experience and minor JavaScript syntax errors during the interview.
Full Experience
I had the opportunity to interview at Increff for an SDE-1 (UI) position after applying directly through their careers page. The HR informed me that the process would consist of three rounds: an online test followed by two technical interviews.
Regarding my background, I hold a B.Tech degree from a Tier 1 NIT and currently work as an SDE1 at a startup, bringing 14 months of experience to the table.
Round 1: Online Test
This round included two DSA problems (one easy, one medium), a frontend task that required displaying API data in a table, and 10-12 MCQ questions. I managed to solve the DSA problems but couldn't fully complete the frontend task.A week later, I received a call from HR, informing me that I had been selected for the interview rounds.
Round 2: DSA + JavaScript
The first technical interview began with a DSA question, where I was asked to solve the Asteroid Collision problem. I successfully solved it, and we had a detailed discussion about my approach. Following this, the interviewer posed several JavaScript-related questions, covering topics like the differences betweenvar, let, and const, an explanation of promises and their mechanics, and code snippets involving setTimeout and promises where I had to determine the execution order. I was also asked about the distinction between == and === operators. There were a few more questions, but I can't recall them specifically.Round 3: Hiring Manager Round
In this round, I was tasked with writing a function similar to the T9 keyboard's predictive text input. The problem was quite similar to the Letter Combinations of a Phone Number LeetCode problem. After completing it, I was given a few variations to handle different scenarios. Another question involved working with JavaScript lists, where I needed to write a function to remove an item and filter data from an array.Feedback:
Unfortunately, I was rejected after the final round. The feedback I received indicated that I lacked working experience in React.js, and during the interview, I made some syntax errors in JavaScript, likely because I wasn’t actively practicing it at the time.Interview Questions (7)
Explain the key differences between var, let, and const keywords in JavaScript, including their scope, hoisting, and re-declaration/re-assignment behavior.
Describe JavaScript Promises, including their purpose, states (pending, fulfilled, rejected), and how to create and handle them (e.g., with then, catch, finally).
Given specific JavaScript code snippets that involve setTimeout and Promises, analyze and determine the precise order in which various parts of the code will execute, considering the event loop and microtask/macrotask queues.
Explain the fundamental differences between the == (loose equality) and === (strict equality) operators in JavaScript, providing examples of when each might be used and the implications of type coercion for ==.
Write a function that generates predictive text input, similar to a T9 keyboard. This problem is similar to LeetCode's Letter Combinations of a Phone Number.
Write a JavaScript function that performs two operations on an array: first, it should remove a specified item from the array, and second, it should filter the remaining elements based on a given condition.
Preparation Tips
My preparation primarily involved leveraging my academic background from a Tier 1 NIT and experience as an SDE1 at a startup. I found my DSA skills sufficient for the online test's problems. However, it became apparent during the interviews that my active practice in JavaScript was lacking, resulting in syntax errors, and I did not have hands-on experience with React.js, which was cited as a reason for my rejection.