[Job - 29276] Senior Mobile Developer (React Native) - , Brazil
Você fará parte de uma equipe multidisciplinar e será responsável pelo desenvolvimento de aplicações mobile modernas e distribuídas, utilizando os principais frameworks de mercado e soluções de computação em nuvem.
Principais Responsabilidades:
- Desenvolver e manter aplicações mobile utilizando React Native e tecnologias relacionadas, com foco em performance, acessibilidade, usabilidade e experiência consistente em iOS e Android;
- Definir e implementar interfaces modernas utilizando TypeScript, Styled Components (ou outras libs de estilização adotadas pelo time) e boas práticas de componentização, estado e navegação (Ex. expo router);
- Integrar aplicações mobile com serviços externos, utilizando diferentes tipos de abordagem (API, eventos, etc.), garantindo comunicação eficiente, segura e resiliente;
- Utilizar recursos da plataforma Expo (OTA updates, notificações push, deep linking, acesso a sensores, etc.) de forma segura e escalável;
- Definir e implementar a arquitetura das aplicações, de acordo com os requisitos funcionais e não funcionais do contexto;
- Definir, estimar e desenvolver funcionalidades em um ambiente ágil (Scrum/Kanban), participando de ritos ágeis e alinhamentos com stakeholders;
- Implementar testes automatizados utilizando ferramentas modernas do ecossistema React Native/Expo;
- Participar ativamente de code reviews, contribuindo para a qualidade, consistência e manutenibilidade do código;
- Auxiliar na identificação, monitoramento e resolução de problemas (bugs, crashes, problemas de performance, consumo de bateria, uso de memória, etc.);
- Documentar decisões técnicas, arquiteturas, fluxos e boas práticas, contribuindo com guias e padrões internos;
- Manter-se atualizado sobre novas versões do React Native, Expo e bibliotecas do ecossistema, propondo melhorias contínuas em arquitetura, ferramentas e práticas de desenvolvimento;
Requisitos:
- Sólida experiência com o desenvolvimento de aplicações mobile utilizando React Native (preferencialmente com Expo) e TypeScript;
- Domínio de padrões modernos de desenvolvimento em React Native: componentização, hooks, gerenciamento de estado, navegação, consumo de APIs REST/GraphQL;
- Experiência com serviços em nuvem (preferencialmente AWS, como API Gateway, Lambda, S3, Cognito, etc.) para integração com o backend;
- Conhecimento prático com bancos de dados relacionais e não relacionais e consumo desses dados via APIs no app mobile;
- Experiência prática com DevSecOps e CI/CD para aplicativos movile (pipelines de build, testes e deploy automatizados – por ex. GitHub Actions, GitLab CI, Bitrise, CircleCI, etc.);
- Vivência com metodologias ágeis (Scrum, Kanban) e trabalho colaborativo em squads multidisciplinares;
- Experiência prática com testes automatizados no contexto mobile;
- Conhecimento de boas práticas de UX e UI para mobile, guidelines de plataforma (Human Interface Guidelines, Material Design) e noções básicas de acessibilidade;
- Experiência com microsserviços e arquitetura orientada a eventos, entendendo como um app mobile se integra a esse ecossistema;
- Conhecimento prático sobre observabilidade e resiliência em aplicações mobile (monitoramento de crashes, performance, logs, feature flags, circuit breakers no consumo de APIs);
- Experiência com segurança em aplicações mobile (armazenamento seguro, proteção de tokens, uso adequado de certificados, práticas anti-tampering, etc.);
- Conhecimento em processos de build, distribuição e publicação das apps (Expo EAS, Apple App Store, Google Play Store), incluindo gestão de certificados, perfis e versões;
Você irá se destacar se:
- Já ter atuado em um ambiente de desenvolvimento mobile em escala, com múltiplos apps, times ou domínios de negócio;
- Já tiver trabalhado com feature toggles, A/B tests e experimentação em aplicações mobile;
- Já ter contribuído para bibliotecas ou projetos open source do ecossistema React Native/Expo ou participado da comunidade (meetups, talks, artigos).