Embedded Firmware Engineer

ERNI

Valencia

Hybrid

EUR 42,000 - 65,000

Full time

2 days ago
Be an early applicant

Get a reply from this employer

Your resume and cover letter, tailored to exactly what they’re hiring for.

Get past ATS filters

Benefits offered by this job

Private health and travel insurance
Gym discounts
23 vacation days

Job summary

ERNI is seeking an Embedded Firmware Engineer in Valencia to design, develop, and maintain bare-metal firmware for ARM Cortex-M devices. You will work mainly with C/C++ on STM32 or equivalent MCUs, implementing CAN, Modbus, UART, I2C, and SPI interfaces while collaborating with electronics designers.

You’ll read schematics, use test equipment, and contribute to hardware/software decisions. The role requires at least 3 years of embedded firmware experience and English fluency; German is a plus.

Qualifications

  • Bachelor’s degree in Software/Electrical Engineering or related field.
  • At least 3 years of professional embedded firmware development experience.
  • Strong C skills and modern C++ experience (C++14/17) for resource-constrained targets.
  • Hands-on bare-metal experience with ARM Cortex-M, including startup code, linker scripts, interrupt and DMA handling, low-power modes and register-level peripheral setup.

Responsibilities

  • Develop, test and maintain bare-metal firmware in C and C++ for ARM Cortex-M microcontrollers, primarily STM32 and comparable families.
  • Implement and debug communication stacks and drivers for CAN/CANopen, Modbus RTU and TCP, UART, RS-232/RS-485, I²C and SPI.
  • Write low-level drivers for ADCs, DACs, timers, DMA, PWM and interrupt-driven peripherals used to interface with sensors and actuators.
  • Bring up new boards with hardware engineers: review schematics, take measurements and investigate issues where hardware and software do not behave as expected.
  • Contribute to electronics design through component selection, schematic reviews and design-for-test input.
  • Create unit and hardware-in-the-loop tests, document your work and support verification against EMC and safety standards.
  • Investigate field issues with service and production teams, and maintain firmware for products already in the market.
  • Collaborate with physicists, mechanical, electronics and software engineers, including colleagues at international sites.

Skills

Embedded C/C++
ARM Cortex-M
CAN/Modbus/UART/I2C/SPI
Git
Schematic reading
Hardware/software interfacing
English fluent
Lab equipment

Education

Bachelor’s degree in Software/Electrical Engineering or related field

Tools

STM32CubeIDE/CubeMX
HAL/LL drivers
Oscilloscopes/Logic analyzers

Job description

Do you want to work for an International Service Delivery Center in Spain as an Embedded Firmware Engineer?

You will design, develop and maintain the firmware inside these instruments, from initial board bring-up to field-ready products. Working mainly with bare-metal C and C++ on ARM Cortex-M microcontrollers, you will connect sensors, actuators and host systems using protocols such as CAN, Modbus, UART, I²C and SPI.This role sits at the intersection of electronics and software. You will read schematics, use oscilloscopes and logic analyzers, and take ownership of the firmware that helps each product work reliably in the field.

What you will bring
  • Bachelor’s degree in Software/Electrical Engineering or a related field.

  • At least 3 years of professional embedded firmware development experience.

  • Strong C skills and modern C++ experience (C++14/17) for resource-constrained targets.

  • Hands-on bare-metal experience with ARM Cortex-M, including startup code, linker scripts, interrupt and DMA handling, low-power modes and register-level peripheral setup.

  • Practical experience with STMicroelectronics STM32 microcontrollers and STM32CubeIDE/CubeMX, HAL and LL drivers — or comparable ARM microcontrollers from vendors such as NXP, Renesas, Microchip SAM or TI.

  • Working knowledge of serial and fieldbus protocols, including CAN, Modbus, UART/RS-485, I²C and SPI.

  • Confidence using lab equipment such as oscilloscopes, logic analysers, debug probes (ST-LINK, J-Link) and protocol analysers.

  • The ability to read schematics and datasheets and discuss hardware decisions with electronics designers.

  • Experience using Git and a structured, test-minded approach to development.

  • English fluent; German is a plus.

Nice to have:
  • CANopen or other higher-layer protocols, and industrial Ethernet such as EtherCAT or PROFINET.

  • Experience with an RTOS such as FreeRTOS, Zephyr or embOS.

  • Secure bootloaders, signed firmware updates or in-field upgrade mechanisms.

  • Applied control engineering or digital signal processing for sensor data.

  • Analogue or digital circuit design, schematic capture and PCB layout using tools such as Altium or OrCAD.

  • Experience with EMC, CE, ATEX or SEMI S2 requirements.

  • Python for test automation, production test tools or end-of-line testing.

  • CI pipelines, static analysis (MISRA C, clang-tidy) or embedded unit-test frameworks such as Unity and GoogleTest.

  • A background in vacuum technology, semiconductor equipment or measurement instruments.

