




Resumen: OneSpan busca un/a Ingeniero/a Senior de Software (Python) para evolucionar la arquitectura, mantenibilidad y escalabilidad de una herramienta avanzada de protección para aplicaciones Android. Aspectos destacados: 1. Diseñar y desarrollar herramientas de protección para Android principalmente en Python. 2. Mejorar la arquitectura, modularidad, fiabilidad y mantenibilidad de los sistemas. 3. Mentorizar a ingenieros junior y liderar iniciativas técnicas. En OneSpan nos especializamos en soluciones digitales de identidad y antifraude que crean experiencias excepcionales y seguras. **Actualmente OneSpan está buscando un/a Ingeniero/a Senior de Software (Python) para unirse a nuestro equipo en Barcelona.** Estamos desarrollando una herramienta avanzada de protección para aplicaciones Android centrada en la transformación de APK/AAB, ofuscación de código e integración de código nativo. Nuestras herramientas analizan y transforman aplicaciones Android a distintos niveles, incluidos el bytecode y los artefactos de compilación, para implementar mecanismos de protección y seguridad utilizados en entornos móviles de producción. Buscamos un/a ingeniero/a senior que nos ayude a evolucionar la arquitectura, mantenibilidad y escalabilidad de la plataforma, al tiempo que 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 implican 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 para producción. * Mejorar las estrategias de pruebas, las tuberías CI/CD, la automatización de lanzamientos y los flujos de trabajo de los desarrolladores. * Mentorizar a ingenieros junior y ayudar a fomentar 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 ofrecer soluciones bien arquitectadas. * Mejorar la escalabilidad, observabilidad y 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 como ingeniero/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 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 de comunicación en inglés. **Valorable:** * Interés o experiencia en herramientas de seguridad, ingeniería inversa o sistemas de bajo nivel. * Conocimientos sobre los fundamentos de Android, la estructura de APK/AAB o herramientas para aplicaciones móviles. * Experiencia en manipulación de bytecode, análisis estático o conceptos de transformación de código. * Conocimientos sobre bytecode Dalvik / smali. * Experiencia con Java o Kotlin. * Experiencia con herramientas de ingeniería inversa o instrumentación tales como JADX, apktool, Frida, Ghidra o similares. * Experiencia trabajando en entornos Unix/Linux. * Experiencia con tuberías CI/CD y sistemas automatizados de lanzamiento. * Conocimientos sobre Docker o entornos contenerizados. * Conocimientos sobre criptografía o técnicas de protección de aplicaciones. \#LI\-hybrid \#LI\-LS1


