Currículum de ingeniero/a de software embebido: ejemplos y guía para redactarlo

Un currículum de ingeniero/a de software embebido consigue una llamada cuando la primera media página nombra el silicio con el que has sacado productos (Cortex-M, i.MX, ESP32), el lenguaje y el RTOS con los que programas, los buses que depuras (I2C, SPI, CAN, BLE) y una cifra por puesto: flash ahorrada, tiempo de arranque reducido o unidades vendidas. Todo lo demás es detalle de apoyo.

Por cvplex Careers Team· Revisado por József Dorcsinecz, fundador· Actualizado el

Ejemplo de currículum de ingeniero/a de software embebido (C, FreeRTOS, Cortex-M)

Este es un ingeniero de firmware de nivel medio-sénior con ocho años en productos industriales y de control de movimiento. La persona es ficticia, pero la forma del currículum es la que esperan los responsables de firmware: una página de detalle técnico denso, el hardware nombrado y cifras asociadas a memoria, tiempos y defectos.

Rubén Sáez Montero

Ingeniero de software embebido sénior

Zaragoza · ruben.saez@ejemplo.es | 612 345 678 | linkedin.com/in/ruben-saez-ejemplo | github.com/rsaez-fw-ejemplo

Perfil

Ingeniero de software embebido con ocho años de experiencia escribiendo C y C++ de producción para dispositivos ARM Cortex-M. Desarrolla firmware bare-metal y FreeRTOS para sensores industriales y servoaccionamientos, desde la revisión de esquemáticos y el bring-up de placas hasta el cumplimiento de MISRA C y las actualizaciones en campo. Redujo el tiempo de arranque de un producto de 1,9 s a 340 ms y encajó una nueva pila de protocolos en los 24 KB de flash que quedaban libres.

Experiencia

Ingeniero de software embebido sénior · Fabricante de sensores industriales, Zaragoza

03/2023 – actualidad

  • Desarrollé y mantuve el firmware de una gama de transmisores de proceso de 4 sensores sobre STM32L4 con FreeRTOS; unas 62.000 unidades vendidas desde el lanzamiento en 2023 sin ninguna devolución en campo causada por el firmware.
  • Reescribí en C99 la ruta de muestreo de los sensores y pasé el CRC al periférico hardware, con lo que el arranque bajó de 1,9 s a 340 ms y se liberaron 11 KB de flash en un micro de 256 KB en total.
  • Puse en marcha tres nuevas revisiones de PCB con el equipo de hardware: escribí los drivers de bajo nivel de un ADC de 24 bits por SPI, detecté con analizador lógico y osciloscopio un problema de rebote de masa de 40 mV en la revisión B y llevé la revisión C a producción en seis semanas.
  • Añadí tests unitarios con Unity y CMock y un banco hardware-in-the-loop a GitLab CI; la cobertura de la capa de aplicación pasó del 0 al 71 % y los defectos escapados por versión bajaron de 9 a 2.
  • Llevé el código al cumplimiento de las reglas obligatorias y requeridas de MISRA C:2012 para una auditoría de seguridad funcional, y cerré 480 hallazgos del análisis estático en dos trimestres.

Ingeniero de software embebido · Proveedor de servoaccionamientos, Barcelona

06/2020 – 03/2023

  • Escribí las pilas CANopen y Modbus RTU de una familia de servoaccionamientos de 400 W a 3 kW; la capa CAN mantuvo un bus de 1 Mbps con 12 nodos sin tramas perdidas en una prueba de resistencia de 72 horas.
  • Implementé un bootloader con imágenes de firmware firmadas y vuelta atrás A/B, que permitió a los técnicos de campo actualizar 2.100 accionamientos instalados sin visita de servicio.
  • Reduje el jitter del lazo de control de 90 µs a menos de 12 µs pasando el lazo de corriente a una ruta DMA disparada por temporizador y midiendo con un pin GPIO y osciloscopio.
  • Depuré un fallo en las instalaciones de un cliente que aparecía una vez cada 4 o 5 días: lo atribuí a un acceso a una struct no alineada dentro de una ISR con el buffer de traza JTAG, y entregué la corrección en 9 días.

