6 Month initial contract 3 days onsite, 2 remote Inside IR35 The ideal candidate will have experience and expertise in both GPU compute programming and systems development (library development, performance/memory optimizations) using modern C++. The prospective candidate will work on and grow in both directions. This position will require the candidate to work closely with researchers and engineers to enable and accelerate new research efforts for on-device AI. LLVM experience will be a plus. Role and Responsibilities As an AI Software Engineer, you will: •Develop features and functionality across the AI stack – from framework to applications for on-device execution •Propose and prototype innovative ideas/solutions while considering real-world constraints •Incorporate software engineering practices and contribute to software architecture planning •Stay informed about state-of-the-art tools, techniques, and frameworks for AI •Take technical responsibility for one or more significant sections of the assigned project •Translate complex functional and technical requirements into detailed designs Skills and Qualifications Required Skills •Bachelor's or higher degree in Computer Science/Engineering or related disciplines •Professional software development experience with modern C++ •Experience with GPU compute in CUDA/OpenCL •Knowledge of linear algebra equivalent to at least first-year university level •Strong computer science and engineering fundamentals (e.g., OS, Compiler) •Familiarity with software engineering practices and tools such as Git, CI, Agile, package managers, etc. •Excellent communication, teamwork, problem-solving skills, and a results-oriented attitude Desirable Skills •Knowledge of computer vision fundamentals •LLVM compiler experience •Experience with commercial/production AI •Experience in Python/Java/Kotlin