Expert, Senior Embedded Software Developer
hace 1 día
Barcelona
Overview Buscando causar un IMPACTO con tu carrera? En Schneider Electric, nuestros valores IMPACT – Inclusión, Maestría, Propósito, Acción, Curiosidad, Trabajo en Equipo – comienzan con nosotros. Schneider Digital es la división digital de Schneider Electric, con 6 Digital Hubs mundiales y más de 450 empleados en Barcelona, apoyando a equipos internos y clientes en áreas como Data, Ciberseguridad, ERP, Cloud, Infraestructuras e IT Project Management. Nuestro objetivo es resolver problemas del mundo real para un futuro eléctrico sostenible, con IA que transforma industrias y mejora la eficiencia. Como Senior Embedded Software Developer, diseñarás, implementarás y mantendrás software de bajo nivel y middleware que se ejecuta en microcontroladores ARM Cortex-M (familia STM32), usando arquitecturas basadas en RTOS (por ejemplo embOS). Colaborarás estrechamente con otros equipos de Core Services y sistemas para mejorar la robustez, el rendimiento y la mantenibilidad de la plataforma. Reportando al Director de IE Core Services y trabajando en un equipo multidisciplinario de desarrolladores embebidos, testers, Product Owners y Scrum Masters en Grenoble, Barcelona y Bangalore, serás un colaborador técnico senior en el desarrollo de Core Services embebidos para plataformas basadas en MCU. Responsabilidades Contribuir a la arquitectura y el diseño embebido para Core Services. Participar en discusiones de arquitectura y diseño, entendiendo y aplicando limitaciones de plataformas basadas en MCU (memoria, CPU, comportamiento en tiempo real, consumo de energía). Contribuir a la definición y evolución de arquitecturas de software basadas en RTOS. Diseñar interfaces limpias entre drivers, servicios RTOS, middleware y capas de aplicación. Mantener la comprensión de cómo los Core Services de MCU se integran con componentes de nivel superior de la plataforma (MPU/Edge OS cuando aplique). Desarrollar y mantener software en C/C++ para plataformas ARM Cortex-M (STM32). Desarrollar software en entornos RTOS (p. ej., embOS), incluyendo: diseño de tareas y scheduling, manejo de interrupciones, timers, primitivas de sincronización e IPC. Contribuir a software de bajo nivel (BSP, drivers, capas de abstracción de hardware, servicios MCU y utilidades de plataforma). Asegurar robustez, determinismo y confiabilidad del software en condiciones en tiempo real. Escribir código claro, testeable y mantenible, alineado con buenas prácticas embebidas. Actuar como referencia técnica para MCU, RTOS y diseño en tiempo real dentro del equipo. Soportar resolución de problemas y análisis de causa raíz de incidencias embebidas complejas (tiempos, concurrencia, memoria, interacción HW/SW). Contribuir a investigaciones técnicas, depuración y análisis de rendimiento. Participar en revisiones de código con énfasis en exactitud en tiempo real y calidad de software. Colaborar con otros equipos (sistema, hardware, MPU/Edge OS) en temas de integración. Evaluar impactos de diseño en rendimiento en tiempo real, uso de memoria, escalabilidad, reutilización y mantenibilidad a largo plazo. Identificar riesgos técnicos y proponer estrategias de mitigación. Contribuir a directrices de desarrollo y patrones reutilizables para Core Services embebidos. Apoyar la evolución hacia nuevas familias de MCU y versiones de RTOS cuando sea necesario. Participar en la entrega ágil y en la consistencia de la plataforma; colaborar con el PO para clarificar requisitos y factibilidad técnica. Estimación de esfuerzos y desglose técnico de historias; identificar bloqueos o dependencias y comunicarlos proactivamente. Trabajar de forma efectiva en un entorno multi-sitio y multi-disciplinario. Apoyar y mentorizar a desarrolladores embebidos menos experimentados; compartir conocimiento sobre RTOS, patrones embebidos y buenas prácticas de MCU. Contribuir a la onboarding de nuevos integrantes y promover una cultura de excelencia en ingeniería, robustez y mejora continua. Requisitos y éxito Experiencia sólida en desarrollo de software embebido para sistemas basados en MCU. Conocimiento de la arquitectura ARM Cortex-M y la familia STM32. Experiencia comprobada con sistemas basados en RTOS (p. ej., embOS, FreeRTOS). Dominio de C / C++ para entornos embebidos. Buen entendimiento de constraints en tiempo real, interrupciones, gestión de memoria y concurrencia. Experiencia trabajando cerca del hardware (drivers, BSP, interacción HW/SW). Habilidad para analizar y resolver problemas embebidos y en tiempo real complejos. Trabajo en entornos ágiles; enfoque autónomo, proactivo y de alta calidad. Beneficios y condiciones Ofrecemos flexibilidad: horario flexible; posibilidad de trabajo híbrido desde casa; días de vacaciones adicionales (Holy Pack); días festivos flotantes; permiso sabático de hasta 2 meses (no remunerado); y políticas de licencia familiar. Bienestar y desarrollo: acceso a Wellwo y Wellhub para bienestar y actividades; servicio médico en el lugar; plataforma de desarrollo profesional Career Hub; opciones de participación accionaria; programa de reconocimiento; seguro de vida; plan de remuneración flexible; descuentos Club Schneider; programas de voluntariado. Iguales oportunidades: Schneider Electric es Empleador de Igualdad de Oportunidades. Nuestra política garantiza igualdad de oportunidades para todas las personas calificadas, independientemente de raza, religión, género, discapacidad, origen nacional, edad, estado militar o cualquier característica protegida. También mantenemos altos estándares éticos y de cumplimiento. Para ser considerado, envía tu solicitud en línea. Esta posición permanecerá abierta hasta completar el proceso de selección. #J-18808-Ljbffr