You will be responsible for
  • Develop, test and maintain bare-metal firmware in C and C++ for ARM Cortex-M microcontrollers, primarily STM32 and comparable families.

  • Implement and debug communication stacks and drivers for CAN/CANopen, Modbus RTU and TCP, UART, RS-232/RS-485, I²C and SPI.

  • Write low-level drivers for ADCs, DACs, timers, DMA, PWM and interrupt-driven peripherals used to interface with sensors and actuators.

  • Bring up new boards with hardware engineers: review schematics, take measurements and investigate issues where hardware and software do not behave as expected.

  • Contribute to electronics design through component selection, schematic reviews and design-for-test input.

  • Create unit and hardware-in-the-loop tests, document your work and support verification against EMC and safety standards.

  • Investigate field issues with service and production teams, and maintain firmware for products already in the market.

  • Collaborate with physicists, mechanical, electronics and software engineers, including colleagues at international sites.

What if the project ends?

We work on a wide variety of projects, technologies, and sectors, allowing you to keep growing in different environments. If a project ends or you feel ready for a new challenge, we’ll find another one that aligns with your professional development.

Our working model

We ask you to be available for key meetings. Need to leave for a doctor’s appointment or to pick up your child from school? No problem. We trust you to deliver quality work within your 40-hour workweek.

Our model is hybrid: we usually go to the office 2 days a week, but we love seeing each other's faces; the best stories always happen in the office!

You will also enjoy:

We cover your certifications and reward technical achievements up to €1,400.

Private health and travel insurance.

Full coverage for sick leave + 1 extra day off per month without medical leave.

Free emotional, legal, and family support.

Gym discounts + sports compensation.

Flexible remuneration: meals, transport, childcare, etc.

Referral bonuses: up to €6,000 per candidate and €5,000 per client.

23 working days of vacation.

Free language courses: English, Spanish, Catalan and German.

And the salary?

We will discuss it during the first call. If it is important to you, feel free to ask!

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior C++ Software Architect - MedTech
Senior C++ Software Architect - MedTech

ERNI • Barcelona

Hybrid
EUR 80,000 - 120,000
Certifications reimbursement up to €1,
Senior C++ Software Architect - MedTech
Senior C++ Software Architect - MedTech

ERNI • Cataluña

Hybrid
EUR 90,000 - 120,000
Private health insurance
Certification coverage up to €1,500
Sick leave coverage
+6
Senior C++ Architect - MedTech
Senior C++ Architect - MedTech

ERNI • Cataluña

Hybrid
EUR 70,000 - 110,000
Private health insurance
Sick leave coverage
Emotional, legal & family support
+7
Senior Firmware Engineer
Senior Firmware Engineer

Hireroo Ltd • Barcelona

Hybrid
EUR 90,000 - 130,000
Flexible working hours
Hybrid model
Relocation bonus
+5
Lead Software Engineer / Technical Lead – Fullstack & Architecture
Lead Software Engineer / Technical Lead – Fullstack & Architecture

Erni • Barcelona

Hybrid
EUR 90,000 - 130,000
Certifications reimbursement up to €1,
Private health insurance
Full coverage for sick leave
+4
Lead Software Engineer / Technical Lead – Fullstack & Architecture
Lead Software Engineer / Technical Lead – Fullstack & Architecture

ERNI • Cataluña

Hybrid
EUR 70,000 - 95,000
Certification support up to €1,500
Private health insurance
Sick leave covered
+7
Senior C++ Architect - MedTech
Senior C++ Architect - MedTech

ERNI Schweiz AG • Bellprat

Hybrid
EUR 70,000 - 100,000
Embedded Software Engineer
Embedded Software Engineer

Idneo • Mollet del Vallès

On-site
EUR 42,000 - 64,000
Software Technical Lead - Node.js - React - Robotics
Software Technical Lead - Node.js - React - Robotics

ERNI • Barcelona

Hybrid
EUR 90,000 - 130,000
Certifications coverage
Private health insurance
Sick leave coverage
+6
Software Technical Lead - Node.js - React - Robotics
Software Technical Lead - Node.js - React - Robotics

ERNI Spain • Barcelona

Hybrid
EUR 90,000 - 120,000
Certifications covered
Private health insurance
Sick leave coverage
+6