Senior Software Engineer at Celigo

celigo logo
celigo
Senior Software EngineerRejected
September 17, 202516 reads

Summary

I interviewed for a Senior Software Engineer role at Celigo through a referral. The process included rounds on DSA (including LRU Cache), Low-Level Design (Elevator), and System Design (Distributed Counter, PostgreSQL vs. MySQL, Kafka). I received an offer, but ultimately rejected it as the compensation matched my current salary.

Full Experience

I landed an interview opportunity with Celigo for a Senior Software Engineer position through a referral on LinkedIn. The entire process was structured into four distinct rounds.

Round 1: Data Structures & Algorithms

My first round involved tackling two medium-level data structures and algorithms questions. While I don't recall the exact problems, they were typical DSA challenges.

Round 2: Data Structures & Algorithms

The second round focused on a classic problem: implementing an LRU Cache. I was expected to demonstrate my understanding of data structures like hash maps and doubly linked lists to efficiently manage cache operations.

Round 3: Low-Level Design (LLD)

In the third round, the challenge was to design an elevator system at a low level. This involved detailing the components, their interactions, and the underlying logic to manage elevator movements and requests.

Round 4: System Design & Technical Discussion

The final round was comprehensive, starting with a system design problem to build a distributed counter. Beyond that, there were general high-level design questions, and a detailed discussion comparing PostgreSQL and MySQL, along with questions specifically about Kafka's architecture and use cases.

I successfully navigated all rounds and received a positive 'Hire' decision from Celigo.

Compensation & My Decision

Celigo extended an offer with a fixed salary of 44 LPA (including PF) and a joining bonus of 2 Lakh. After careful consideration, I decided to decline the offer as the compensation package was unfortunately equivalent to my current salary, providing no significant incentive for a switch.

Interview Questions (4)

Q1
Implement LRU Cache
Data Structures & AlgorithmsMedium

Implement a Least Recently Used (LRU) cache. The cache should support get and put operations with O(1) average time complexity.

Q2
Elevator Low-Level Design
System Design

Design an elevator system, focusing on its low-level components, classes, and interactions (e.g., how to handle requests, movement, and state).

Q3
Distributed Counter System Design
System DesignHard

Design a distributed counter system that can handle a high volume of concurrent increment operations while maintaining accuracy and fault tolerance.

Q4
PostgreSQL vs. MySQL & Kafka Discussion
Other

Discuss the key differences between PostgreSQL and MySQL, including their strengths, weaknesses, and appropriate use cases. Additionally, discuss core concepts and applications of Kafka.

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!