Agoda interview experience | Staff software engineer
Four major rounds are there (with 1 HR call)
Coding Round -> Platform Round -> Call with HR --> System Design --> Managerial RoundRound 1: DSA round live coding on Hackerrank with interviewer | 60 minutes
The interviewer doesn't really ask anything, apart from basic questions, this just about solving the DSA problems fully.
Two problems in 60 minutes
-
First question: Calculate the weight of the molecule, molecule will only contain C, H, O who have weights 12, 1, 8 respectively. There will only be one digit in case of multi atom like CH4. Formula contains only C, H, O and any digits. - can be done with two pointer (stack is not really needed)
-
Second question follow-up on first: now the formula can contain brackets, and the number outside bracket means that the molecule inside the bracket weight is now that many times, i.e. H(CH4)2 is 33 - stack is needed now
Round 2: Platform Round on Hackerrank | 60 minutes
Part 1: Improve architecture design
Suppliers pulling booking data from our platform. A very basic design was shown and was asked to improve the architecture. Something like below.
Suppliers --> External API --> Internal booking API --> DatabaseSuppliers have an API exposed POST /getBookings
The internal booking API is used by checkout to write the bookings into the DB
Suggested multiple improvements and had discussions around
- authentication
- rate limiting
- separation of read and write
- cache
- DB replicas
- DB sharding
- API design to be GET /bookings with pagination
Time bound, about 30-35 minutes
Part 2: Testing
What testing strategies would you adopt for making this system production ready?
The interviewer was mainly keen on knowing if I know the testing pyramid and different testing strategies.
Part 3: Code review
It had mistakes like -
Initializing repositories inside the method, instead of using DI
Cache having no TTL
Many if-elses, could have used strategy pattern for it
Exception handling not correctly done, logging could have been improved
Verdict: Rejected
Feedback was that based on my interview and 6 YOE, they said I was better fit for Senior role.
Even though I was rejected, I had good experience interviewing, they are flexible and provide materials to prepare as well before the round.
Hope this helps others!


