People Matter

Research Software Engineer - UK - Categorical Deep Learning

Symbolica AI

Symbolica AI

Software Engineering
Posted on Wednesday, May 15, 2024

Note: We are currently prioritising hiring on-site in our offices in London.

At Symbolica, we are building deep learning models which perform structured reasoning: manipulate structured data, learn algebraic structure in it, and do so with an interpretable and verifiable logic. To that end, we are developing new mathematical foundations for deep learning: categorical deep learning. We are now assembling a R&D lab of expert category theory, functional programming and machine learning researchers to develop this theory and apply it to the problems of code synthesis and theorem proving. We are committed to fundamental ideas, but also their execution in practice.

As a Research Software Engineer, you will help us carry out our research & development program. You will work in a multidisciplinary team developing categorical deep learning and implementing, testing and deploying it in practice. This is an opportunity to be part of a transformative project and make significant contributions to the field of applied category theory and machine learning.


  • Help the development of pioneering research projects in categorical deep learning
  • Work closely with category theory and machine learning researchers, bridging the gap between i) state of the art research in deep learning architectures and their structural formulation in category theory; and ii) the implementation of this research in software
  • Stay at the forefront of latest advances in Python and its deep learning frameworks, as well as those in functional programming and programming language theory in general
  • Help us form hypotheses, and validate them experimentally by building the software infrastructure to train and evaluate novel deep learning models
  • Work simultaneously at different levels of abstraction - from higher-level categorical constructions to lower-level details of implementation in code
  • For more senior positions: be involved in team leadership and staff development, as well as design, commission, manage and deliver specific projects

Preferred qualifications:

  • PhD in Mathematics, Computer Science or similar discipline.
  • Industrial or academic work experience post PhD
  • Expertise with functional programming languages (e.g. Haskell, Idris or Scala) and the theory behind them
  • Expertise with Python, and its deep learning frameworks such as JAX, Pytorch, Tensorflow, etc.
  • Experience with category theory, deep learning and/or implementation of neural network architectures
  • Exceptional communication and interpersonal skills.


  • London

We offer competitive compensation, including equity and health insurance. Salary and equity levels are commensurate with experience and location.

Symbolica can offer visa sponsorship.