At a Glance
- Tasks: Design and optimise GPU kernels for cutting-edge AI models.
- Company: Join Symbolica, an innovative AI lab merging mathematics with technology.
- Benefits: Enjoy competitive pay, equity options, and a vibrant office culture.
- Why this job: Be part of a mission to redefine AI and tackle complex challenges.
- Qualifications: Strong programming skills in C/C++/Rust and GPU experience required.
- Other info: This is an onsite role in London, fostering diversity and inclusion.
The predicted salary is between 43200 - 72000 £ per year.
Symbolica is an AI research lab pioneering the application of category theory to enable logical reasoning in machines. We’re a well-resourced, nimble team of experts on a mission to bridge the gap between theoretical mathematics and cutting-edge technologies, creating symbolic reasoning models that think like humans – precise, logical, and interpretable. Our approach combines rigorous research with fast-paced, results-driven execution. We’re reimagining the very foundations of intelligence while simultaneously developing product-focused machine learning models in a tight feedback loop, where research fuels application. Founded in 2022, we’ve raised over $30M from leading Silicon Valley investors to push the boundaries of applying formal mathematics and logic to machine learning. Our vision is to create AI systems that transform industries, empowering machines to solve humanity’s most complex challenges with precision and insight. Join us to redefine the future of AI by turning groundbreaking ideas into reality.
About the role
As a Founding GPU & Compiler Software Engineer at Symbolica, you will specialize in the design, development, and optimization of GPU kernels and algorithms to support the training and inference of symbolic reasoning models. You will leverage frameworks like CUDA and CUTLASS, along with compiler optimization techniques, to push the boundaries of performance for high-dimensional computation.
Your focus
- Developing and optimizing GPU kernels for high-performance symbolic reasoning and numerical algorithms using CUDA.
- Designing and implementing domain-specific compiler optimizations for GPU acceleration, ensuring efficient transformation and execution of symbolic computation workloads.
- Collaborating with mathematicians and researchers to design highly efficient implementations of complex algorithms.
- Analyzing and optimizing GPU performance, focusing on memory management, thread utilization, compiler-generated optimizations, and computation throughput.
- Building and maintaining scalable, reusable GPU-accelerated libraries tailored for symbolic reasoning workloads.
- Profiling and benchmarking kernel performance, identifying compiler inefficiencies, and implementing solutions for maximum efficiency.
About you
- Strong proficiency in at least one high-performance programming language (C, C++, Rust, Haskell, or Julia) and familiarity with Python.
- Proficiency in GPU programming with CUDA, including experience with kernel development, compiler optimizations, and performance tuning.
- In-depth knowledge of GPU architecture, including memory hierarchies, thread blocks, warps, and scheduling.
- Experience with compiler development, LLVM/MLIR, or domain-specific language (DSL) optimizations.
- Familiarity with tensor operations and matrix multiplications is a plus.
- Proven optimizing numerical algorithms for high-performance computing environments.
- Familiarity with LSP (Language Server Protocol) and a background in linear algebra, symbolic computation, or related mathematical fields are strong pluses.
We offer competitive compensation, including an attractive equity package, with salary and equity levels aligned to your experience and expertise. This is an onsite role based in our London office (66 City Rd). Symbolica is an equal opportunities employer. We celebrate diversity and are committed to creating an inclusive environment for all employees, regardless of race, gender, age, religion, disability, or sexual orientation.
GPU & Compiler Software Engineer London, UK employer: Symbolica
Contact Detail:
Symbolica Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land GPU & Compiler Software Engineer London, UK
✨Tip Number 1
Familiarise yourself with the latest advancements in GPU programming and compiler optimisations. Being well-versed in CUDA and frameworks like CUTLASS will not only boost your confidence but also demonstrate your commitment to the role.
✨Tip Number 2
Engage with the AI and machine learning community through forums, webinars, or local meetups. Networking with professionals in the field can provide insights into the latest trends and potentially lead to valuable connections at Symbolica.
✨Tip Number 3
Prepare to discuss your experience with high-performance programming languages and numerical algorithms in detail. Be ready to share specific examples of how you've optimised performance in past projects, as this will showcase your practical skills.
✨Tip Number 4
Research Symbolica's mission and recent projects thoroughly. Understanding their approach to combining theoretical mathematics with AI will help you align your answers during discussions and show that you're genuinely interested in contributing to their vision.
We think you need these skills to ace GPU & Compiler Software Engineer London, UK
Some tips for your application 🫡
Tailor Your CV: Make sure your CV highlights your experience with GPU programming, CUDA, and any relevant high-performance programming languages. Emphasise your familiarity with compiler optimisations and numerical algorithms, as these are key aspects of the role.
Craft a Compelling Cover Letter: In your cover letter, express your passion for AI and how your skills align with Symbolica's mission. Mention specific projects or experiences that demonstrate your expertise in GPU kernel development and collaboration with researchers.
Showcase Relevant Projects: If you have worked on projects involving symbolic reasoning models or high-dimensional computation, be sure to include these in your application. Detail your contributions and the impact of your work to illustrate your capabilities.
Highlight Your Problem-Solving Skills: In your application, provide examples of how you've tackled performance issues in GPU programming or compiler optimisations. This will showcase your analytical skills and ability to improve efficiency, which is crucial for this role.
How to prepare for a job interview at Symbolica
✨Showcase Your Technical Skills
Be prepared to discuss your proficiency in high-performance programming languages like C, C++, or Rust. Highlight any relevant projects where you've developed GPU kernels or optimised algorithms, as this will demonstrate your hands-on experience.
✨Understand Symbolic Reasoning
Familiarise yourself with the concepts of symbolic reasoning and how they differ from traditional machine learning approaches. Being able to articulate your understanding of these principles will show your alignment with Symbolica's mission.
✨Prepare for Problem-Solving Questions
Expect technical questions that assess your problem-solving abilities, particularly in GPU programming and compiler optimisations. Practice explaining your thought process clearly, as communication is key when collaborating with mathematicians and researchers.
✨Demonstrate a Collaborative Mindset
Since the role involves working closely with a team, be ready to discuss your experiences in collaborative environments. Share examples of how you've successfully worked with others to achieve common goals, especially in high-performance computing contexts.