Architecture
2025-11-06
6 min read

My Journey with Pravesha.lk — Redefining a National System from the Ground Up

Chamith Kanchana
Architecture

How I restructured and refined the architecture of Sri Lanka Railways’ national smart ticketing system — from early design gaps to building the foundation for a platform serving millions.

My journey began in April 2014 with Pravesha.lk, the Sri Lanka Railways Smart Ticketing and Seat Reservation System.
When I joined the project, the architecture was semi-finalized, but many crucial pieces were still missing. In other words, I had to start almost from the beginning — refining the design, aligning the team, and preparing for development under a very tight deadline.

Understanding the Starting Point

My primary responsibility was to design the system and initiate development as quickly as possible.
The requirements were locked and finalized, and the proposed architecture looked promising — but there were still a lot of gaps that needed attention and practical alignment.

What I Had to Look Into

Considering the defined tech stack, requirements, and team structure, I had to make some key adjustments based on the following factors:

  • How skilled the current team was in the defined tech stack and architecture.
  • The individual capabilities and strengths of each team member.
  • The team allocation and their working hours (full-time vs part-time).
  • How to convince the technical consultant team if we decided to change parts of the tech stack.

After carefully evaluating these areas, I made several adjustments to the architecture and technologies we used to ensure the team could deliver efficiently while maintaining scalability and reliability.

Why the Team Structure Mattered

The team structure was a critical factor in architectural decisions.
Understanding each member’s capabilities and roles helped me align the design with real execution potential. We had a mix of full-time and part-time members — the leads were part-timers, but they were extremely skilled and dedicated.

I had already worked with some of them before, but to get a complete picture, I conducted one-on-one sessions with each team member and prepared a skill-map. After these discussions, I had a clear understanding of both the technical requirements and the team’s strengths.

The Next Step

The next step was to revise and refine the existing architecture and design before submitting it again.
The client had a technical consultant team made up of senior industry experts. Collaborating with them wasn’t easy at first — there were challenges, debates, and a lot of validation. However, they were supportive and open-minded once they understood the reasoning behind our proposed amendments. Eventually, they agreed to the new direction of the technical design.

Reflection

Looking back, that phase shaped how I approach large-scale system design even today.
It wasn’t just about technology or architecture — it was about aligning people, process, and product to build something that truly works. The foundation we laid during those early months became the backbone of what evolved into Sri Lanka’s national railway ticketing platform.

Every system has a story — and for me, Pravesha.lk wasn’t just about tickets or trains. It was about building something that could move an entire nation, literally.

What’s Next

In the next part, I’ll share how we refined the architecture further — from designing the core microservices to tackling real-time seat availability, payment gateway integration, and deployment under extreme time constraints.

Chamith Kanchana

Head of Engineering at Softlogic Holdings PLC and PelicanCube. Passionate about building scalable systems and leading high-performing engineering teams.