




Resumen: OneSpan busca un Ingeniero Senior de Software (Python) para evolucionar, mantener y escalar una avanzada herramienta de protección para aplicaciones Android, mientras mentoriza a un equipo de ingeniería en crecimiento. Aspectos destacados: 1. Diseñar y desarrollar herramientas de protección para Android principalmente en Python. 2. Mejorar la arquitectura, la fiabilidad y la mantenibilidad de sistemas complejos. 3. Mentorizar a ingenieros junior y promover las mejores prácticas de ingeniería. En OneSpan, nos especializamos en soluciones digitales de identidad y antifraude que ofrecen experiencias excepcionales y seguras. **Actualmente OneSpan busca un Ingeniero Senior de Software (Python) para unirse a nuestro equipo en Barcelona.** Estamos desarrollando una avanzada herramienta de protección para aplicaciones Android centrada en la transformación de APK/AAB, la ofuscación de código y la integración de código nativo. Nuestras herramientas analizan y transforman aplicaciones Android en distintos niveles, incluidos el bytecode y los artefactos de compilación, para implementar mecanismos de protección y seguridad utilizados en entornos móviles productivos. Buscamos un ingeniero senior que nos ayude a evolucionar la arquitectura, la mantenibilidad y la escalabilidad de la plataforma, mientras mentoriza a un equipo de ingeniería en crecimiento. **Funciones y responsabilidades del puesto** * Diseñar, desarrollar y evolucionar nuestras herramientas de protección para Android, escritas principalmente en Python. * Mejorar la arquitectura, modularidad, fiabilidad y mantenibilidad del sistema. * Trabajar en complejas tuberías de transformación que involucran el procesamiento de APK/AAB y la manipulación de código. * Contribuir a la optimización del rendimiento y la escalabilidad de las herramientas. * Escribir código limpio, testeable y de calidad productiva. * Mejorar las estrategias de pruebas, las tuberías de CI/CD, la automatización de lanzamientos y los flujos de trabajo de los desarrolladores. * Mentorizar a ingenieros junior y contribuir al desarrollo de las mejores prácticas de ingeniería en todo el equipo. * Colaborar estrechamente con ingenieros de Android y de seguridad para diseñar e implementar nuevas técnicas de protección. * Participar en discusiones técnicas, revisiones de código y toma de decisiones arquitectónicas. * Diseñar y desarrollar nuestra herramienta de protección de aplicaciones utilizando Python para respaldar nuestra plataforma y productos. * Trabajar en desafiantes problemas arquitectónicos y de rendimiento, contribuyendo a la evolución de nuestros sistemas. * Escribir código limpio, mantenible y testeable, garantizando alta fiabilidad y rendimiento. * Colaborar estrechamente con desarrolladores móviles, ingenieros de backend, gestores de producto y diseñadores para entregar soluciones bien arquitectadas. * Mejorar la escalabilidad, la observabilidad y la mantenibilidad de nuestros sistemas a medida que crece el negocio. * Contribuir a la toma de decisiones técnicas, revisiones de código y discusiones arquitectónicas. **Requisitos** * 5 o más años de experiencia profesional en ingeniería de software utilizando Python. * Fuertes habilidades en arquitectura de software y diseño de sistemas. * Experiencia en el desarrollo de aplicaciones complejas, herramientas para desarrolladores, aplicaciones CLI o tuberías de transformación. * Buen conocimiento de las prácticas de calidad de software, pruebas y mantenibilidad. * Experiencia mentorizando a ingenieros o liderando iniciativas técnicas. * Capacidad para trabajar de forma autónoma en sistemas técnicamente desafiantes. * Fuertes habilidades analíticas y de resolución de problemas. * Buenas habilidades comunicativas en inglés. **Deseable:** * Interés o experiencia en herramientas de seguridad, ingeniería inversa o sistemas de bajo nivel. * Conocimiento de los aspectos internos de Android, la estructura de APK/AAB o las herramientas para aplicaciones móviles. * Experiencia en manipulación de bytecode, análisis estático o conceptos de transformación de código. * Conocimiento de bytecode Dalvik / smali. * Experiencia con Java o Kotlin. * Experiencia con herramientas de ingeniería inversa o instrumentación como JADX, apktool, Frida, Ghidra o similares. * Experiencia trabajando en entornos Unix/Linux. * Experiencia con tuberías de CI/CD y sistemas automatizados de lanzamiento. * Conocimiento de Docker o entornos contenerizados. * Conocimientos de criptografía o técnicas de protección de aplicaciones. \#LI\-hybrid \#LI\-LS1


