Senior iOS (diseñador/arquitecto de software) ID #00113
Ubicación:
- Argentina, México, Colombia, Perú, Ecuador (Remoto)
Tipo de trabajo:
- Jornada completa
Industria:
- Minorista
Nivel de experiencia:
- Sénior
Responsabilidades clave:
- Diseñar, desarrollar y mantener aplicaciones iOS utilizando los marcos SwiftUI y Combine .
- Aplicar sólidos conocimientos de Programación Orientada a Objetos (POO) y Patrones de Diseño .
- Diseñar e implementar soluciones escalables utilizando la arquitectura MVVM y adherirse a los principios SOLID .
- Optimice el rendimiento administrando la memoria de manera eficiente y previniendo fugas de memoria, utilizando un conocimiento profundo de la gestión de la memoria (referencias fuertes vs. débiles).
- Colaborar con equipos multifuncionales para definir, diseñar y lanzar nuevas funciones.
- Integre con API y servicios externos utilizando marcos como Firebase , Crashlytics y Swiflint .
- Realice pruebas unitarias utilizando XCTest para garantizar la calidad y solidez del código.
- Manténgase actualizado con los últimos marcos y herramientas de desarrollo de iOS, incluidos HealthKit , HomeKit y otras tecnologías de Apple.
Habilidades y cualificaciones clave:
- Marcos SwiftUI y Combine (obligatorio).
- Sólida base en el lenguaje de programación Swift , que incluye:
- Colecciones (matrices, diccionarios, conjuntos).
- Cierres.
- Clases vs. Estructuras.
- Protocolos y extensiones.
- Propiedades.
- Gestión de memoria (se requieren conocimientos profundos).
- Enumeraciones y manejo de errores (escenarios try-catch).
- Experiencia con Swift Foundation Framework , incluidos UserDefaults , CoreData y plist .
- Competente en subprocesos múltiples , específicamente subproceso principal , sincrónico frente a asincrónico , async/await y GCD (Grand Central Dispatch) . Es deseable tener conocimientos de NSOperation .
- Sólida experiencia con UIKit :
- Ciclo de vida de la aplicación, UITableView , UICollectionView , UIScrollView .
- Controladores de navegación como UITabBarController y UINavigationController .
- Celdas personalizadas y vistas reutilizables en UITableCellView .
- Sólido conocimiento de SwiftUI y su integración con UIKit , incluidas vistas, modificadores y envoltorios de propiedades:
- @Estado , @ObjetoObservado , @ObjetoAmbiente , @ObjetoEstado .
- Familiaridad con dependencias externas utilizando Cocoapods o Swift Package Manager .
- Experiencia con Firebase o herramientas similares, Crashlytics , Swiflint (o similar).
- Sólida experiencia con sistemas de control de versiones, especialmente Git .
- Capacidad para articular experiencias, desafíos y soluciones de proyectos pasados para demostrar experiencia como desarrollador de iOS.
Idiomas:
- Nivel competente de inglés (C1 | Nivel avanzado)
Sería bueno tener:
- Familiaridad con otros marcos de Apple como HealthKit y HomeKit .
- Experiencia con NSOperation .