RestoLabs interview experience Real time questions & tips from candidates to crack your interview

Software Engineer

RestoLabs
upvote
share-icon
3 rounds | 8 Coding problems

Interview preparation journey

expand-icon
Journey
When I began my journey into software development, I honestly had no idea where it would lead. I just knew that I loved solving problems and creating things from scratch. Like most people, I started with the basics — learning how to write clean code, understanding core programming concepts, and building small side projects that, at the time, felt like massive accomplishments. In the beginning, everything felt overwhelming. I’d look at job postings filled with buzzwords I didn’t understand and wonder if I’d ever be “ready.” But I kept going. I stayed consistent, asked questions, watched tutorials, and made a lot of mistakes — and I mean a lot. But those mistakes taught me more than any tutorial ever could. What helped me most was shifting my mindset: I stopped trying to just "crack" the code and started focusing on understanding the why behind it. I also made it a point to build things that excited me — even small projects — because they kept me motivated. When interview opportunities came along, I wasn’t aiming to be perfect. I simply wanted to show that I could learn, adapt, and work through challenges. I prepped hard, yes — but more importantly, I stayed authentic and focused on clearly communicating my thought process. Getting the job felt surreal. It wasn’t just about passing interviews — it was a reflection of everything I had pushed through behind the scenes: the late nights, the imposter syndrome, the “I’ll never get this” moments. If you’re somewhere on that path right now, my biggest advice is this: keep going. Build the habit before chasing perfection. Stay curious. Ask for help. And trust that every line of code you write is bringing you one step closer.
Application story
It was an on-campus opportunity provided through AON. I applied via the college placement portal, and after the initial shortlisting, the interview process was conducted on campus in a structured and timely manner.
Why selected/rejected for the role?
While I successfully cleared the written test and technical interview and felt confident about the HR round, I understand that final selections can depend on multiple factors beyond performance — such as team fit, the number of open positions, or internal business priorities. Although I wasn't selected, I see it as a valuable learning experience. I had the opportunity to test my skills, gain a better understanding of the interview process, and identify areas for improvement. I’m staying focused on growth and will carry this experience forward in a positive way.
Preparation
Duration: 6 Months
Topics: Data Structures and Algorithms, Database Concepts, Web Development, Machine Learning
Tip
Tip

Tip 1: Prioritize clarity over cleverness.
Tip 2: Learn branching strategies, rebasing, stashing, and how to resolve merge conflicts efficiently.
Tip 3: A deep understanding of your current stack will usually provide more value.

Application process
Where: Campus
Eligibility: Above 7 CGPA, (Salary Package: 6 LPA)
Resume Tip
Resume tip

Tip 1: Include personal or academic projects that showcase problem-solving skills, technical expertise, and your ability to build functional applications.

Tip 2: List programming languages, tools, and frameworks relevant to the job. Prioritize core skills (like Python, Java, React, etc.) over generic ones, and support them with context from your experience.

Interview rounds

01
Round
Easy
Coding Test - Pen and paper
Duration120 minutes
Interview date16 May 2025
Coding problem5

The first round was an offline pen-and-paper test consisting of a total of 5 questions — 4 based on Data Structures and Algorithms (DSA) and 1 SQL question.
The DSA section included a mix of difficulty levels:

  • 1 easy-level array question
  • 1 medium-level array question
  • 1 medium-level stack question
  • 1 hard-level graph problem

The SQL question tested basic to intermediate querying skills.
Overall, the round was designed to evaluate problem-solving ability, logical thinking, and understanding of core data structures.

1. Next Greater Element

Easy
10m average time
90% success
0/40
Asked in companies
IBMInfo Edge India (Naukri.com)Amazon

You are given an array 'a' of size 'n'.



The Next Greater Element for an element 'x' is the first element on the right side of 'x' in the array, which is greater than 'x'.


If no greater elements exist to the right of 'x', consider the next greater element as -1.


For example:
Input: 'a' = [7, 12, 1, 20]

Output: NGE = [12, 20, 20, -1]

Explanation: For the given array,

- The next greater element for 7 is 12.

- The next greater element for 12 is 20. 

- The next greater element for 1 is 20. 

- There is no greater element for 20 on the right side. So we consider NGE as -1.
Problem approach

For each element, we want to find the first element to its right that is greater than itself.
A brute-force approach would take O(n²) time, but we can optimize it using a stack.

