Embedded Software Engineer
|📅 Start date
|Remote, with occasional company meetings in Bristol (maximum 1x a month)
|Full time, Permanent
About Beam Connectivity
Beam Connectivity is a startup in the mobility space. We work with established and up-and-coming vehicle manufacturers to deliver best-in-class connected vehicle experiences: cars, buses, e-scooters and e-bikes. After a successful first 3 years we are further scaling our software team. Join us at Beam - as an early team member you will play a key role in our growth, while we take a key role in yours.
Improving the world of connected vehicles
The experience that users get with today’s connected solutions is pretty poor - painfully slow, clunky and often insecure. We believe that part of the reason for this is the way those solutions are delivered - outsourced to multiple companies, none of which have a deep understanding, nor the responsibility for the end-to-end system.
Delivering a robust connected solution requires a wide variety of skills. At Beam, we are a truly multi-disciplinary team, covering all the skills required to deliver a first class connected experience. Our flagship product is the Connected Vehicle as a Service platform, or CVaaS. This platform includes: 1) Electronics hardware deployed in a vehicle, 2) Embedded software, 3) Cloud services, 4) Mobile apps. We do all this under one roof, so you’ll be exposed to all this technology at one time or other, which should excite you… not scare you!
Learn more about us at: https://beamconnectivity.com
In addition to our CVaaS platform, we have also embarked on a research project funded by UKRI - the UK Government research and innovation funding body - as part of the UK National Cyber Strategy. This involves working with Arm and leading UK universities on a new code security model implemented in hardware.
Read more about it on our project website here: https://autocheri.tech
Thoughtful technology choices
We use modern software delivery practices to build clean, resilient software. At Beam we are building a single platform, not delivering a series of separate projects. As we are a small team we need to make sustainable technology choices for the long term, understanding and articulating the risks and trade-offs of our design decisions within the team.
As an embedded software engineer you will be focused on building our TCU (Telematics Control Unit) software, which runs on our hardware in clients’ vehicles. We have hardware platforms for different scenarios: 1) prototyping with Raspberry Pis, 2) our bespoke, automotive-grade electronics, 3) our micromobility HW platform (ebikes, scooters). You would be expected to work across all these and so be comfortable writing software to target either.
We are looking for someone who takes pride in writing elegant software; someone who sees code as craft. Strong collaboration between disciplines is a feature of our agile practice, so being able to articulate technical detail at the right level for the audience is important. As you would be working with cutting-edge technology and we can guarantee the work will be challenging, exciting and satisfying.
While the team are always on hand to support, your main resposibilities day-to-day would revolve around these:
- Software prototyping on new hardware platforms.
- Design, implemention and test of embedded software.
- Integration of software and tests into our CI system.
- Working with the hardware team on board bring-up - managing firmware and debug software.
- Contribute to the AutoCHERI project.
These are the primary skills that the job entails.
- Investigative and innovative - able to solve problems, make technical leaps and find solutions.
- Strong C programming and unit testing.
- Cross-platform software compilation and debugging.
- Embedded Linux - kernel build, bash scripting, device trees, debugging.
- Serial Protocols – SPI, I2C, UART.
Nice to have skills
These are disciplines that we are already strong in because they’re part of our core stack. Any experience you have with these would be a bonus, but is by no means a requirement.
- Python skills.
- Neworking and/or wireless comms - cellular, Wi-Fi, Bluetooth.
- CAN devices or other bus protocols.
- Hardware prototyping experience with commodity components - e.g. Raspberry Pi, Arduino.
- DevOps mindset - knowing how and when to automate development and operational tasks.
Get in touch
Please email us at firstname.lastname@example.org if you would like to learn more or apply for the role.
Back to Home