Ingeniero de firmware junior · Ingeniería de diseño electrónico por encargo, Barcelona

07/2018 – 06/2020

  • Desarrollé el firmware de 6 proyectos de clientes sobre Nordic nRF52 y Microchip PIC24, entre ellos un medidor portátil BLE con un objetivo de 14 meses de batería con pila de botón que en las pruebas alcanzó 16 meses.
  • Reduje el consumo medio de un producto a batería de 41 µA a 9 µA corrigiendo un periférico que se quedaba activo en reposo y pasando el registro de datos a un despertar a 1 Hz.
  • Escribí scripts de prueba en Python que controlaban el equipo por consola serie y redujeron el tiempo de prueba manual de producción por unidad de 6 minutos a 90 segundos.

Formación

Grado en Ingeniería Informática (mención en Ingeniería de Computadores)
Escuela de ingeniería de una universidad pública, Valencia, 2018

Certificaciones

  • Curso de Functional Safety Engineer con certificación TÜV (IEC 61508), 2024
  • Certified LabVIEW Associate Developer (CLAD), National Instruments, 2019 (vigente)

Habilidades

C (C99, C11), C++17, PythonARM Cortex-M0+/M4/M7, STM32, Nordic nRF52, NXP i.MX RT, ESP32FreeRTOS, Zephyr, súper bucle bare-metalI2C, SPI, UART, CAN / CANopen, Modbus RTU, USB, BLELinux embebido, drivers de dispositivo, Yocto, BuildrootJTAG/SWD, Segger J-Link, Ozone, analizador lógico, osciloscopioUnity, CMock, Ceedling, bancos de prueba hardware-in-the-loopMISRA C:2012, análisis estático (Cppcheck, PC-lint), revisión de códigoGit, GitLab CI, CMake, Make, GCC arm-none-eabiLectura de esquemáticos y datasheets, DMA, diseño de bajo consumo
Ejemplo ficticio. Los nombres, empleadores y cifras son orientativos.Usar este ejemplo en el editor →
Pon la lista de componentes en el perfil profesional o en una franja de competencias arriba, no escondida en la segunda página. Quienes hacen el primer filtro de puestos de firmware suelen buscar en el texto del currículum una familia concreta (STM32, i.MX, TI C2000) antes de que una persona lea una sola palabra.

Lo primero que mira quien contrata en firmware

Los equipos de embebido son pequeños y cada persona que entra tiene que tocar hardware. El filtro es rápido y se centra en cuatro cosas.

  • Coincidencia de silicio y toolchain. ¿Has programado para la familia que usan, o para algo tan parecido que lo único nuevo sería el datasheet? Nombra arquitecturas y familias de componentes, no solo «microcontroladores».
  • Si has sacado productos al mercado. Las placas de afición y los trabajos de clase sirven para un primer empleo, pero por encima de junior quieren un producto que llegó a fabricación, con un número de unidades o un tipo de cliente.
  • Capacidad de depuración. Di cómo encontraste un bug, no solo que lo arreglaste. Osciloscopio, analizador lógico, traza JTAG, printf por UART, un bisect a través de 300 commits: el método es la señal.
  • Las restricciones con las que has trabajado. Presupuestos de flash y RAM, consumo, latencia de interrupciones, plazos de tiempo real, normas de seguridad. El firmware es ingeniería con límites, así que los límites tienen que estar en la página.

“Un chip nuevo lo puedo enseñar en un mes. Lo que no puedo enseñar rápido es a pensar en microsegundos y en bytes. Por eso leo buscando restricciones. Si un currículum me dice que encajaste una pila en 24 KB o que mantuviste un lazo de control por debajo de 20 microsegundos de jitter, pasas a la entrevista telefónica aunque nunca hayas tocado nuestro componente.”

Panel de reclutadores, Responsable de contratación de sistemas embebidos y firmware, EE. UU. (nombre publicado tras la revisión)

