Main Duties and Responsibilities
-
Proactively contribute to support and development of existing applications critical to the Timing and production of the F1 Championship and other support series.
-
Proactively contribute to the development of new and innovate products as part of a small team.
-
Develop an understanding of all systems and be willing to assist with bug fixing, development or testing across the entire environment.
-
Ensure that development is rigorous and conforms to the process requirements of the business.
-
Ensure code is of the highest quality including commenting, unit testing and documentation.
-
Participate in group activities such as demonstrations, design reviews, requirement exploration, system architecting, etc.
-
Develop a broad skill set covering all aspects of the F1 software environment. Must be able to provide onsite (Biggin-Hill and Trackside) technical support for several race weekends during any given season.
-
Must be able to work flexible hours as needed to support project timelines and deliver efforts on time.
About You
-
Degree in Computer Science (or related technical discipline) or equivalent commercial experience.
-
Microsoft / Cloud (Azure / AWS) developer related technical certifications.
-
You have some experience with .Net development using C#.
-
Experience developing software using Visual Studio / Visual Studio Code or similar related .Net development tools.
-
You have experience developing either Web / Windows Desktop applications. · Experience developing low-latency network-based applications e.g. a Multi-Player game.
-
You have experience with other software languages and environments – ideally unmanaged such as C++ / C / Delphi.
-
You have strong communication, analytical and problem-solving skills with the ability to evaluate, report and converse effectively.
-
You have a good working knowledge of Linq and associated functional programming practices in the C# environment.
-
You have a good working knowledge of asynchronous programming paradigms such as async / await in .Net.
-
You understand core Object Oriented programming concepts and patterns. · You have an understanding of distributed event-based architectures built around message buses and event streams.
-
You have a good understanding of Pub/Sub type mechanisms.
-
You understand core TCP/IP principles.
-
You have a working knowledge of microservice architectures and containerization (Docker / Kubernetes) ·
-
You have a good working knowledge and/or some experience working with a relational database and its tools (e.g., MSSQL / PostgreSQL)
-
You have a good working knowledge and/or some experience with NoSQL and SQL Databases.
-
You have a good working knowledge of writing and maintaining some form of automated tests e.g. Unit or integration tests.
-
You have a good understanding of CI/CD practices.
-
You understand AGILE development philosophies. · You are familiar with code source control such as GIT
-
You have a thirst for knowledge and strong desire to increase your software engineering skills
-
You can multi-task and prioritise workloads.
-
You have a positive attitude and constantly looks to develop your skills.
-
You communicate constructively, honestly, and sensitively.
-
You can accept feedback and are willing to use it as an opportunity to learn and further your skills
-
You have a passion for excellence.
-
You are able to work well under high pressure in an environment that requires results in a short time frame.