Use a stack to keep track of elements for which we haven't yet found the next greater element.

Initialize an empty stack to hold potential "next greater" candidates.

Create a result array initialized with -1s.

While the stack is not empty and the top of the stack is less than or equal to the current element, pop elements from the stack.

If the stack is not empty after popping, the top of the stack is the next greater element.

Push the current element onto the stack.

Try solving now

2. Longest Subarray With Sum K

Moderate
30m average time
50% success
0/80
Asked in companies
OLX GroupIntuitRestoLabs

Ninja and his friend are playing a game of subarrays. They have an array ‘NUMS’ of length ‘N’. Ninja’s friend gives him an arbitrary integer ‘K’ and asks him to find the length of the longest subarray in which the sum of elements is equal to ‘K’.

Ninjas asks for your help to win this game. Find the length of the longest subarray in which the sum of elements is equal to ‘K’.

If there is no subarray whose sum is ‘K’ then you should return 0.

Example:
Input: ‘N’ = 5,  ‘K’ = 4, ‘NUMS’ = [ 1, 2, 1, 0, 1 ]

Output: 4

There are two subarrays with sum = 4, [1, 2, 1] and [2, 1, 0, 1]. Hence the length of the longest subarray with sum = 4 is 4.
Problem approach

Use a hashmap to store prefix_sum : first_index.
Iterate over the array.
At each step, update the prefix_sum.

  • If prefix_sum == k, update max_len.
  • If (prefix_sum - k) exists in the map, update max_len as i - map[prefix_sum - k].
  • If prefix_sum is not in the map, store it with the current index.
Try solving now

3. Detect Cycle in a Directed Graph

Moderate
25m average time
65% success
0/80
Asked in companies
AmazonAmerican ExpressOYO

Given a directed graph, check whether the graph contains a cycle or not. Your function should return true if the given graph contains at least one cycle, else return false.

Problem approach

Initialize
visited[]: Tracks if a node was ever visited
recStack[]: Tracks nodes in the current recursion path

DFS Traversal
For each unvisited node, run DFS:
Mark node as visited and add to recStack
If not visited → DFS recursively
If in recStack → cycle found
Remove node from recStack after recursion ends

Try solving now

4. DBMS

Find the second-highest salary from the Employees table. (Practice)

5. Longest Valid Parentheses

Moderate
10m average time
90% success
0/80
Asked in companies
Goldman SachsDunzoAmazon

You are given a string ‘S’ containing only the characters ‘)’ and ‘(‘. You need to find the length of the longest valid i.e. well-formed parentheses substring.

For example:
Let the given string be “(()())((”.

Here the valid parentheses substrings are: “()”, “()” and “(()())”. Out of these the longest valid string is “(()())” which has a length 6.
Problem approach

I initialized a stack, and for every character in the string, I pushed '(' onto the stack. Whenever a ')' was encountered, I popped the top element from the stack.

Try solving now
02
Round
Medium
Face to Face
Duration35 minutes
Interview date30 May 2025
Coding problem2

The interview was scheduled for 4 PM at the company office. The interviewer was a senior software engineer at the company.

1. DBMS

Write the schema for inventory management for an E-commerce application.

2. Graph Problem

Revisit the approach for the graph problem solved in the previous round.

Problem approach

I thoroughly explained the algorithm and explained using dry run.

03
Round
Medium
HR Round
Duration30 minutes
Interview date10 Jun 2025
Coding problem1

The online interview was scheduled for 1 PM. The interviewer was the co-founder of the company.

1. HR Questions

  • How would you tackle a production failure?
  • Where do you see yourself in five years?
  • What type of environment do you prefer to work in?

 

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
company logo
SDE - 1
3 rounds | 7 problems
Interviewed by OYO
4657 views
0 comments
0 upvotes
company logo
SDE - Intern
2 rounds | 3 problems
Interviewed by Amazon
960 views
0 comments
0 upvotes
company logo
SDE - 1
2 rounds | 5 problems
Interviewed by Meesho
6450 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 9 problems
Interviewed by Salesforce
3451 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
Software Engineer
3 rounds | 7 problems
Interviewed by Optum
7873 views
1 comments
0 upvotes
company logo
Software Engineer
5 rounds | 5 problems
Interviewed by Microsoft
9973 views
1 comments
0 upvotes
company logo
Software Engineer
2 rounds | 4 problems
Interviewed by Amazon
4310 views
1 comments
0 upvotes