Como Ingeniero/a Senior de Software en nuestro equipo global de I+D, tendrás un rol clave en el diseño y la implementación de aplicaciones de vigilancia electrónica de artículos (EAS), destinadas a clientes del sector retail a nivel mundial.Este puesto requiere sólidas competencias en desarrollo de software embebido, y está orientado a respaldar el diseño y la optimización de nuestras soluciones innovadoras de hardware. Formarás parte de nuestro equipo de firmware/software con sede en Terrassa, colaborando en la entrega de sistemas embebidos, robustos, eficientes y escalables.Objetivos y principales responsabilidades:
Contribuir al desarrollo del concepto y al diseño de sistemas de hardware e interfaces para todos los proyectos relacionados con EAS. Las tareas pueden asignarse a nivel individual, en equipo o una combinación de ambos.Investigar soluciones, revisar y analizar, validar, resolver problemas y realizar pruebas de los productos.Capacidad para trabajar en equipos multifuncionales tanto a nivel local como internacional.Gestionar todo el ciclo de vida de las aplicaciones de software, incluyendo la recopilación de requisitos, diseño, implementación y pruebas.Crear y mantener documentación de código completa (diagramas de arquitectura, diagramas de secuencia, especificaciones de API).Participar en revisiones entre pares (peer reviews) para garantizar la calidad del código.Realizar evaluaciones de riesgos, proponer y ejecutar investigaciones de viabilidad, y aportar orientación para llevar nuevas tecnologías al mercado.Comunicar el estado del proyecto de forma oportuna y precisa, y proponer ideas alternativas de resolución de problemas cuando sea necesario.Participar en discusiones técnicas sobre el diseño, evaluar riesgos, proponer soluciones y apoyar la incorporación de nuevas tecnologías.Contribuir con el equipo de innovación, colaborando activamente en la planificación y ejecución técnica de los proyectos de desarrollo.Asumir la responsabilidad de sus entregables, asegurando resultados de calidad dentro de los plazos establecidos.Formación y experiencia:
Ingeniería informática o similar.Mínimo 5 años de experiencia en roles similares.Inglés fluido;
el conocimiento de otros idiomas es un plus.Conocimientos:
Dominio de lenguajes de programación:
C#, Perl, Python, Java Script, Bash Shell / Power Shell Scripting, C++ (incluyendo DCOM/COM), HTML / CSS, SQL.Conocimiento de frameworks y bibliotecas:
Mojolicious (Perl), Flask (Python) TKinter (Python)Fast API (Python). NET Framework (C#, Windows Forms) React (Java Script) REST API, MQTT, Zero MQ, j Query, Pattern Fly, Bootstrap:
Armbian OS (Ubuntu and Debian), Kernel and U-boot updates, System services (systemd, Network Manager, DNS/DHCP/NTP services, firewalld, apt, etc.), Hardware interfacing (UART, i2c, iDominio en Desarrollo Embebido en Linux:
Armbian OS (Ubuntu and Debian), Kernel and U-boot updates, System services (systemd, Network Manager, DNS/DHCP/NTP services, firewalld, apt, etc.) Hardware interfacing (UART, i2c, i2s, SPI, GPIO)Experiencia en pruebas unitarias y de integración:
familiaridad con frameworks de pruebas como:
Test:
:
More (Perl), Test:
:
Mojo (Mojolicious), pytest (Python), React Testing Library (Java Script).Experiencia en desarrollo y gestión de bases de datos:
Conocimientos en bases de datos relacionales como SQLite y MS Access, así como en formatos de archivo como JSON, YAML, entre otros.Conocimientos en Cloud y Dev Ops:
experiencia con plataformas y servicios de Microsoft Azure (Io T Hub, Io T Edge, Azure AD, máquinas virtuales, servicios de almacenamiento, etc.). Familiaridad con prácticas Dev Ops, incluyendo CI/CD mediante Git Hub Actions, Docker y Docker Hub.Conocimientos en seguridad:
manejo de tecnologías como SSL, SSH, GPG, Azure AD, OAuth2/Open ID Connect. Experiencia en identificación y corrección de vulnerabilidades.Conocimientos en redes:
configuración de Wi-Fi STA/AP (WPA2 Personal/Enterprise), Bluetooth (RFCOMM, PAN), configuración de servicios como DNS, DHCP, NTP, así como gestión de firewalls (firewall, IPTables).Control de versiones:
experiencia con Git y Git Hub.Ciclo de vida del desarrollo de software (SDLC):
Familiaridad con todas las etapas del desarrollo de software:
recopilación de requisitos, diseño, implementación, pruebas y mantenimiento.Algoritmos y estructuras de datos:
dominio de algoritmos y estructuras de datos fundamentales para la resolución de problemas complejos.Desarrollo de APIs y documentación de código:
conocimiento en especificación y documentación de APIs mediante Open API, Doxygen y Markdown para wikis.Sistemas operativos:
experiencia trabajando en entornos Windows y Linux.Herramientas de desarrollo:
uso habitual de entornos como Visual Studio y Visual Studio Code.CompetenciasHabilidades para resolver problemas:
capacidad para abordar problemas complejos de manera metódica y con pensamiento crítico.Habilidades de comunicación:
capacidad para comunicar conceptos técnicos claramente tanto a miembros técnicos como no técnicos.Colaboración:
experiencia trabajando en equipo y utilizando herramientas como Microsoft Teams, Git Hub y Jira.Adaptabilidad:
disposición y capacidad para aprender nuevas herramientas y adaptarse a tecnologías en constante cambio.Gestión del tiempo:
capacidad para manejar múltiples proyectos y cumplir con los plazos de manera eficiente.Qué ofrecemos:
Formarás parte de una empresa multinacional con un buen ambiente laboral y sólidos valores corporativos.Paquete salarial atractivo y competitivo.Trabajarás en una empresa dinámica y global, con oportunidades de crecimiento profesional y posibilidades para experimentar y probar nuevas ideas.Trabajo en modalidad home office dos días a la semana.Residencia en la zona de Barcelona.Si tienes las habilidades que buscamos y quieres participar en el proceso de selección, por favor envíanos tu CV detallado a recursos.humanos@checkpt.comtoda tu información será tratada de manera confidencial según las normas del RGPD.