Ejemplos de perfil profesional para ingeniero/a de software embebido

Tres o cuatro líneas arriba del todo. Años, familia de arquitectura, RTOS o bare-metal, sector y una cifra. Olvídate del objetivo profesional salvo que acabes de terminar los estudios o cambies de sector.

Nivel medio, industrial
Ingeniero de software embebido con 6 años de experiencia en C de producción sobre ARM Cortex-M4 y M7. Desarrolla aplicaciones FreeRTOS y drivers de bajo nivel para sensores industriales, desde el bring-up de la placa hasta las actualizaciones firmadas en campo. Redujo un 18 % el tamaño del firmware en un micro con poca memoria y ha cumplido el calendario en las 7 últimas versiones.
Automoción / seguridad funcional
Ingeniera de firmware con 9 años de experiencia en ECU de automoción, 4 de ellos bajo ISO 26262 hasta ASIL B. Domina AUTOSAR Classic, CAN, diagnóstico UDS y MISRA C:2012. Cerró más de 900 hallazgos de análisis estático en dos programas y participó en tres auditorías de seguridad a proveedores superadas con éxito.
Linux embebido
Ingeniero de software embebido con 5 años de experiencia en sistemas Linux para NXP i.MX y Raspberry Pi CM4. Escribe drivers de kernel, overlays de device tree y capas Yocto, y es responsable de la cadena de actualización OTA. Redujo la imagen en 340 MB y el tiempo hasta la aplicación de 22 s a 6 s en un producto comercializado.
Inalámbrico / bajo consumo
Desarrolladora de sistemas embebidos con 4 años de experiencia en productos BLE y sub-GHz con Nordic nRF52 y Zephyr. Centrada en autonomía y fiabilidad de radio: llevó un wearable de 6 a 19 meses con una pila CR2032 y redujo las desconexiones a 15 m del 4 % a menos del 0,5 %.
Recién titulado/a
Graduado en Ingeniería Informática (2026, mención en Ingeniería de Computadores) con experiencia práctica en C y STM32 en tres proyectos universitarios y 6 meses de prácticas en firmware de control de motores. Construyó un registrador de datos conectado por CAN que funcionó 400 horas sin supervisión y escribe tests unitarios con Unity. Busca un puesto junior de embebido en productos Cortex-M.

Logros de experiencia en firmware: versiones flojas y versiones sólidas

El patrón que funciona: qué escribiste, sobre qué hardware, con qué restricción y con qué resultado. La mayoría de los currículums de firmware se quedan en la primera parte.

FlojoSólido
Desarrollo de firmware para dispositivos embebidos.Escribí en C99 el firmware de adquisición de un transmisor con STM32L4, con cuatro canales de ADC de 24 bits muestreados a 1 kHz dentro de un presupuesto de 40 KB de RAM.
Trabajo con protocolos de comunicación.Implementé una pila esclava CANopen que sostuvo un bus de 1 Mbps con 12 nodos durante una prueba de resistencia de 72 horas sin tramas perdidas.
Optimización del rendimiento del código.Reduje el arranque de 1,9 s a 340 ms pasando el CRC al periférico hardware y aplazando la inicialización no crítica hasta después de la primera lectura del sensor.
Depuración de incidencias comunicadas por clientes.Atribuí un fallo intermitente en campo (aproximadamente una vez cada 4 días) a un acceso a una struct no alineada dentro de una ISR con el buffer de traza del J-Link, y entregué una corrección verificada en 9 días.
Reducción del consumo del dispositivo.Bajé el consumo medio de 41 µA a 9 µA desactivando un periférico que seguía activo en modo STOP y agrupando los registros en un despertar a 1 Hz, con lo que la pila de botón pasó de durar 6 a 19 meses.
Cumplimiento de estándares de codificación.Llevé una base de código de 90.000 líneas al cumplimiento de las reglas obligatorias y requeridas de MISRA C:2012 y cerré 480 hallazgos en dos trimestres antes de una auditoría de seguridad funcional.
Si tu trabajo está bajo acuerdo de confidencialidad o es para defensa, describe el tipo de producto y los datos técnicos sin nombrar al cliente ni el programa: «un instrumento de RF portátil para un contratista principal de defensa» es correcto, igual que los tamaños de memoria y los tiempos que no estén clasificados.

