Software Engineer C# London

Trainline, London

We make train travel easy

Our Mission 🚀
Trainline is the leading independent rail and coach travel platform selling rail and coach tickets to millions of travellers worldwide.  Via our highly rated website and mobile app, people can seamlessly search, book and manage their journeys all in one place. We bring together millions of routes, fares and journey times from 260 rail and coach carriers across 45 countries.  We offer our customers the best price for their journey and smart, real time travel information on the go.  Our aim is to make rail and coach travel easier and more accessible, encouraging people to make more environmentally sustainable travel choices.

Technology @ Trainline 
Over half of our staff are technologists, we're changing the way that people travel through the use of high quality software and technological innovation.

We know that great software requires great coding practices. Trainline is used by millions of people every day, we process over 200 ticket sales per minute, and 80 million+ transactions per month. It simply would not be possible to move fast enough if we were not able to trust our engineers to produce code of the highest quality. Here are some key practices which we insist upon across our teams that allow us to release over 300 times per week.

We review code via pull requests ✔️
We pair smartly✔️
We advocate Test-Driven Development (TDD)✔️
We treat staging like production✔️

For this role, we are looking for an experienced C# engineer, ideally with exposure & experience within a mobile client environment (iOS or Android) and to areas like DevOps and Testing. The role is designed to bridge the client platforms to our Booking, Routing and eCommerce Platforms.
You will join a highly skilled development team, building and delivering software. We use agile practices (a mix of SCRUM, Kanban & Lean) and we’re big fans of continuous integration and pair programming.
We focus on continuously improving our capabilities, architecture and process as a team. We encourage our technical staff to blog about technical innovation on Trainline’s engineering blog and to contribute code to the open source community. 

What you'll be doing;

  • Delivering projects, developing great code, using the most appropriate tools and techniques.
  • End to end feature development
  • Deployment and performance monitoring
  • Set-up, monitoring alerts for applications and environments
  • Hands on testing
  • Working with business analysts, product owners and colleague agile developers to review, set story and feature acceptance criteria
  • Data driven decision making
  • Continuously improving code base and removing technical debt

What you'll bring

  • Agile development, XP practices
  • Hands on experience with .NET/C# and Visual Studio (.Net 4.5 or newer)
  • Full software development lifecycle
  • TDD ingrained into work practices
  • Windows stack (IIS, SQL Server, MSMQ, AD)

  • Desirable
  • High traffic or eCommerce retail platform experience
  • CI tools experience
  • NUnit, mocking frameworks or similar tools
  • Experience with performance measuring & monitoring tools: New Relic and ANTS
  • Load testing experience
Our Culture 🤗
Everything begins with great people, as well as aptitude, we put a heavy emphasis on attitude.
Coaches Over Heroes
- We prioritise the focus on being one team over elevating the heroics of an individual, for us the true heroes are those individuals who are excellent at nurturing, coaching and generous in sharing their knowledge with others.
- Everything that we do takes into account the morale of every member of our team, their opportunities for growth and for participation in exciting challenges.
Mentoring and Learning
- We have a mentoring community that is constantly growing, we provide people with mentors or buddies from various teams.
- We hire awesome people capable of making smart decisions - empowerment is a great enabler of agility.

We value open expression at Trainline, we believe it’s the diversity of experience, backgrounds and perspectives of our employees that makes us who we are. We encourage everybody to play a part in changing the way people travel across the world.

About Trainline

We are a one-stop shop for train travel. Every day, we bring together routes, fares and journey times from train companies in 24 countries so our customers can easily buy train tickets and save time, hassle or money. We help our customers stay one step ahead so they don’t have to, from helping them buy the best ticket for their journey to giving them live, personalised travel information on the go via our app.

Want to learn more about Trainline? Visit Trainline's website.