Descripción del trabajo
Como Ingeniero, participarás en la creación de un nuevo producto desde cero mediante la colaboración con educadores y compañeros externos. Formarás parte de un equipo distribuido en Europa y Asia, y tu tiempo se compartirá en actividades colaborativas como planificación, retrospectivas, reuniones de trabajo y sesiones de intercambio de ideas.
Utilizarás tecnología moderna y amplia, que incluye:
- Lenguaje de programación: La gran mayoría del código está escrito en Swift.
- Simultaneidad: Trabajamos con una base de código grande, antigua pero modular. Usamos simultaneidad moderna de Swift siempre que es posible, mientras nos alejamos gradualmente de RxSwift.
- Código de interfaz de usuario: La mayor parte del nuevo código de interfaz de usuario está en SwiftUI. Usamos UIKit cuando es necesario y reutilizamos gran parte en macOS con Catalyst.
- Multiplataforma: Reutilizamos los paquetes principales en varias plataformas usando SwiftWasm; la interfaz de usuario para otras plataformas se escribe usando React o sus respectivas API nativas.
- Dependencias: Utilizamos exclusivamente Swift Package Manager y frecuentemente creamos nuevos paquetes locales.
- Control de código fuente y compilaciones: Mantenemos un único repositorio y usamos GitHub y Pull Requests. Iniciamos compilaciones mediante un bot de Slack.
- Integración continua: Utilizamos CircleCI, lo que significa que la configuración se registra con el código. Contamos con pruebas unitarias para todos los módulos, que se ejecutan en cada rama. Las pruebas de IU se realizan a diario y antes del lanzamiento.
- Cadencia de lanzamiento: Controlamos la calidad y lanzamos de acuerdo con un cronograma semanal.
Responsabilidades:
- Crear servicios de misión crítica utilizados por decenas de millones de usuarios.
- Diseñar soluciones escalables y fáciles de mantener para permitir el desarrollo de nuevas características y soportar más usuarios.
- Implementar soluciones elegantes con código limpio.
- Facilitar la comunicación con los equipos de control de calidad, frontend web y móviles.
- Definir e impulsar la finalización de nuevas iniciativas y funciones, eliminando bloqueadores para el equipo.
- Mejorar continuamente las prácticas de desarrollo a través de investigación, automatización, documentación y pruebas.
- Compartir tus conocimientos y experiencia con el resto del equipo.
Habilidades:
- Excelentes habilidades de comunicación en inglés.
- Experiencia en programación con Swift. Se valorará el conocimiento de SwiftUI.
- Sólida comprensión de los fundamentos de la informática, y disfrute resolviendo problemas de algoritmos y estructuras de datos.
- Excelentes habilidades para resolver problemas, comunicarse y contar historias.
- Fuerte sentido de las mejores herramientas para cada tarea.
- Haber enviado una o más aplicaciones iOS no triviales a las respectivas tiendas de aplicaciones.
- Experiencia en la compilación cruzada de código base en diferentes plataformas móviles será una gran ventaja.
Salario a percibir
A convenir
Para ver este contenido y los contactos hacias las ofertas, debes tener una Subscripción .