Empieza con un ejemplo y termina en minutos.

No necesitas registrarte para empezar. Elige un ejemplo, adáptalo con sugerencias y revisa la vista previa mientras escribes.

Crear mi currículum de ingeniero/a de software embebido

Competencias para el currículum de ingeniero/a de software embebido (y cómo agruparlas)

No escribas una larga lista separada por comas. Agrupa por categorías para que el responsable encuentre la fila que importa para su oferta, y que cada elemento sea algo sobre lo que te puedan preguntar en una entrevista.

  • Lenguajes: C (C99, C11), C++ (11/17), Python para herramientas, algo de ensamblador para el código de arranque y las ISR, Rust si de verdad lo usas
  • Arquitecturas y componentes: ARM Cortex-M0+/M4/M7/M33, Cortex-A, RISC-V, TI C2000, AVR, ESP32 y las familias de fabricante con las que has sacado productos (STM32, nRF52, i.MX RT, PIC)
  • RTOS y sistemas operativos: FreeRTOS, Zephyr, ThreadX, Linux embebido, súper bucle bare-metal, además de planificación e inversión de prioridades a nivel de entrevista
  • Buses y protocolos: I2C, SPI, UART, CAN y CANopen, LIN, Modbus, USB (dispositivo y host), Ethernet, BLE, LoRa, MQTT
  • Herramientas: GCC arm-none-eabi, IAR, Keil, CMake, Make, Git, GitLab o GitHub CI, Segger J-Link y Ozone, OpenOCD, analizador lógico Saleae o similar, osciloscopio, fuente de alimentación de laboratorio
  • Pruebas y calidad: Unity, CMock, Ceedling, GoogleTest, hardware-in-the-loop, análisis estático, cobertura de código, MISRA C:2012

Las competencias transversales cuentan aquí de una forma concreta. El firmware está entre hardware, pruebas y producto, así que incluye en tu experiencia una línea que muestre que trabajaste con esos equipos: una revisión de diseño que dirigiste, una prueba de fabricación que entregaste a producción, un fallo en campo que explicaste a un cliente.

Proyectos, GitHub y qué hacer si tu mejor trabajo es de código cerrado

El firmware es uno de los pocos campos del software en los que un proyecto personal convence de verdad, porque el hardware demuestra el trabajo. Una sección de proyectos merece el espacio si eres junior, si cambias de sector o si no puedes describir tu trabajo remunerado.

  1. 1Elige dos proyectos, no seis. La profundidad gana a una lista de LED parpadeando.
  2. 2Para cada uno, indica la placa, el lenguaje, las interfaces y una restricción a la que te enfrentaste: «nRF52840, Zephyr, BLE con registro en flash SPI, 12 meses con 2 pilas AAA, medidos, no estimados».
  3. 3Cuenta qué salió mal y qué hiciste. Una línea sobre un bug que perseguiste con un analizador lógico dice más que una lista de funciones.
  4. 4Enlaza el repositorio y mantén un README breve con una foto de la placa, un esquema de conexiones e instrucciones de compilación que funcionen.
No enlaces una cuenta de GitHub cuyos repositorios fijados sean prácticas de clase de hace tres años. Fija los dos que encajen con el puesto o no pongas el enlace.

Currículum de ingeniero/a de software embebido sin experiencia o recién titulado/a

