asymptotic is building a small team of people who are excited about working on problems in low level systems software. If you enjoy working on embedded systems or close to the metal in general, do get in touch!

You can read about what we're looking for, what we work on and how, as well as the hiring process below, but if you're not sure about anything, just reach out.

You can email us at

What we're looking for

If you tick any of these boxes, we'd love to hear from you. Remote applications are absolutely welcome.

  • Working knowledge of C or C++ (Rust is a bonus, but not required)
  • Use(d) a Linux distribution
  • Debugging with gdb
  • Embedded / multimedia software work experience
  • Ability and willingness to learn the above
  • A bachelor's or higher degree in Computer Science or Electronics is useful, but not necessary. We do not attach any weight to the name of the college you went to.

There are positions open at multiple levels, so candidates with and without prior experience are encouraged to apply.

What we do

A lot of the work is with open source multimedia frameworks for dealing with audio and video. This can be running on anything from a Raspberry Pi to a beefy server transcoding content for the web.

The projects you will be involved with to start with are GStreamer and PulseAudio, but you're likely to be delving into ALSA, Wayland, V4L2 and various other places in the Linux system stack.

Most of our code is in C, C++ and Rust (yay!) but we believe in picking the right tool for the job over being dogmatic about language or technology.

How we work

While delivering high quality software is front and centre, that does not come at the cost of burning the candle at both ends or giving 120% all the time. Your average day should leave you feeling satisfied, not tired.

The lack of diversity in technology is a problem. We are particularly keen on hearing from women and underrepresented communities in order to do our part in addressing this.

The process

We don't believe in high-pressure interviews, theoretical puzzle-solving, or questions designed to trip you up. The hiring process is a two-way conversation.

Our first discussion will be about getting to know each other, and will focus on your work and interests. If you have work that can be shared publicly (via Github, for example), we can speak about that too. During this, and later conversations, you can and should bring up any questions you have about the company, your work, and anything else that is on your mind.

If we're both happy with how the first conversation goes, we'll do 1-2 programming exercises. These will not be logic puzzles, but will be designed to validate your knowledge of basic programming and data structures.

The next steps will be a conversation around compensation. Your previous compensation is not a basis for this (we will not ask you about it, but you can share this number if you wish to). This can be an awkward part of the hiring process, so we encourage you to be candid with your thoughts and not hesitate to negotiate.