At a Glance
- Tasks: Join our team to develop and debug embedded software for exciting projects.
- Company: Bermondsey Electronics, a dynamic contract electronics development company.
- Benefits: Enjoy flexitime, remote work options, and 25 days of vacation.
- Why this job: Perfect for hands-on problem solvers eager to work with cutting-edge technology.
- Qualifications: Experience in embedded C programming and a passion for hardware.
- Other info: Great opportunity for graduates or early-career engineers looking to grow.
The predicted salary is between 34000 - 46000 £ per year.
Bermondsey Electronics is a contract electronics development company looking for an embedded software developer to expand the team. The successful applicant will work on a wide variety of systems, with different targets and design goals, based from the office in Bermondsey. This role is also open to motivated graduates or early-career engineers who have a good understanding of embedded C and are keen to develop their skills quickly.
We need a new engineer to be involved in peripheral and board bring-up. This means testing PCBs coming in from clients. Clients have occasionally tested boards but not always, and usually not fully. Our job is to prove the board fundamentally works, and develop or debug drivers as necessary. Higher level application code is usually done by those specialists and is not expected to be a fundamental part of this role.
In the last year, this has meant working with STM32, DA****x, NXP iMX RT and RW6xx platforms, iMX 8M Plus and Nano. Software platforms range from bare metal to FreeRTOS to Zephyr, through Linux and all the way up to Android. At each stage, clients have either not been able to supply drivers, or a delivery from a supplier has had to be debugged or modified. With that done, the PCB is handed off to application developers, or the client will issue us another board to repeat the cycle.
Suppliers usually deliver drivers in C. These are often of unknown quality. They may need configuration, and sometimes a device tree. As examples:
- We ported TI's CC**** driver to STM32 and brought up lwIP on FreeRTOS.
- We brought up a new iMX8MP Linux platform using LVDS and a bespoke RFID driver.
- We rewrote an ESP32 bootloader for a client to update partition tables OTA.
- We tested and verified RW610 power modes in Zephyr.
- We rewrote the STM32 Eclipse ThreadX USB Audio Host driver to support USB MIDI.
- We debugged an Infineon WiFi driver low power mode on Android on iMX8MP.
Typically LLMs do not have enough training data to help. They usually cannot work out schematic errors, or spot placement issues on a board. If you use LLMs heavily, you are unlikely to find them as useful in this role. It can mean writing and/or debugging drivers like SPI, DAC or LVDS. Typically test and measurement gear is needed, e.g. logic analyser, scope, bench power supply etc. There can be a lot of time configuring demo code to run in the mode the client requires, perhaps on a different target. When the code is running, we may need to capture signal traces to diagnose the fault. When we have the fault, we might need to change the code or the hardware, or both, for the client feature to work.
This role requires a practical, hands-on approach. Candidates are expected to actively write, debug, and test code, work directly with hardware, and spend time investigating issues in depth. Applicants who are not prepared to engage directly with low-level code, testing, and debugging, or who rely primarily on automated tools without deeper understanding, are unlikely to find this role suitable.
Please note this role is not to develop hardware. Clients supply us boards to bring up. If you want to design PCBs from scratch, this is not the job for you. If you enjoy bringing up software stacks on new hardware, this is the job for you.
Any knowledge of embedded OS is an advantage (FreeRTOS, Zephyr, Linux/Android, ThreadX). Ability with a soldering iron is useful. Familiarity with automated testing is useful but not required (e.g. hardware-in-the-loop). If you thrive in responsive, hands-on work and enjoy solving difficult problems efficiently, this could be the right role for you.
Candidates must already have unrestricted permission to work in the UK. We CANNOT provide visa sponsorship, cannot extend visas, and cannot consider candidates whose right to work is time-limited or dependent on future sponsorship, including Graduate visas. Please do not apply if you require visa sponsorship now or at any point in the future.
Candidates must know embedded C programming and any one of the following:
- Embedded Linux e.g. Yocto or Buildroot build system
- Python
- Android build system
- Networking and communication protocols
- ISO***** / IEC*****.
The ideal candidate will also have some familiarity with:
- Embedded OS use
- Power optimisation
- Makefiles / build configuration systems
- Basic soldering
- Unit testing
40 hours of full-time effort are expected every week. Remote working is offered, although 2 days per week on site are required. Flexitime is offered as standard, although all hours must be accountable. 25 days' vacation are offered, growing with tenure.
Job Types: Full-time, Permanent
Pay (Based on experience): £40,***** - £55,****** per year
Benefits: Flexitime, Sick pay, Work from home
Schedule: 8 hour shift, Flexitime, Overtime
Education: Diploma of Higher Education (preferred)
Experience: C Programming: 1 year (preferred), Software engineering: 1 year (required)
Right to work in the UK – important reminder: Applications from candidates who do not already have unrestricted UK work authorisation will not be considered.
Work Location: Hybrid remote in London SE1 with 2 days per week on site near London Bridge.
Low Level Firmware Engineer in England employer: Bermondsey Electronics Ltd.
Contact Detail:
Bermondsey Electronics Ltd. Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Low Level Firmware Engineer in England
✨Tip Number 1
Get hands-on! When you’re in the interview, show off your practical skills. Bring examples of projects you've worked on, especially those involving embedded C or hardware debugging. We want to see how you tackle real-world problems!
✨Tip Number 2
Network like a pro! Connect with current employees at Bermondsey Electronics on LinkedIn or attend industry meetups. A friendly chat can sometimes lead to insider tips or even a referral. We all know it’s not just what you know, but who you know!
✨Tip Number 3
Prepare for technical questions! Brush up on your knowledge of embedded systems and be ready to discuss specific platforms like STM32 or iMX. We love candidates who can dive deep into technical discussions and demonstrate their understanding.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining our team. Don’t miss out on this opportunity!
We think you need these skills to ace Low Level Firmware Engineer in England
Some tips for your application 🫡
Show Your Passion for Embedded Systems: When writing your application, let us see your enthusiasm for embedded systems! Share any personal projects or experiences that highlight your hands-on skills with code and hardware. We love seeing candidates who are genuinely excited about the tech they work with.
Tailor Your CV to the Role: Make sure your CV reflects the specific skills and experiences mentioned in the job description. Highlight your knowledge of embedded C, any relevant platforms you've worked with, and your practical experience. This helps us see how you fit into our team right away!
Be Clear About Your Experience: Don’t be shy about your experience level! Whether you're a motivated graduate or an early-career engineer, clearly outline what you've done so far. If you've worked on debugging drivers or testing PCBs, let us know – we want to hear about it!
Apply Through Our Website: We encourage you to apply through our website for a smoother process. It’s the best way for us to receive your application and ensures you don’t miss out on any important updates. Plus, it shows us you’re keen to join our team!
How to prepare for a job interview at Bermondsey Electronics Ltd.
✨Know Your Embedded C Inside Out
Make sure you brush up on your embedded C skills before the interview. Be ready to discuss specific projects where you've used embedded C, and be prepared to solve coding problems on the spot. This will show that you’re not just familiar with the language but can also apply it practically.
✨Familiarise Yourself with Relevant Platforms
Since the role involves working with various platforms like STM32 and NXP iMX, do some research on these systems. Understand their architecture and common issues that arise. Being able to talk about your experience or knowledge of these platforms will definitely impress the interviewers.
✨Hands-On Experience is Key
Be ready to share examples of your hands-on work with hardware and low-level code. If you’ve debugged drivers or worked on PCB bring-up, highlight those experiences. The interviewers want to see that you can engage directly with the hardware and tackle real-world problems.
✨Prepare for Practical Tests
Don’t be surprised if you're asked to complete a practical test during the interview. Brush up on your debugging skills and be ready to demonstrate how you would approach a problem with code or hardware. Practising with test and measurement gear beforehand could give you an edge.