«Sin experiencia» y «recién titulado» están entre las búsquedas más habituales para este puesto. La buena noticia es que los responsables de embebido sí leen trabajos de estudiantes, siempre que el currículum parezca escrito por un ingeniero. Ordena la página así: perfil, proyectos, competencias, prácticas o trabajo, formación académica.

  • Empieza por los proyectos, no por la formación, si has construido algo sobre hardware real. El TFG, un equipo de robótica, una placa propia, la ECU de un equipo de Formula Student o MotoStudent, un montaje de radioafición.
  • Nombra la toolchain. «Desarrollado en STM32CubeIDE y depurado por SWD con una placa Nucleo» le dice al responsable exactamente hasta dónde llegaste.
  • Incluye asignaturas solo cuando sean específicas: sistemas basados en microprocesador, diseño digital y Verilog, sistemas de tiempo real, arquitectura de computadores, sistemas de control.
  • Cualquier práctica cuenta, aunque sea en pruebas o fabricación. Escribir el script de Python que prueba las placas en la línea es trabajo real de embebido.
  • Di lo que sabes hacer sin que te lleven de la mano: leer un datasheet, conectar una UART, escribir una rutina de interrupción, usar control de versiones.
Objetivo para recién titulados/as (solo si no tienes prácticas)
Graduado en Ingeniería Informática que busca un puesto junior de firmware en productos ARM Cortex-M. Ha escrito drivers bare-metal en C para sensores I2C y un registrador de datos con FreeRTOS en asignaturas y en un proyecto personal, y se maneja con la depuración por SWD, Git y la lectura completa de datasheets.
Logro de proyecto, estudiante
Construí un registrador de datos de bus CAN sobre STM32F4 para el coche de Formula Student de la universidad: 8 canales a 100 Hz en tarjeta SD, 400 horas en dos temporadas sin perder ninguna sesión, y el parser de escritorio en Python que el equipo sigue usando.
Logro de prácticas
Prácticas de seis meses en firmware: escribí y validé el firmware de prueba de producción de un equipo portátil BLE y reduje el tiempo de prueba por unidad de 6 minutos a 90 segundos en un lote de 4.000 unidades.

Formación, normas y certificaciones que de verdad importan

En España no hace falta ninguna habilitación ni colegiación para este puesto, y no hay una certificación que pidan todas las empresas. Lo que pesa es la titulación, las normas con las que has trabajado y la habilitación de seguridad si el puesto la requiere.

  • Titulación: lo habitual es un grado en Ingeniería Informática (o de Computadores), Ingeniería Electrónica, Telecomunicación o similar. Indica el centro, el título y el año. Quita la nota media a partir del segundo empleo, salvo que fuera muy alta y estés al principio de tu carrera.
  • Las normas de seguridad y calidad van en la experiencia, no en una lista de certificados: IEC 61508 en industria, ISO 26262 con el nivel ASIL en automoción, IEC 62304 en productos sanitarios, DO-178C con el nivel DAL en aviónica. Nombra solo aquellas con las que hayas trabajado de verdad.
  • MISRA C:2012 es un estándar de codificación, no una certificación. Di que has trabajado con él y qué hiciste para que el código lo cumpliera.
  • Habilitación de seguridad: si tienes una habilitación personal de seguridad (HPS) en vigor, menciónala en la parte de arriba sin dar detalles. En puestos de firmware para defensa puede ser un requisito, y tenerla ya suele ser una ventaja.
No pongas nunca una norma sobre la que solo has leído. En firmware crítico para la seguridad te preguntarán qué era una cualificación de herramientas o cómo gestionaste un registro de desviación, y la respuesta se nota en una sola pregunta.

Formato, extensión y cómo pasar el ATS

  • Una página hasta unos 10 años de experiencia; dos a partir de ahí o si tienes una lista larga de proyectos en defensa o sanidad. En este campo nadie lee una tercera página.
  • Diseño sencillo a una columna, encabezados estándar y sin barras gráficas de nivel. La foto es opcional en España y la fecha de nacimiento no hace falta. Guárdalo en PDF salvo que la oferta pida Word.
  • Pon cerca de la parte superior una franja breve de competencias con las familias de componentes y el RTOS. Es el bloque en el que los reclutadores buscan por palabras clave.
  • Copia las palabras exactas de la oferta: si dice «ingeniero de firmware» y «Zephyr», escribe «firmware» y «Zephyr», no «desarrollador embebido» y «RTOS». Los sistemas de gestión de candidaturas comparan cadenas de texto, no sinónimos.
  • En España «currículum» y «CV» son lo mismo. Si te presentas a empresas de EE. UU., Reino Unido o Irlanda, envíalo en inglés y sin foto; el contenido es el mismo.

