Software Engineer (Backend & Data processing)

Published: 2024-09-12

Job details

London, UK
On-site
Full-time

About the team

The xAI London team is a team of software engineers with a focus on large-scale, highly-reliable distributed systems. We work on many different levels of the stack ranging from build systems, to production backend infrastructure, and frontend development. For example, we built large parts of the Grok production stack. We focus on building high-quality software and aren’t afraid to delve into technically complex topics to solve problems the right way.

About the role

We’re looking for an experienced and versatile software engineer who can thrive in a dynamic start-up environment. An ideal candidate meets at least the following requirements:

  • Expert in at least one programming language that compiles to machine code such as Rust, C++, or Go. Rust or C++ experience is preferred,
  • Expert in Python and writing Python bindings in a compiled language such as C (using the Python API), C++ (pybind11, SWIG,  CLIF), or Rust (pyo3),
  • Experience in designing reliable and horizontally scalable distributed systems,
  • Experience in API design.

Additionally, experience in any of the following technologies may help a candidate stand out:

  • TypeScript and React or Angular
  • gRPC
  • Kubernetes
  • JAX
  • CUDA
  • MLIR
  • Triton
  • XLA

Location

The role is based in our London office close to Piccadilly Circus underground station. We usually work from the office 5 days a week but allow for work-from-home days when required. Candidates must be willing to attend late meetings at least twice a week to coordinate with the rest of our team, which is based in California. This role includes semi-regular business trips to California.

Interview process

After submitting your application, the team reviews your CV and statement of exceptional work. If your application passes this stage, you will be invited to a 15 minute interview (“phone interview”) during which a member of our team will ask some basic questions. If you clear the initial phone interview, you will enter the main process, which consists of four technical interviews:

  1. Coding interview in Rust, C++ or Go,
  2. Coding interview in Python,
  3. Distributed systems design interview,
  4. Meet the wider team and give a 20 minute presentation about the most difficult technical problems you have solved.

Our goal is to finish the process within one week. We don’t rely on recruiters for assessments. Every application is reviewed by a member of our technical team. All interviews will be conducted via Google Meet.

Benefits

  • Competitive cash-based compensation
  • xAI equity
  • Private health and dental insurance
  • Unlimited time off subject to prior approval

California Consumer Privacy Act (CCPA) Notice

Apply