Junior Software Engineer

AI overview

Contribute to the development of innovative software solutions that enhance Formula 1 performance, engaging in all stages of the software life cycle and collaborating with cross-functional teams.

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. 

 

Role Dimensions:  

 The Software & Data Science department is responsible for the analysis, design, and delivery of bespoke software tools which ultimately 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 create solutions for our customers' needs. 

 

As a Senior Associate Software Engineer, you will be involved in all stages of the development life cycle from initial analysis right through to deployment, monitoring, and support.  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:  

  • To take and understand project requirements to define specifications and to architect robust, scalable and testable software and system solutions.

  • To be involved in all stages of the development life cycle: initial analysis, design, implementation, build, integration, testing, deployment, debugging and support.

  • To confidently analyse and overcome technical challenges with workable and innovative solutions.

  • To work collaboratively with the team to make sure that all aspects of the project are delivered as planned.

  • To raise awareness of and mitigate against potential technical risks.

  • To maintain consistent standards and approaches adopted by the team.

  • To accurately estimate activity timescales and provide regular progress reports.

  • 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.

 

Requirements

Knowledge, Skills and Experience:  

 Essential 

  • BSc in Computer Science or equivalent discipline (2:1 or above) or equivalent industry experience. 

  • High proficiency with at least one backend language used in a commercial setting (ideally C#/.NET or Python).

  • Experience with frontend technologies such as JavaScript, TypeScript, React, and CSS.

  • Experience using git in a collaborative environment (pull requests, feature branches).

  • Experience building maintainable codebases using the SOLID principles.

  • High competency in written and oral English language.

  

Desirable 

  • Commercial experience working with agile/lean methodologies

  • Experience with Linux and running containers on Kubernetes.

  • Experience with SQL and document databases e.g. SQL Server and MongoDB.

  • Experience of multi-threaded application development.

  • Experience using cloud technologies e.g. Microsoft Azure.

 

Personal Attributes:  

  • Self-motivated with high levels of initiative. 

  • You enjoy working with people to solve problems, choosing the simplest and most elegant approach then iterating.

  • You're flexible and adaptable, detail orientated, and get satisfaction from delivering to a high standard.

  • Able to work autonomously under pressure and to tight deadlines. 

  • You recognise the importance of continuous learning and sharing that knowledge with others.

  • Approachable, with balanced judgment and a high level of personal integrity. 

Ace your job interview

Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

Junior Software Engineer Q&A's
Report this job
Apply for this job