Ciandt

[Job 29236] Senior iOS Developer, Brazil

Apply Now

Job Description

Sua Missão:
  • Atender junto com a CI&T um cliente do mercado de Mídia;
  • Escrever código limpo, de fácil manutenção, utilizando as melhores práticas de desenvolvimento de software;
  • Projetar soluções usando frameworks apropriados;
  • Identificar oportunidades de melhoria de forma consistente, incluindo melhorias de arquitetura, padrões, experiência de desenvolvimento e experiência de usuário;
  • Trabalhar de forma colaborativa com outros membros da equipe, incluindo desenvolvedores, designers, QA e stakeholders, para garantir o sucesso dos projetos;
  • Fazer revisões de código e fornecer feedbacks construtivos;
  • Garantir um ambiente de desenvolvimento estável e produtivo;
  • Abertura para aprender como usar ferramentas amplamente adotadas na pilha de tecnologia;
  • Manter-se conectado com as atualizações da linguagem Swift e explorar como aplicá-las dentro do time;
  • Participar ativamente na resolução de problemas complexos, identificando oportunidades de melhoria e propondo soluções inovadoras;
  • Mentorar e compartilhar conhecimento com desenvolvedores mais juniores, alavancar suas jornadas e auxiliar proativamente o time;
  • Monitorar e corrigir crashes reportados pelo Firebase Crashlytics, incentivando a cultura de qualidade e incidentes dentro do time;
  • Quebrar features complexas em pedaços testáveis e incrementais, utilizando técnicas como feature flags;
  • Refatorar código legado de maneira incremental e realizar onboarding de novas pessoas;
Requisitos da vaga:
  • Proficiência em Apple e total domínio da linguagem Swift 5+, incluindo conhecimento de temas complexos e capacidade analítica para propor refactorings complexos
  • Padrões de Projeto: Profundo conhecimento em VIPER (principalmente) e suas variações, bem como familiaridade com MVVM, MVP e outros padrões como Facade, Adapter, Factory, Singleton, Builder, Abstract
  • SwiftUI como principal framework de UI, incluindo conhecimento em Threads
  • UIKit com domínio aprofundado e otimização de hierarquia de views
  • Swift Concurrency (async/await, Actor)
  • Controle de Versão GIT com profundo conhecimento, incluindo GitFlow e autonomia para lidar com questões avançadas (editar commits, remover commits, mover commits entre branches)
  • Cocoapods e Swift Package Manager (SPM) para gerência de dependências, com autonomia para criar e manter bibliotecas
  • GraphQL com Apollo iOS, incluindo conceitos aprofundados como fragments, operações em queries (union, etc), Interceptors, Headers e Response
  • CI/CD com Xcode Cloud, GitLab CI ou Fastlane, incluindo capacidade de construir pipelines
  • Testes Unitários com XCTest e Swift Testing, com técnicas de snapshot testing
  • Firebase Crashlytics e Google Analytics
  • Networking: HTTP requests, parsing de JSON/XML, programação assíncrona com GCD (DispatchQueue, OperationQueue), Async Await
  • Memória e Performance: Gestão de memória com Automatic Reference Counting (ARC), propriedades lazy, variáveis computadas, weak/strong/unowned references
  • Xcode com maestria, incluindo atalhos, recursos de depuração (layout, rede, recursos) e ferramentas de apoio (SPM, Xcodegen, Instruments)
  • Design System e criação de componentes escaláveis em projetos de larga escala
  • Metodologias Ágeis (Scrum, Kanban) e ferramentas como Jira
Será um diferencial se você possuir: 
  • Conhecimento de outras linguagens de apoio, como linguagens de automatização para CI (Ruby, Python, etc)
  • Entendimento do workflow de integração do Bitrise
  • Capacidade de apresentar temas do universo Apple para o time interno ou externo
  • Conhecimentos básicos em segurança (persistência de dados, HTTPS e mecanismos de autenticação)