C++ Engineer / Remote (UK) or Hybrid (Edinburgh)
Full job description
Profile 29
Salary: £60,000 – £108,000 per year
Job: C++ Engineer / Remote (UK) or Hybrid (Edinburgh)
This software company is a world pioneer in enabling acceleration technologies used in AI, HPC and automotive. They were established in 2002 in Edinburgh, Scotland and developed some of the first tools enabling complex software to be accelerated using graphics processors. Today, most AI software is developed using graphics processors designed for video games, and more recently specialised AI and computer vision accelerators.
They continue to work with global technology leaders to make the latest complex AI systems programmable using open standards-based programming languages and allows application developers to quickly bring software to the market. They are also deeply involved with the definition of open standards, especially OpenCL, SPIR, SYCL, and Vulkan through The Khronos Group, and MISRA C++ for automotive.
The Role;
Their C++ Engineers have the opportunity to work on implementing a range of programming models from SYCL for heterogeneous C++ to the widely portable OpenCL. Their products design and documentation let customer teams use their driver development kit to provide mature and efficient implementations for a wide range of parallel hardware. Their engineers are also strong contributors to the standards they implement, particularly in the area of heterogeneous programming models, and C++ engineers get the opportunity to propose and work on extensions and changes to these standards.
Their engineering teams are strongly collaborative, and you’ll spend some of your time working with other engineers on the design of complex features and participating in design and code-reviews. This provides opportunities to both learn from and share your own experience with their team. Their products are all modern C++ code bases with a strong emphasis on quality, maintainability, and testability. As one of their C++ engineers you will be expected to contribute to these code bases and to help with the continued effort to raise the bar on their quality and capabilities. As a runtime engineer you will have a strong influence on the direction and design of both the company’s products and open standards for heterogeneous computing.
Required Skills;
- Good working knowledge of modern C++
- Develop correct, fast and scalable multithreaded and parallel programs
- Ability to develop robust, maintainable, efficient and testable code for secure and reliable systems
- Experience creating test suites for new or changing APIs
- Working knowledge of debuggers, and ability to debug code effectively
- Minimise memory footprints, data movements, allocations and de-allocations
- Craft cross-platform (Various Linux flavours, Windows) solutions
- Profile and optimise performance and memory system usage
Beneficial (Nice to Have) Skills;
- Experience with GPU programming models (such as OpenCL, SYCL, CUDA, etc)
- Experience working on a parallel or heterogeneous language runtimes.
- Experience working with programming language or language runtime specifications
- Experience working on graphics APIs (such as Vulkan or DirectX12) or shading languages (such as HLSL or GLSL)
- Knowledge of SPIR-V intermediate language.
- Understanding of multi-core and NUMA architectures
- Knowledge of the Clang/LLVM projects
- Experience with low-level language implementation concepts such as object file formats or assembly language
- Experience with continuous Integration systems and best practices
- Experience with OS-level and/or driver development
Other Stuff;
- £’s; fully DoE approx. £50k-£90k depending on your level of experience,
- Benefits; flexible working hours, pension scheme offering 7% employer contributions, full pay whilst on maternity/partner or shared parental leave, private healthcare insurance, free confidential counselling service, frequent company social events, childcare voucher scheme (for existing members only), Bike2Work scheme, season ticket loans,
- Location; your choice – either fully remote, based from their Edinburgh offices, or a hybrid blend of the two.
- How to get to them; a 15 mins walk from Edinburgh Waverley train station,
NB: for non-UK Citizens: we cannot accept applications from anyone requiring sponsorship (now or in the future) for UK permanent employment status. If you are using a work visa this must allow you to work in the UK unrestricted for at least the next 5 years.
In accordance with GDPR by applying you give Profile 29 consent to use your data for recruitment purposes only (details of Profile 29’s privacy policy can be found at: profile-29.com/privacy)
Profile 29 recruitment keywords; C++ developer C++ engineer C++ programmer Edinburgh Scotland hybrid remote work from home GPU OpenCL SYCL CUDA heterogeneous language runtimes runtime graphics APIs API Vulkan DirectX12 HLSL GLSL SPIR-VNUMA Clang LLVM
To apply for this job please visit definitejobs.co.uk.