Trainline & GitHub
Company size: 350+
Location: London, UK
Trainline started as a call center for booking train tickets. Fifteen years later, they're on a mission to help their customers make smarter rail journeys. With £1.6 billion ticket transactions annually and 27 million visitors per month to the Trainline App and website, Trainline sets the pace in mobile rail-commerce. They have been able to evolve thanks to a robust, scalable IT platform—now supported by GitHub Enterprise.
Chief Software Architect Frederik Brysse explained Trainline's evolution as one from enterprise to startup. He said, "As our company gets older, our mindset gets younger. We used to be much more like a corporate enterprise but we've evolved into working like a start up—fast, lightweight iterations and development cycles. This is a continuous transformation. And every year, we get a bit better at what we do."
Behind Trainline's continuous transformation is automation and a focus on developer happiness, independence, and autonomy throughout the development process. That focus drove the team's recent decision to migrate more than 1,000 repositories to GitHub Enterprise.
"I wanted a flexible platform I could automate against. Being able to build on top of GitHub is a very big benefit."
A secure platform for automation
To work efficiently, the team at Trainline relies on continuous integration and other third party tools-including TeamCity, Chef, Jira and various home grown development and deployment tools. One motivation for migrating to GitHub was the need for APIs that suited their needs, while meeting Trainline's enterprise-grade security requirements.
As Frederik put it, "We’ve moved towards more self-service, a much more independent development culture, rather than a centralized, command-and-control situation. GitHub helps us keep working in this fashion."
A culture of self service
In the Trainline team's experience, developers work best when they can focus on code and take ownership of their work without obstacles. Before migrating to GitHub, Trainline developers had to rely on administrators from other teams to create repositories and change permissions—resulting in delays and time-pressed decisions to put code in inappropriate repositories where it didn't quite fit.
Using GitHub Enterprise has helped the team keep doing their own thing. Developers don't have to ask for permission to create a repositories or wait for approvals that might slow them down. According to Frederik, "There's less friction and the turnaround time to get things done is shorter."
Happy, productive developers
So far, the migration to GitHub has been well received, overall—in part because many developers at Trainline had already been using GitHub. "The second developers found out we launched our test system, they were all over it." Frederik said. "They loved it."
In addition to personal preferences, giving developers more ownership over their projects has helped encouraged autonomy, productivity, and ultimately code quality. "Using GitHub has increased code visibility, encouraged code ownership, and has even started some conversations about the code that previously would have not happened-all leading to higher quality."
"Using GitHub has increased code visibility, encouraged code ownership, and has even started some conversations about the code that previously would have not happened—all leading to higher quality."