Skills Required
I interviewed with Accelya for a Software Engineer position on their airline revenue management team. Accelya is one of those companies that doesn't get much attention in tech circles, but they're actually doing some really interesting work in aviation technology. The interview process was thorough but fair, and I learned a lot about their domain during the process.
Here's my detailed account.
Quick Overview
- Role: Software Engineer, Revenue Management Systems
- Location: Bangalore, India (onsite)
- Timeline: ~3 weeks from referral to offer
- Rounds: Technical discussion → Coding assessment → 3 technical interviews → HR discussion
- Outcome: Offer — ₹22 LPA base + variable bonus
I have 4 years of experience, mostly in Java and Spring Boot. A friend who works at Accelya referred me, which I think helped fast-track the process.
Stage 1: Initial Technical Discussion
First round was a 45-minute technical discussion with a senior engineer. No coding, just conversation. He asked about:
- My experience with distributed systems
- How I've handled database transactions in high-concurrency scenarios
- My understanding of airline industry challenges (admittedly, not much going in)
The domain question caught me off guard. I was honest that I didn't know much about aviation tech, which he appreciated. He then explained some of the core problems: inventory management across multiple airlines, real-time pricing, handling massive transaction volumes during peak booking seasons.
This conversation was actually really helpful for the subsequent rounds — it gave me context for what their systems actually do.
Stage 2: Coding Assessment
Online coding test on HackerRank. 3 problems in 90 minutes.
Problem 1: Implement a thread-safe cache with TTL (time-to-live) support. This tested concurrency knowledge — I used ConcurrentHashMap and a background cleanup thread.
Problem 2: Given a list of flight segments with departure and arrival times, find the minimum number of aircraft needed to operate all flights. This was essentially an interval scheduling problem — I used a min-heap to track when aircraft become available.
Problem 3: JSON parsing and transformation — convert a nested airline booking structure into a flat format for reporting. Straightforward but tested attention to detail with edge cases.
The problems felt relevant to their domain, which I liked. They weren't generic algorithm puzzles.
Stage 3: Technical Interview 1 — Java & Concurrency
This round focused heavily on Java internals and concurrency.
Questions I remember:
- "How does HashMap work internally? What happens in a hash collision?"
- "Explain the difference between synchronized blocks and ReentrantLock."
- "How would you design a system that processes 10,000 flight bookings per second?"
- "What are the challenges of using database transactions across microservices?"
For the system design question, I talked about event-driven architecture, message queues (Kafka/RabbitMQ) for asynchronous processing, and the saga pattern for distributed transactions. The interviewer pushed me on failure scenarios — what happens if a message is lost, how do we handle retries, etc.
They clearly care deeply about system reliability. Aviation systems can't afford to lose transactions or have inconsistent state.
Stage 4: Technical Interview 2 — Database & Performance
This round was all about databases and performance optimization.
Key questions:
- "How would you optimize a query that's running slow on a table with 100 million rows?"
- "Explain the difference between clustered and non-clustered indexes."
- "How do you handle database schema migrations in a production environment with zero downtime?"
- "What's your approach to database connection pooling in a high-traffic application?"
For the slow query question, I walked through my systematic approach: analyze the execution plan, check for missing indexes, look at table statistics, consider partitioning for large tables, and evaluate whether the query itself needs restructuring.
The interviewer shared a real example from their system — a pricing calculation query that was timing out during peak hours. They ended up using materialized views and caching the results. It was a good discussion about practical trade-offs.
Stage 5: Technical Interview 3 — Problem Solving
This was a mix of coding and architectural thinking.
Problem: Design a fare class allocation system for airline seats.
The scenario: An airline has different fare classes (Economy, Premium Economy, Business, First) with different pricing and restrictions. When a booking comes in, the system needs to allocate the best available fare class based on rules.
I designed a rule engine approach with:
- A priority-based rule evaluation system
- Dynamic pricing based on demand
- Inventory tracking across fare classes
- Overbooking management logic
The interviewer asked about edge cases: what happens when a flight is oversold, how to handle upgrades, how to deal with last-minute cancellations. This led to a really interesting discussion about airline revenue management strategies.
Stage 6: HR Discussion
Standard HR round — compensation expectations, notice period, career goals. The HR person was transparent about the role expectations and growth opportunities.
What Makes Accelya Different
I interviewed at several product companies before Accelya, and the difference is the domain complexity. Aviation tech has real constraints — safety regulations, massive transaction volumes, legacy systems that can't be easily replaced. If you're interested in solving hard engineering problems in a domain that actually matters to millions of people, Accelya is worth considering.
Compensation
Offer: ₹22,00,000 base salary plus a variable bonus component (up to 20% based on company and individual performance). Total comp can go up to ₹26–27 LPA.
For Bangalore, this is competitive for mid-level roles, especially considering the work-life balance is reportedly better than at many product companies.
Advice for Candidates
- Learn the domain: Spend some time understanding how airline booking systems work. It'll give you context that most candidates won't have.
- Focus on reliability: Aviation systems prioritize reliability over everything else. Emphasize your experience building fault-tolerant systems.
- Be honest about what you don't know: They value intellectual honesty over pretending to know things you don't.
I'm excited to join the team. Feel free to ask questions in the comments!
Related Experiences
Key Topics
Found this helpful?
Explore more interview experiences from top companies and ace your next interview!
Browse More Experiences