Allen Digital | SDE2 | Banglore | June 2025 [Ghosted]

allen digital logo
allen digital
SDE-2Banglore
July 4, 20255 reads

Summary

I interviewed with Allen Digital for a Backend SDE-2 role, covering machine coding, DSA, and HLD/LLD rounds. Despite performing well and discussing approaches, I was unfortunately ghosted after multiple follow-ups.

Full Experience

Hey Community,

I’m currently working as an SDE-2, and recently had the opportunity to interview with Allen Digital for a Backend SDE-2 role. I applied through LinkedIn.

Round 1 (Machine Coding) – Cab Driver Billing System
Problem Statement:

You are part of a cab aggregator company, Allen Cabs, similar to Ola/Uber. As part of the Driver Billing team, you need to build a system that periodically generates bills for drivers based on the distance they've driven.

Platform Capabilities:

Drivers are onboarded to Allen Cabs and assigned a unique ID.

Vehicles are classified into three categories based on their model:

Economy

Premium

Luxury

Billing is based on the distance driven during trips, which can be:

Intra-city

Outstation

Billing Rates:

Intra-city:

Economy – ₹5/km

Premium – ₹12/km

Luxury – ₹15/km

Outstation: Charges are 2x of intra-city rates.

Cancellation Policy:

If a driver cancels the trip → fine of ₹10.

If a customer cancels the trip → driver is compensated ₹10.

Bonus Requirements (optional):

Variable cancellation fee based on trip type and vehicle category.

Ability to generate bills for a given time interval.

Drivers can either use:

Personal vehicles, or

Leased vehicles (leased from Allen Cabs, Allen charges x% of the bill as commission).

Method Signatures & Sample Inputs

AddDriver
AddDriver("Sachin", "+91-9936673000", "D101")
AddDriver("Ramesh", "+91-9936673011", "DL_02")
AddDriver("Manjunath", "+91-9936673010", "DL_03")

AddVehicle
AddVehicle("KA-01-2222", "Maruti Suzuki", "ECONOMY")

AddVehicle("KA-01-2223", "Ertiga", "PREMIUM")

MapDriverToVehicle
MapDriverToVehicle("Ramesh", "KA-01-2222")
MapDriverToVehicle("Manjunath", "KA-01-2223")

AddTrip
AddTrip(50, 1723116023, 1723117023, "INTRACITY", "COMPLETED", "Ramesh")
AddTrip(1050, 1723116023, 1723117023, "OUTSTATION", "COMPLETED", "Ramesh")
AddTrip(50, 1723116023, 1723117023, "INTRACITY", "CANCELED_CUSTOMER", "Ramesh")
AddTrip(50, 1723116023, 1723117023, "OUTSTATION", "CANCELED_DRIVER", "Manjunath")
AddTrip(70, 1723116023, 1723117023, "OUTSTATION", "COMPLETED", "Manjunath")

GetBill
GetBill("Ramesh") => (50 * 5) + (1050 * 10) + 10 = ₹10,560
GetBill("Manjunath") => -10 + (70 * 12 * 2) = ₹1,670
I was able to pass all test cases. For the bonus requirements, I discussed my approach with the interviewer, and he seemed satisfied with the direction I took.

Round 2 (DSA)

Search in Rotated Sorted Array - https://leetcode.com/problems/search-in-rotated-sorted-array/description/

Meeting Rooms II - https://leetcode.com/problems/meeting-rooms-ii/description/

I solved both problems starting from the brute-force approach and then optimized them step-by-step. These are fairly common problems and I was well-prepared for them.

Round 3 (HLD + LLD)
The interviewer was quite experienced. We began by discussing my previous projects and work experience. Then, I was asked to design a Ticket Booking System similar to IRCTC.

Here’s what I covered:

  • Identified and discussed core entities and their relationships.
  • Asked for and incorporated the interviewer’s feedback throughout the discussion.
  • Transitioned into the High-Level Design, covering components and request flow.
  • Toward the end, I was asked to add support for User Preferences (like berth choice).

I discussed possible design patterns that would allow such changes to be accommodated in a scalable and maintainable way.

The interviewer seemed satisfied with my design and thought process.

Final Result
Unfortunately, despite multiple follow-ups with the TA Coordinator, I never received any concrete feedback. The only response I got was:

“I’ll get back to you soon.”

Hope this post helps others preparing for backend interviews!

Interview Questions (4)

Q1
Cab Driver Billing System
Data Structures & Algorithms

You are part of a cab aggregator company, Allen Cabs, similar to Ola/Uber. As part of the Driver Billing team, you need to build a system that periodically generates bills for drivers based on the distance they've driven.

Platform Capabilities:

Drivers are onboarded to Allen Cabs and assigned a unique ID.

Vehicles are classified into three categories based on their model:

Economy

Premium

Luxury

Billing is based on the distance driven during trips, which can be:

Intra-city

Outstation

Billing Rates:

Intra-city:

Economy – ₹5/km

Premium – ₹12/km

Luxury – ₹15/km

Outstation: Charges are 2x of intra-city rates.

Cancellation Policy:

If a driver cancels the trip → fine of ₹10.

If a customer cancels the trip → driver is compensated ₹10.

Bonus Requirements (optional):

Variable cancellation fee based on trip type and vehicle category.

Ability to generate bills for a given time interval.

Drivers can either use:

Personal vehicles, or

Leased vehicles (leased from Allen Cabs, Allen charges x% of the bill as commission).

Method Signatures & Sample Inputs

AddDriver
AddDriver("Sachin", "+91-9936673000", "D101")
AddDriver("Ramesh", "+91-9936673011", "DL_02")
AddDriver("Manjunath", "+91-9936673010", "DL_03")

AddVehicle
AddVehicle("KA-01-2222", "Maruti Suzuki", "ECONOMY")

AddVehicle("KA-01-2223", "Ertiga", "PREMIUM")

MapDriverToVehicle
MapDriverToVehicle("Ramesh", "KA-01-2222")
MapDriverToVehicle("Manjunath", "KA-01-2223")

AddTrip
AddTrip(50, 1723116023, 1723117023, "INTRACITY", "COMPLETED", "Ramesh")
AddTrip(1050, 1723116023, 1723117023, "OUTSTATION", "COMPLETED", "Ramesh")
AddTrip(50, 1723116023, 1723117023, "INTRACITY", "CANCELED_CUSTOMER", "Ramesh")
AddTrip(50, 1723116023, 1723117023, "OUTSTATION", "CANCELED_DRIVER", "Manjunath")
AddTrip(70, 1723116023, 1723117023, "OUTSTATION", "COMPLETED", "Manjunath")

GetBill
GetBill("Ramesh") => (50 * 5) + (1050 * 10) + 10 = ₹10,560
GetBill("Manjunath") => -10 + (70 * 12 * 2) = ₹1,670

Q2
Search in Rotated Sorted Array
Data Structures & Algorithms
Q3
Meeting Rooms II
Data Structures & Algorithms
Q4
Design a Ticket Booking System
System Design

The interviewer was quite experienced. We began by discussing my previous projects and work experience. Then, I was asked to design a Ticket Booking System similar to IRCTC.

Here’s what I covered:

  • Identified and discussed core entities and their relationships.
  • Asked for and incorporated the interviewer’s feedback throughout the discussion.
  • Transitioned into the High-Level Design, covering components and request flow.
  • Toward the end, I was asked to add support for User Preferences (like berth choice).

I discussed possible design patterns that would allow such changes to be accommodated in a scalable and maintainable way.

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!