Software Engineer - Low-Level Numerical Computing Expert

Job description


We are looking for a motivated and high-achieving Software Engineer - Low-Level Numerical Computing Expert based in London to join one the team working on our exciting machine learning product. This is a full-time placement with significant opportunities for personal development.

We offer an intellectually stimulating environment, work within an interdisciplinary team and an inclusive culture. We are a high-calibre, mission-driven team building a technology that improves our world.

The Company

causaLens leads causal AI research. Causality is a major step towards developing true AI. Our technology transforms organisations by autonomously discovering valuable insights that optimise business outcomes. Our flagship product, time-series prediction engine, goes beyond both traditional machine learning and AutoML. It has become the industry standard in the financial sector and is increasingly being used in a wide range of industries. causaLens is run by top scientists and engineers, 70% holding a PhD in a quantitative field. For more information visit or contact us on Follow us on LinkedIn and Twitter.

causaLens in the News

    Roles and Responsibilities

  • You will be our in-house expert for low-level numerical computing.
  • The application stack is Python, Cython, Numpy, Scipy, Sklearn, Keras.


  • The opportunity to join a fast-growing, agile, and international team passionate about innovation and making a difference
  • Competitive remuneration
  • Share option scheme
  • Pension scheme
  • 32 days paid holiday allowance (incl. bank holidays)
  • Equipment you need to get the job done (MacBook Pro etc.)
  • Good work-life balance
  • Opportunities for continued learning and self-development, including courses, conferences and book budget
  • Flexible work-from-home and remote days
  • Cycle to work scheme
  • Weekly journal club and knowledge sharing presentations
  • Regular team outings, pizza Thursdays and annual company retreats
  • Fruits, snacks and soft drinks in the office
  • Amazing, smart, fun and inspiring colleagues, always there to support your ideas, growth and enthusiasm


Our interview process consists of an intelligence test, interview and an on-site visit. We will do our best to transparently communicate the process with the successful candidates.

Job requirements

  • Deep understanding of C/C++, numerical algorithms and HPC.
  • PhD with strong experience in numerical computing/simulation is preferred but not necessary.
  • Smart, capable and can write clean code.
  • Ability to design and architect high-performance distributed software.
  • Development experience in at least one scripting language – preferably Python.
  • Interest in machine learning/big data (prior experience plus).
  • Knowledge of the Git version control system.
  • Good organisational skills both in management of time and code.