Job Description
At Raspberry Pi, we are proud to foster an environment where those who work with us can do what they love and do it well. By joining Raspberry Pi, you are adding to a lean and passionate team that is dedicated to democratising technology and giving affordable access to computing tools to people across the globe.
You'll join our Software Engineering team, working specifically on the applications that our users run on their own computers, such as Raspberry Pi Imager. Day to day, this means designing, building, and maintaining cross-platform desktop software — writing and reviewing C/C++ code, diagnosing and fixing platform-specific issues across Linux, Windows, and macOS, and packaging and releasing builds for each platform. You'll work with a high degree of independence: we trust our engineers to own problems end-to-end and to make sound technical decisions, while collaborating closely with the rest of the team on design and direction. This is a hands-on engineering role rather than a management one.
This position is based on site at our offices in Cambridge, UK, with a minimum expectation of 80% in- office working. It is a full-time, permanent role.
About Raspberry Pi Founded as a charity in 2008 and selling its first computer in 2012, today Raspberry Pi is two separate organisations in two locations:
- Here at Raspberry Pi Ltd, we build best-selling computers, microcontrollers, and support software for industrial and embedded customers as well as home users worldwide
- The Raspberry Pi Foundation is a charity dedicated to enabling all young people to realise their potential through computing
Key Responsibilities We are looking for someone to perform the following tasks:
- Develop and maintain cross-platform desktop applications, including Raspberry Pi Imager and the Windows and macOS ports of Raspberry Pi Connect.
- Write clean, well tested, maintainable C and C++ across Linux, Windows, and macOS
- Build, package, sign, and release software for multiple platforms (including macOS notarisation and Windows installers).
- Investigate and resolve platform-specific bugs spanning the application, OS, and occasionally lower layers of the stack.
- Contribute to architecture and design decisions, and take part in code review.
- Collaborate with colleagues across firmware, kernel, and applications to deliver vertically integrated features.
Requirements Raspberry Pi values pragmatic, independent thinkers who are comfortable engaging both with external customers and partners and with internal stakeholders at all levels of seniority. We operate a highly collaborative work environment, and the right candidate will need excellent interpersonal and communication skills. In addition, candidates should have:
Essential
- Expert-level C and/or C++, with a strong grasp of modern, safe coding practice
- Experience building and supporting software across more than one of Linux, Windows, and macOS
- Familiarity with the development tools and conventions of those platforms
- Strong problem-solving skills and the ability to work independently and own problems end-to-end
Desirable
- Experience with Qt or a comparable cross-platform application framework
- Familiarity with modern build systems (e.g. CMake, Meson, Bazel) and version control with Git
- Experience with cross-platform packaging, code signing, and release engineering
- Knowledge of networking, and ideally remote-access or WebRTC-style technologies (relevant to Raspberry Pi Connect)
- Experience working across the software stack (firmware/kernel/applications)
- Knowledge of modern vulnerability tracking and documentation
Benefits In addition, we offer the following benefits:
- Employer pension contributions of 8% if the employee contributes 4% of their gross salary into the company salary sacrifice pension plan
- Life assurance of 4 × base salary
- Income protection of 75% of base salary in the event of critical illness, commencing after 13 weeks of long-term illness or absence from work
- Private medical insurance, medical history disregarded
- Access to our Electric Vehicle Salary Sacrifice scheme, subject to eligibility