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, JavaScript, Bash Shell / PowerShell Scripting, C++ (incluyendo DCOM/COM), HTML / CSS, SQL.
* Conocimiento de frameworks y bibliotecas: Mojolicious (Perl), Flask (Python) TKinter (Python)FastAPI (Python) .NET Framework (C#, Windows Forms) React (JavaScript) REST API, MQTT, ZeroMQ, jQuery, PatternFly, Bootstrap: Armbian OS (Ubuntu and Debian), Kernel and U-boot updates, System services (systemd, NetworkManager, DNS/DHCP/NTP services, firewalld, apt, etc.), Hardware interfacing (UART, i2c, i
* Dominio en Desarrollo Embebido en Linux: Armbian OS (Ubuntu and Debian), Kernel and U-boot updates, System services (systemd, NetworkManager, 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 (JavaScript).
* 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 DevOps: experiencia con plataformas y servicios de Microsoft Azure (IoT Hub, IoT Edge, Azure AD, máquinas virtuales, servicios de almacenamiento, etc.). Familiaridad con prácticas DevOps, incluyendo CI/CD mediante GitHub Actions, Docker y DockerHub.
* Conocimientos en seguridad: manejo de tecnologías como SSL, SSH, GPG, Azure AD, OAuth2/OpenID 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 GitHub.
* 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 OpenAPI, 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.
Competencias
* Habilidades 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, GitHub 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.com
Toda tu información será tratada de manera confidencial según las normas del RGPD.