Formula 1 covers a huge range of disciplines across a wide array of industry sectors, drawing the very best from our teams of technicians, engineers, and media rights specialists and encouraging the creativity of experts in the fields of digital and traditional media, marketing, and communications. From timekeeping to software development, broadcast engineering, and content creation, we are truly the 11th Formula 1 team.
We are recruiting for a Principal Software Developer in our Racing Systems team who would be based at our Media and Technology Centre in Biggin Hill. Do you have what it takes to be part of the world’s greatest sport and entertainment spectacle?
Main Duties and Responsibilities
1. Proactively contribute to support and development of existing applications critical to the Timing and production of the F1 Championship and other support series.
2. Proactively contribute to the development of new and innovative products as part of a small team.
3. Mentor and/or lead a small group of software developers.
4. Lead technical projects spanning multiple domains.
5. Contribute to the design of modern software architecture in alignment with our mission.
6. Develop an understanding of all systems and be willing to assist with bug fixing, development, or testing across the entire environment.
7. Ensure that development is rigorous and conforms to the process requirements of the business.
8. Ensure code is of the highest quality including commenting, unit testing, and documentation.
9. Participate in group activities such as demonstrations, design reviews, requirement exploration, and system architecting.
10. Develop a broad skill set covering all aspects of the F1 software environment as well as a defined area of specialization (T-shaped).
11. Must be able to provide onsite (Biggin-Hill and Trackside) technical support for multiple race weekends during any given season.
12. Must be able to work flexible hours as needed to support project timelines and deliver efforts on time.
Qualifications
Degree in Computer Science (or related technical discipline) or equivalent commercial experience.
Experience
1. Considerable (>5yrs) experience in a software development environment using .Net based development tools.
2. Experience with developing/supporting distributed event-based architectures built around message buses and event streams e.g., Kafka / ActiveMq / RabbitMq / SQS.
3. Experience with consuming and processing high frequency data in a real-time / near real-time environment.
4. 2+ years of experience with Amazon AWS services like Lambda, SNS, SQS, DynamoDB.
5. 2+ years working knowledge of Microsoft SQL Server (Currently 2016).
6. Experience with NoSQL Databases such as Mongo / DocumentDB.
Knowledge & Skills
1. Strong communication, analytical and problem-solving skills with the ability to evaluate, report, and converse effectively.
2. Considerable Full-stack experience with .Net development using C#.
3. Well versed in Object Oriented programming concepts and patterns such as MVVM / DI / CQRS.
4. Experience working with asynchronous and multi-threaded environments such as TPL.
5. Well versed in Pub/Sub type mechanisms and their implementation using .Net.
6. Fluent working knowledge of Linq and associated functional programming practices in the C# environment.
7. Experience with microservice architectures and containerization (Docker / Kubernetes).
8. Proven experience of designing, developing and maintaining Relational Databases (ideally MSSQL).
9. Experience writing and maintaining Unit, integration, E2E and regression tests and test suites.
10. Experience working with application metrics & monitoring with tools such as Prometheus / Grafana / Cloudwatch.
11. Familiar with code source control such as GIT.
12. Good understanding of CI/CD practices.
13. Understanding of AGILE development philosophies.
Division: Technical
For more detail, salary and company information, use the apply link.
#J-18808-Ljbffr