Lead Software Engineer
Role details
Job location
Tech stack
Job description
We are looking for a world-class Lead Software Engineer to drive the systems that power our Formula 1 team. You will work to develop the tools that are used by our engineers at the racetrack and at the McLaren Technology Centre to analyse and improve car performance at the sharp end of the sport. You will analyse, design, implement, and support business-critical software systems aligned with the requirements of McLaren Racing. As a senior member of the department, you will provide technical leadership across a range of software projects, contribute to initiatives beyond your own team, drive process improvement & culture, and support the development of other team members. You will partner with our Racing colleagues and Platform Engineering team to ensure the highest standards of operational excellence for our platforms including monitoring, alerting, and problem resolution.
Due to the nature of track and tunnel operations, some flexibility to work out of office hours and weekends will be required. The role will be primarily based at the McLaren Technology Centre with a proportion of the time spent working from home.
Accountabilities and Responsibilities
- Exhibit exemplary leadership and alignment to McLaren's culture of engineering, collaboration, and continuous improvement.
- Work closely with the Software and Data Science Leadership team and our development teams to contribute to the department's vision for software in Racing, ensuring that our software products are cohesive.
- Help to define the team's technical roadmap, ensuring alignment with the priorities driven by the business and development team manager. Planning up to a year in advance, while remaining flexible and adapting to changing circumstances.
- Build a significant network of strong trust with multiple functional team members and leadership, and proactively drive feedback, planning, and prioritisation discussions that are pragmatic, realistic, and which deliver the right performance projects for the team.
- Make key decisions on technologies in the context of an agreed strategy. Lead the development and adoption of technologies, tools and techniques within the team to promote standardisation across the department and optimise efficiency and re-use.
- Drive continuous improvement in the team's software development practices, guiding the evolution of our standards and procedures to ensure that we consistently deliver high-quality software which is maintainable and simple to support.
- Work closely with Racing colleagues to fully understand business processes and requirements to inform designs and ensure that requirements are met.
- Balance delivery of their allocated work items while supporting and guiding the work of the wider team.
- Guide the team in finding the appropriate balance between building the right solution, building it fast, and building it right.
- Ensure that systems are supported in line with Racing's needs.
Requirements
Do you have experience in TypeScript?, Do you have a Bachelor's degree?, * BSc in Computer Science or equivalent discipline (2:1 or above) or equivalent industry experience.
- A successful track record as a tech lead on a variety of substantial software development projects working with agile/lean methodologies
- Highly experienced in full stack enterprise software development using C# (or Java), and Python with a deep understanding of object-oriented design and architectural patterns for high performance and availability.
- Web development experience using technologies such as JavaScript, TypeScript, and React.
- Good understanding of distributed systems design theory and practical application in a cloud or Kubernetes environment.
- Using git in a collaborative environment (pull requests, branches).
- Experience with SQL and document databases.
- Experience with deploying software as containers to Kubernetes.
- Practical, day-to-day use of AI tools like GitHub Copilot, Claude, Gemini, and others to facilitate developer acceleration.
- Experience using planning tools like Jira, GitHub, or Asana in an Agile delivery environment.
- High competency in written and oral English language.
Desirable
- Demonstrated experience building internet scale, highly available systems that implement patterns like chaos engineering, admission control, circuit breakers, and static content delivery.
- Experience of working with timeseries and delta-change based systems.
- Experience creating and managing CI/CD pipelines using GitHub Actions or Azure DevOps.
- Experience developing systems with Kafka and stream processing techniques.
- Evidence of continuous learning and scaling your knowledge through a software engineering team.
- Experience using cloud technologies e.g. Microsoft Azure, AWS, or Google Cloud.
- Familiarity with MATLAB or Python for mathematical processing.
Benefits & conditions
Pulled from the full job description
- Shuttle service provided
- Life insurance
- Company pension
- Private medical insurance
- Car scheme, We offer a comprehensive package of benefits including private healthcare, car schemes, life insurance and generous pension contributions.