Vacancy
Senior Frontend Software Engineer - Analysis Tools Graphcore
1 job requirement
Talent Pools by Score
Maximum Possible Score 4
Score | Candidate Pool Size |
---|---|
4 | 139 |
3 | 0 |
2 | 0 |
1 | 0 |
Grand Total | 139 |
Commute Distance | Candidate Count |
---|---|
Exact | 1 |
50+ miles | 53 |
Unknown | 85 |
Job description
- Job Summary
As a Senior Software Engineer in the Analysis Tools Team you will drive the effort to design and develop profiling tools to help users optimise their applications on single processors and large computing clusters. The ideal candidate will have extensive experience in designing, developing, and maintaining complex software systems involving custom hardware. You will be responsible for leading development efforts, mentoring junior engineers, and driving technical excellence in our projects.
The Team
The Analysis Tools team builds profiling tools to help users optimise their applications for Graphcore hardware. The team is responsible for collecting profiling information from the Graphcore hardware and software, processing the profiling data and presenting the profiling information to the user via command line tools and graphical applications.
Responsibilities and Duties
- Technical leadership on profiling software design.
- Mentoring junior engineers and promoting an environment of continuous learning and improvement.
- Understanding the Graphcore platform, how it can be profiled and how it is presented to the user.
- Design, development and testing of features for profiling.
- Fixing bugs and supporting customers.
Candidate Profile
Essential:
- Experience developing complex data-driven web applications using TypeScript and modern frameworks (ideally React).
- Excellent problem-solving skills and ability to debug and resolve complex issues.
- Strong communication and collaboration skills, with the ability to influence stakeholders and peers.
- Proficiency with version control (Git).
- Experience working in Agile environment and iterative development.
Desirable
- Experience with performance profiling tools.
- Experience developing software solutions using a systems language (C, C++, Rust).
- Understanding of system architecture, memory management, multithreading, and hardware utilisation.
- Experience with relational databases for profiling or data collection.
- Experience with large computing clusters and their performance monitoring ecosystems.
- Knowledge of machine learning frameworks (ideally PyTorch).
- Knowledge of continuous integration/continuous delivery pipelines and build tools.
Benefits
Applicants for this position must hold the right to work in the UK. Unfortunately at this time, we are unable to provide visa sponsorship or support for visa applications