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.