SDE - 1 BACKEND ZET YOE 1

zet logo
zet
sde-1 backend engineer1 yearsOffer
June 30, 20251 reads

Summary

I successfully navigated a five-round interview process for the SDE-1 Backend position at Zet, covering Data Structures & Algorithms, System Design, and behavioral aspects, ultimately resulting in an offer.

Full Experience

I recently had an enriching interview experience at Zet for the SDE-1 Backend position. My journey began when I applied through Naukri.com, and my resume was quickly shortlisted, leading to an interview process comprising five distinct rounds.

Round 1: DSA + Problem Solving (Online Coding Interview)

This was a 60-minute live coding session where the interviewer emphasized optimal solutions and clear communication. I was given two problems:

  • Spiral Order Traversal of a Matrix
  • Group Anagrams

I successfully solved both questions within approximately 35 minutes, providing a complete explanation of my approach, code, and an analysis of their time and space complexity. The interviewer was impressed with the clarity and optimization of my solutions, giving very positive feedback.

Round 2: Technical + Low-Level Design

This 75-minute round was a comprehensive blend of core backend concepts, system design, and live coding. We discussed various topics:

  • What is Caching? I explained its definition and different types (application, DB, distributed) and shared how I've implemented caching in my previous roles.
  • What is an LRU cache? I elaborated on its mechanism.
  • For live coding, I implemented the LeetCode LRU Cache problem using a HashMap and a Doubly Linked List. I delivered a complete and working solution with correct logic and modularity, which pleased the interviewer.
  • Additional concepts covered included Context Switching, the differences between Multiprocessing vs. Multithreading, and Processes vs. Threads.

I received positive feedback, though the interviewer suggested I should brush up even more on core subject knowledge, particularly OS concepts.

Round 3: Hiring Manager Round

This round primarily focused on my project experience, a deep dive into my resume, and behavioral evaluation. After introductions, I was asked to walk through the architecture and flow of a main product I had worked on. We delved into tech decisions, scaling challenges, and how I collaborated with my team. Behavioral questions included:

  • How do I handle tight deadlines?
  • A time when I disagreed with my team.
  • What motivates me?

The feedback for this round was again positive; the HM appreciated my ownership and clarity regarding my responsibilities.

Round 4: HR Discussion

This round was a standard cultural fit and motivations discussion. We covered my career journey, reasons for seeking new opportunities, why Zet, and my long-term career goals. We also discussed my notice period and salary expectations. The conversation flowed smoothly, ensuring alignment with Zet’s vision and culture.

Round 5: Hiring Manager Calibration Round

The final round was a short, non-technical 15-minute session with the Hiring Manager. In this round, the HM explained the role and responsibilities, confirmed mutual expectations, and officially informed me that the team was moving forward with my selection as an SDE-1 Backend Engineer.

Interview Questions (11)

Q1
Spiral Matrix Traversal
Data Structures & Algorithms

Given an m x n matrix, return all elements of the matrix in spiral order.

Q2
Group Anagrams
Data Structures & Algorithms

Given an array of strings strs, group the anagrams together. You can return the answer in any order.

Q3
Caching Concepts
System Design

Explain what caching is, its different types (application, DB, distributed), and how you implemented it in your previous roles.

Q4
LRU Cache Concept
System Design

Explain what an LRU (Least Recently Used) cache is and its underlying principles.

Q5
Implement LRU Cache
Data Structures & Algorithms

Design and implement a data structure for a Least Recently Used (LRU) cache. It should support the following operations: get and put. get(key): Get the value of the key if the key exists in the cache, otherwise return -1. put(key, value): Set or insert the value if the key is not already present. When the cache reaches its capacity, it should invalidate the least recently used item before inserting a new item. Implement the LRU cache with a HashMap and Doubly Linked List.

Q6
Context Switching
Other

Explain what context switching is in operating systems.

Q7
Multiprocessing vs Multithreading
Other

Describe the differences between multiprocessing and multithreading.

Q8
Processes vs Threads
Other

Explain the distinctions between processes and threads.

Q9
Handling Tight Deadlines
Behavioral

Describe how you handle situations with tight deadlines.

Q10
Disagreeing with Team
Behavioral

Share an experience where you disagreed with your team and how you resolved it.

Q11
Motivation
Behavioral

What motivates you in your professional life?

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!