Preguntas frecuentes

¿Cómo se hace un currículum de ingeniero/a de software embebido?

Empieza con un perfil de tres líneas que indique tus años, la familia de arquitectura, el RTOS o bare-metal y una cifra. Sigue con la experiencia, con tres a cinco logros por puesto que digan el hardware, la restricción y el resultado. Añade un bloque de competencias agrupadas y después la formación. Una página si llevas menos de unos diez años.

¿Qué competencias debe poner un/a ingeniero/a de software embebido en el currículum?

C es imprescindible; después, C++ y Python para herramientas. Añade las arquitecturas y componentes con los que has sacado productos, el RTOS (FreeRTOS, Zephyr, ThreadX o bare-metal), los buses (I2C, SPI, UART, CAN, USB, BLE), tus herramientas de depuración (JTAG/SWD, analizador lógico, osciloscopio) y tu entorno de pruebas. Agrúpalas por categorías en lugar de hacer una lista larga.

¿Cómo hago un currículum de ingeniero/a de software embebido sin experiencia o recién titulado/a?

Pon los proyectos por encima de la formación y descríbelos como si fueran trabajo: placa, lenguaje, interfaces, restricción, resultado. La ECU de un equipo de Formula Student, un sensor BLE que hayas construido o un TFG que funcionó días sin supervisión cuentan. Incluye cualquier práctica aunque fuera en pruebas o fabricación, y nombra la toolchain exacta para que se vea hasta dónde llegaste.

¿Qué diferencia hay entre un currículum de ingeniero/a de software embebido y uno de ingeniero/a de firmware?

En la práctica los títulos se solapan y muchas empresas los usan indistintamente. Los puestos de firmware están más pegados al hardware (bare-metal, drivers, bootloaders, consumo), mientras que el software embebido puede incluir Linux embebido, capas de aplicación y conectividad. Usa en tu titular el título exacto de la oferta y mantén el mismo contenido técnico.

¿Cuánto debe ocupar el currículum de un/a ingeniero/a de software embebido?

Una página durante los primeros ocho a diez años. Dos cuando tengas varios productos en el mercado, trabajo bajo normas de seguridad o patentes. No pases de dos. Si tienes que recortar, quita asignaturas antiguas, competencias transversales genéricas y cualquier herramienta sobre la que no quieras que te examinen.

¿Necesito certificaciones para conseguir trabajo en software embebido?

No. En España no hay ninguna habilitación ni certificado obligatorio para este puesto. La titulación, los productos que has sacado y tu capacidad de depuración deciden las entrevistas. Un curso de seguridad funcional (IEC 61508 o ISO 26262) ayuda en industria y automoción, y una habilitación personal de seguridad en vigor puede ser una ventaja clara en puestos de firmware para defensa.

¿Cómo describo un trabajo bajo acuerdo de confidencialidad o sujeto a control de exportaciones?

Describe el tipo de producto y los datos de ingeniería sin nombrar al cliente, el programa ni nada controlado: «un instrumento de RF portátil para un contratista principal de defensa, presupuesto de 128 KB de flash, CAN y USB». Los tamaños de memoria, los tiempos y las normas con las que trabajaste casi siempre se pueden contar. Si tienes dudas, pregunta al responsable de seguridad del programa antes de enviar el archivo.

¿Listo para escribir el tuyo?

El editor te sugiere un perfil a partir de tu propia experiencia y luego lo compara con la oferta de empleo.

Cómo se hizo esta página: el primer borrador se redactó con ayuda de IA a partir de la biblioteca de ejemplos de cvplex y después lo editó y verificó cvplex Careers Team. Los ejemplos son composiciones ficticias y las cifras son orientativas. Puedes informar de un error en la página de política editorial. Esta versión se tradujo del inglés con ayuda de IA.