Why work for us?

We are a hardware and software design agency based in London; we are small and nimble, but ambitious! Our customers are startups and SMEs with innovative ideas and brilliant projects in VR, building management, law enforcement, wearable technology and more. Our business model has allowed us to start and grow without the need to raise funding, and we are now hiring. As a young company, we avoid office politics, long meetings and the overhead of complexity, giving you more time to get on with the more fun part of the job. We love what we do, and we want you to love it too.

Role: Embedded C Developer

About the role

We are seeking an Embedded Software Engineer to join a close-knit team. You will work closely with our Hardware Team, writing software to run on our custom PCBs, fulfilling the brief set by our clients. Elimo's small size offers the successful candidate the opportunity to grow within the role, progressing from working on subsystems to leading the development of an entire project as quickly as appropriate whilst safeguarding the highest standards of client service. There has never been a more exciting time to join us, we are growing fast and looking for bright, ambitious people to join us as we enter the next stage of development.

What you will be doing

  • Developing embedded software for custom PCBs
  • Implementing and working with communication protocols such as I2C,SPI, USB, UART
  • Performing optimisation for power consumption or performance
  • Reviewing other people’s code
  • Participating in the design as a whole, giving your opinion in matters of hardware and system design
  • Contributing to project estimates about costing and timelines

What you will need

  • Solid experience writing embedded C code for SoCs, e.g. Nordic Semiconductors, Espressif, Silicon Labs. This is the core of the role.
  • Be at ease with developing for RTOS designs, e.g. FreeRTOS or Zephyr
  • A practical approach to debugging code in embedded environments - JTAG/SWD, the ins and outs of debug logging, using an oscilloscope, a logic analyser etc
  • Familiarity with embedded system protocols and interfaces: Bluetooth/BLE, WiFi, SPI, I2C, UART and their friends
  • Previous exposure to the tools of the trade: git, configuring and using cross-compilation toolchains…
  • Awareness of electronics design for an embedded engineer: you don’t need to create schematics and PCB layout, but you do need to be able to read them!
  • A zen acceptance of the fact that some embedded work is best done in Linux, some in Windows. We all play favourites, but no hard feelings if you have to switch teams for a project!

Extras that might help

We’re still a small team, so you will be able to play with plenty of different things - you do get extra brownie points for curiosity, a sensibility for original solutions, and any experience with or desire to learn:

  • Python development, specifically for automation and testing
  • Linux based designs - Buildroot, OpenWRT, a healthy respect and moderate of fear of the kernel
  • Cloud based IoT platforms, OTA updates, pub/sub messaging
  • Docker, Vagrant and friends
  • MATLAB or, if you’re the open source type, Octave
  • Signal processing, digital filter design and anything that has the word “Fourier” in it
  • AI/Machine learning
  • Facing the scary customer and generally contributing to the development of the business

The details

Perks

  • A no-nonsense, slightly nerdy, entrepreneurial culture.
  • Remote first. We have an office/lab in Bermondsey and you will need to attend when projects demand it, but it’s rarely a necessity.
  • Flexible schedule. Some of us are night owls, some are early birds. We understand that.
  • Periodic workshops to focus on new topics and gain new knowledge.

Job Type

We offer full-time, permanent employment. We are open to different arrangements if that’s not what you’re looking for.

Salary

We expect to make an offer in the range £32-40k depending on experience for a full-time permanent position.