About the Role
The Machine Learning team at Hawk-Eye Innovations sits within the Computer Vision Engineering Department. This department is responsible for delivering real-time, end-to-end solutions for tracking balls, players, and other relevant sports objects for sports officiating and data analytics. An example of their work is SkeleTRACK, a real-time ball and skeletal tracking product used in major US sports leagues and European football leagues. The Computer Vision and Machine Learning team are primarily responsible for building this technology and are now looking to expand and improve it for more sports and services, tackling more complex and challenging problems.
A Day in the Life of a Machine Learning Engineer
As a Machine Learning Engineer at Hawk-Eye Innovations, you will be part of an agile team managing the end-to-end pipeline for Machine Learning models. Your tasks will include:
- Working with annotation teams to acquire high-quality annotated data and provide them with optimal tools on the annotations platform.
- Monitoring live model performance and identifying common failure cases.
- Integrating models and features into SkeleTRACK products.
- Staying updated with the latest research in the field.
- Designing new ML models, both real-time and otherwise.
You will collaborate closely with the product team to define requirements and develop innovative solutions for complex challenges in sports technology. You will solve significant problems, lead, and coach junior team members in brainstorming, research, and approach selection. The role involves working within a weekly Kanban cycle to deliver cutting-edge technology and supporting the configuration and deployment of global products.
Key Responsibilities
Innovation in ball and player tracking solutions for sports officiating, broadcast video, coaching, and fan engagement is central to Hawk-Eye. Computer Vision and Machine Learning are core competencies of the Hawk-Eye Engineering team. As a Senior Engineer, you will be a key member of the team, developing into a domain expert and influencing the direction of development. Your responsibilities will include:
- Being a technical mentor to the development team and influencing team decisions.
- Building strong relationships within the machine learning team and communicating effectively with both engineering and product teams.
- Maintaining modern architecture and design practices.
- Understanding requirements and delivering solutions with minimal direction.
- Being a thorough and excellent software engineer, writing code with minimal guidance.
- Leading R&D initiatives and staying updated with industry trends.
- Attending CV/ML conferences.
- Being a pragmatic problem solver.
Skills, Knowledge and Expertise
Must have a good understanding of:
- Python
- Relevant libraries (Pytorch, Pytorch-ignite, Numpy, Jupyter, Pandas)
- Linux & Windows 10
- TensorRT
- GIT
Nice to haves:
- Modern C++ (C++17/20)
- CUDA
- ClearML
- CMake & Visual Studio
- OpenCV
- Typescript & Semantic UI React
- SSH
Bonus Skills:
- QT
- TeamCity
- JIRA & Kanban
- Confluence
Our Tech Stack
You can expect to work with:
- Pytorch
- Python
- Modern C++ (17/20)
- Production software targets Windows 10 (plus some Linux software, e.g., for ML training)
- Tools: Git, cmake, Visual C++, TeamCity, JIRA, Confluence, Slack
- Libraries: OpenCV, Ceres, Qt (and quite a few more smaller ones)