Join

Myrtle.ai does the engineering to make deep learning a low power, high performance reality today. From world-changing self-driving car projects to reducing the power consumption of the world’s data centers: we strive to use our expertise to transform the world today by making tomorrow’s AI run with unsurpassed efficiency on low power hardware. We’re a team of engineers and scientists with deep technical expertise who love a technical challenge in a friendly collaborative environment.

Your work could make a difference: come and join us and find out how!

OPEN POSITIONS

We’re currently hiring full-time employees and graduate in the roles listed below.

Applicants for any of these positions should send a resume and covering email, clearly stating your suitability for the role and the Job Reference, to jobs@myrtlesoftware.com. Please include any links to blog posts, repositories or any other relevant media which demonstrates your skill set. All roles will be based at our offices in central Cambridge, UK.

    Digital Design Engineer

    Job Ref: SNRFPGA

    Are you the digital design engineer to help us build and improve the next generation of machine learning processing systems? Are you keen to build custom circuits or explore new architectures for efficient machine learning? Do you enjoy new challenges? Are you passionate about growing your knowledge, learning new technologies, and improving your skills? Working at Myrtle offers you a range of challenges – our software stack is polyglot and consists of Haskell, Python, C++, and HDL, and you will use all of them. For this role, you’d have a background in digital electronics, and will integrate with the existing development team of talented engineers.

    Essential

    • MEng in Electronics or related subject (Physics, Computer science, etc).
    • Good ability in digital design (VHDL, Verilog, MyHDL, Chisel, etc).
    • Good knowledge of another programming language.
    • Ability to work well in an interactive development environment.

    Nice-To-Have

    • Timing closure experience.
    • Digital simulation experience (ModelSim etc).
    • Floor-planning experience of large FPGA devices (either Xilinx or Altera).
    • Haskell or other functional programming experience.
    • Experience or an interest in Machine Learning, ideally with deep neural networks.
    • Experience with build tools: Nix package manager, make etc.
    • Experience with Linux, ideally with NixOS, CentOS, or Ubuntu.
    • Scripting experience, for instance bash or python.

    VP of Engineering

    Job Ref: VPSNR

    We are looking for a VP of Engineering/ Senior Functional Programmer to lead a small team of Haskell programmers to improve the current iteration of our software, and also plan and develop its next iteration. You will work with our machine learning experts and circuit design experts to define requirements and take the lead on operational and technical projects.

    Responsibilities

    • Develop high-quality software design and architecture
    • Develop tools and applications by producing clean, efficient well documented code
    • Automate tasks through appropriate tools and scripting
    • Review and debug code
    • Perform validation and verification testing

    Skills & Qualifications

    • Degree in Computer Science, Maths, or a related scientific subject
    • Good understanding of Haskell or another statically typed functional language e.g. ML, OCaml, F#, Elm, etc.
    • Experience in software development and scripting
    • Analytical mind with problem-solving aptitude
    • Ability to work independently
    • Flexibility, interest in technology and eagerness to learn

    Nice-to-Have

    • Familiarity with NixOS or the Nix package manager
    • Knowledge of C/C++/Rust, Linux, kernel drivers, etc.
    • Understanding of digital hardware, FPGAs, VHDL/Verilog, Clash-lang
    • Knowledge of Python, and experience or interest in Machine Learning
    • Familiarity with standard development practices e.g. CI, Git, etc.

    Machine Learning Researcher

    Job Ref: QUANT

    Do you have an enthusiasm for neural network research and development? Do you want to work on state-of-the-art algorithms and hardware? Do you enjoy new challenges? Are you passionate about growing your knowledge, learning new technologies and improving your skills? Your role at Myrtle will involve the design and training of novel algorithms to enable efficient neural network training and inference. You will work with our Chief Scientist to define requirements and take the lead on operational and technical development projects. Your work will help produce the next generation of efficient silicon designs.

    Responsibilities

    • Produce high-quality software that realises existing and original quantization and compression methods
    • Collaborate internally and externally on algorithm development and implementation of machine learning solutions
    • Guide internal teams on state-of-the-art machine learning research and toolkits

    Skills & Qualifications

    • Degree in Maths, Computer Science or a related scientific subject
    • Enthusiasm for, and strong understanding of machine learning and neural nets
    • Knowledge of imperative programming languages e.g. Python, C++
    • Ability to work independently
    • Analytical mind with problem-solving aptitude
    • Flexibility, interest in technology and eagerness to learn
    • Excellent organizational skills

    Nice-To-Have

    • An interest in functional languages e.g. OCaml, Haskell, F#
    • Familiarity with modern parallel architectures eg CUDA
    • Experience with machine learning frameworks e.g. TensorFlow, Caffe, PyTorch
    • Familiarity with various OSs and standard development practises e.g. CI, Git etc.

Internships

Every year we hire post-graduates/ graduates and have paid summer internships. Some of our best people were originally interns with us. It’s a great way for you to find out about us and for us to see if we can help you reach your potential. What is it like joining us this way? In her own words Samantha spills the beans:

“Having previously never done an industry internship, I had no idea what to expect from my summer internship at Myrtle Software. Regardless of whatever my expectations were, they were far exceeded. I had a fantastic time for two main reasons: the opportunity to properly contribute to interesting work, and the welcoming working environment. As an intern I had been initially worried that I would be given boring monkey work. However, this was not the case. I was given tasks that would have been done by the regular employees if I was not there. Additionally, during my time at Myrtle my code was incorporated into the running system, meaning I got the reward of seeing it in action. From weekly Friday trips to the Cambridge food market to working together to defeat the “un-bread” in Overcooked 2 I really loved the sense of camaraderie in the Myrtle office.

Each intern was working on something slightly different depending on their interests. For example, there was one helping on the machine learning side of things, while I got to work with my favourite thing: functional programming! My tasks were well structured in difficulty as I started by parallelising existing code, then progressed to adding new code to the system. I really enjoyed working on a bigger scale project than anything I had done at uni and improving my programming skill as I learned new things from my coworkers. The best part about working for Myrtle was how valued I was made to feel. My code was put into use while I was there and I was even involved in discussions about what next steps would most improve the code base.

Part of feeling valued came from the great working environment. Peter (Founder) and Brian (Commercial Director) make a point of marking company achievements with a celebratory lunch out. Things like office trips to Nando’s really helped me develop friendships with my coworkers.

In the final week of the internship we were properly treated. Everyday at lunchtime an intern would present what they had done over the Summer and this talk would be accompanied by a take out. We had burritos, burgers, sushi, and pizza twice! I loved it. It was the best. I have never eaten so much food in my life. Oh, and I suppose it was also nice to hear about what the other interns did… In all seriousness having the interns give presentations listened to by the rest of the office was yet another way we were made to feel like valuable members of the Myrtle team, providing a fitting end to a fantastic summer.”

David Richardson

Myrtle is an equal opportunity employer. We value diversity at our company and are committed to creating an inclusive environment for all employees, providing equal opportunities to all persons without discrimination. We recognize the excellent benefits in having a diverse workforce from different backgrounds and employ solely on ability.