Senior Software Engineer

Job description

At McLaren, our
mission is to set the standard for high performance in sport. And everyone, in
every part of the team, has a role to play. So if you want to test your ideas
with the world watching... And measure your progress in milliseconds... And
play your part in racing history... You belong here. High performance starts
with you.

Purpose of the Role:

The purpose of this role is to analyse, design and engineer innovative software solutions to projects aligned with the requirements of McLaren Racing. As a senior member of the development team, you will provide technical leadership on a range of projects, contribute to initiatives beyond your own team, and mentor less experienced team members.

Role Dimensions:

The Software & Data Science department is responsible for the analysis, design, and delivery of bespoke software tools and methodologies which help improve our Formula 1 car's performance. This starts with aerodynamicists submitting designs via the CFD Portal, through wind tunnel data acquisition, processing, and analysis, to simulation and car setup optimisation, to trackside operational decision-making tools such as race strategy. We are a cross-functional group, bringing together data science, machine learning, software engineering, and DevOps to deliver performance focussed platforms and solutions.

As a Senior Specialist Software Engineer, your role will combine elements of technical leadership, agile/lean project delivery, and stakeholder management. You’ll be involved in all stages of the development life cycle from initial analysis right through to deployment, monitoring, and support. With your involvement in systems architecture, you’ll balance the local view of specific stakeholder needs with the global view of software in Racing to build a cohesive application estate.

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.

Principal Accountabilities:

  • Contribute to the team’s technical roadmap, ensuring alignment with the priorities driven by the business / team manager. Planning a year in advance, while remaining flexible and adapting to changing circumstances.
  • To drive all stages of the development life cycle: initial analysis, design, implementation, build, integration, testing, deployment, debugging and support.
  • To take ownership and lead on assigned projects in order to deliver solutions on time and on budget.
  • To capture and understand project requirements, define specifications, and to architect robust, scalable, and testable software and system solutions.
  • To work collaboratively with your team, the department, and stakeholders in line with the Software & Data Science Guiding Principles.
  • To accurately estimate activity timescales and provide clear and regular progress reports.
  • To raise awareness of and mitigate against potential technical risks.
  • To confidently analyse and overcome technical challenges with workable and innovative solutions.
  • To contribute to and maintain consistent standards and approaches adopted by the team.
  • To efficiently manage your workload.
  • To keep up to date with the latest software development technologies and methodologies.
  • To freely share knowledge, insight, best practice, and ideas.

Job requirements

Knowledge, Skills and Experience:

Essential

  • BSc in Computer Science or equivalent discipline (2:1 or above) or equivalent industry experience.
  • Extensive commercial experience delivering projects using agile/lean methodologies.
  • A strong full stack software development background with an understanding of how to engineer quality software.
  • Considerable commercial C#/.NET development experience.
  • Using git in a collaborative environment (pull requests, branches).
  • Experience with SQL and document databases e.g. SQL Server and MongoDB.
  • Experience building maintainable codebases using the SOLID principles and design patterns.
  • Using ALM tools like Azure DevOps to organise and track your work.
  • High competency in written and oral English language.

    Desirable

  • Experience developing systems with Kafka and stream processing techniques.
  • Familiarity with MATLAB and Python for mathematical processing.
  • Experience with Linux and running containers on Kubernetes.
  • Experience designing distributed microservice based architectures.
  • Web development experience using technologies such as JavaScript, TypeScript, and React.
  • Experience using cloud technologies e.g. Microsoft Azure, AWS, or Google Cloud.

What can McLaren offer?

We constantly strive
to be better tomorrow than we are today. Our ambition is to be the most
pioneering and exhilarating racing team in the world, and our collective task
is to set the standards for high performance in sport. We show up every day with
energy and enthusiasm, ready to play our part.

We encourage and
support diversity, equity and inclusion. We will actively promote a culture
that values difference and eliminates discrimination in our workplace.

McLaren Racing is
based at the iconic McLaren Technology Centre (MTC) near Woking. Our state of
the art, sustainable campus offers many facilities including a gym, restaurant
and indoor and outdoor break-out areas, as well as direct access to park and common
land. The MTC is connected to Woking mainline station via regular
fully-electric shuttle buses, from which London Waterloo is a 30 minute train
ride.

Hybrid working
patterns give you options to balance your home life and outside interests with
your work. We offer a comprehensive package of benefits including private
healthcare, car schemes, life insurance and generous pension contributions.

Organisation: 
McLaren F1 Team