Experience: 3.2yrs
Date: Feb,2024
You are tasked with developing a comprehensive reservation system for the airline division at PhonePe. The system needs to manage flights, passengers, seats, and bookings efficiently.
Flight Management
Define flight data structures to store information like origin, destination, airline, schedule, capacity, and available seats , base fare.
Implement functionalities to add, update, and cancel flights.
Seats are available for Economy , Business , Premium class. Seats are fixed for these classes per flight
Passenger Management
Design a passenger system to track passenger details (Name , Email , Mobile Number)
Fare Management System
Fare to be computed based on base fare for different class multiplied by number of seats being booked.
Booking System
Develop an intuitive booking interface for passengers to search for flights, select class, and make reservations.
Additional Features (Focus on these once above are ready)
Get booking details with passenger details , booking Id
Implement booking cancellation
Implement flight cancellation
Manage waitlist
Handle concurrent bookings
Handle Dynamic Fare based on Demand / Supply
Handle different ranking strategy for flight search (Price / duration / departure time / arrival time / etc etc).
Evaluation Criteria
Design
Object-oriented design principles: Classes, interfaces, inheritance, polymorphism.
Efficiency and scalability of data structures (e.g., HashMaps, Trees).
Flexibility and modularity of system components.
Consideration of security and data privacy principles.
Implementation
Functionality and accuracy of the system's features.
Performance and resource optimization of algorithms.
Code readability, maintainability, and adherence to coding standards.
Error handling and exception management for smooth operation.