Linux Engineer

Technology – Infrastructure
Trainline is an innovative, tech business with a mission to make travel as simple, seamless and affordable as possible. We’re proud to be Europe’s leading independent train and coach platform and rank among the highest-rated travel and ticketing apps globally. Today, we offer our customers travel to thousands of destinations in and across 45 countries in Europe and beyond. That’s more than £2.7 billion in ticket sales annually, and over 80 million visits to our apps and websites each month.
Our culture is central to our success. We’re driven to sustain our phenomenal growth from recent years, and this means we’re always working closely and collaboratively to turn our ideas into reality. It’s this sense of pace, innovating and improving pretty much everything we do, that makes Trainline so exciting and unique - we truly believe our work has a genuine impact and will change travel for the better.

The Platform Delivery team are responsible for the build, deployment and management of all server infrastructure across the entire Trainline platform, from the customer’s first connection all the way through to the web apps themselves. This infrastructure underpins all channels which collectively bring in over £2.3 billion in ticket sales every year. That means at peak times over 175 people per minute are booking Trains…. We are a growing company that loves new technology. We run a diverse platform that is 100% hosted on AWS utilising the best of what it has to offer, coupled with our own tooling this allows us to embrace Continuous Delivery, DevOps and Cloud environments to their full potential. You will often find members of our leadership team as well as our development community speaking at meetups, conferences and most recently the Global AWS Summit in Las Vegas.
Our team consists of 7 infrastructure engineers who cover all areas of Infrastructure including Cloud and physical Server management; Windows & Linux builds, deployment & management, CDN configuration, load balancing, PKI, datacentre management and a variety of other technologies that combine to provide the Platform for all other teams to use.

What you'll be working on....

    • You will work with a group of engineers focusing on all areas of Linux infrastructure management
    • You will have an inquisitive mind, enjoy resolving problems and using your own initiative to find solutions for problems
    • You will use your own experience and learning to provide a fresh approach to troubleshooting and processes, we want you to think outside the box coming up with innovative and unique solutions, pushing the bar higher each time
    • You will participate in an On-Call schedule to ensure that our systems are supported at all times, you will have the freedom to suggest and push for engineering solutions to failures, taking pride in every call out that is solved by automation rather than human intervention
    • Work daily on a public cloud provided infrastructure, defined as a code, using the open source tools that you like.
    • Engage with technical teams and areas of expertise to verify solution is fit for purpose and meeting their needs.
    • Provide systems engineering support to others in the Platform Delivery team as well as Developers through DevOps practices ensuring well driven changes

What you'll bring....

    • At least 4 years strong Linux systems engineering experience – demonstrable hands on experience managing enterprise scale Linux infrastructure over a range of OS (Debian)
    • Operate, troubleshoot, perform hardening, performance improvements, metrics and analysis, packaging
    • Design and implement services using IaC (Puppet, Terraform)
    • Experience with configuration management tools (Puppet, Chef, Ansible)
    • Experience with monitoring servers and services (Zabbix, Sensu, Prometheus)
    • experience with creating and managing CI/CD pipelines
    • Ability to code (not necessarily at a software engineering level) using Bash and Python/Ruby
    • Experience of high availability systems and resilience approaches such as load balancing, clustering, DR planning
    • AWS experience
    • Open source contributions
    • Containers/Docker experience ideal but not essential
    • Experience working on web-based applications
    • Passion for delivering awesome solutions
    • Very high energy and enthusiasm, with a passion for delivering awesome service
    • Excellent interpersonal, relationship building and influencing skills
    • Highly customer focused analytical approach to decision making and problem resolution with experience of juggling multiple tasks and priorities

    • Technical Ability\Experience

    • Debian (Ubuntu)
    • Puppet, Ansible, Chef
    • CI/CD
    • Building distributed systems at scale
    • Scripting (Bash, Python, Ruby)
    • NGINX
    • Building reliable robust systems
    • Proven track records of improving the efficiency and reliability of systems
    • Knowledge of AWS technologies desirable, including:
    • EC2
    • S3
    • VPC
    • Cloud Formation
    • IAM Roles and Security
    • Lambda
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.