Desenvolvedor de Software para Equipes Multidisciplinares
Estamos procurando por um profissional experiente em desenvolvimento de software com habilidades em equipes multidisciplinares. O candidato deve ter uma forte capacidade de comunicação, trabalho em equipe e gerenciamento de projetos.
* Responsabilidades:
o Lidar com problemas complexos e amplos escopos;
o Participar de debates técnicos com os times;
o Auxiliar na análise e resolução de problemas;
o Garantir qualidade, escalabilidade e boas práticas do produto;
o Fornecer visibilidade dos trabalhos realizados;
o Buscar entendimento e acompanhamento sobre métricas de saúde das aplicações/produtos;
o Participar de pair, revisões de código e refinamentos para discutir soluções técnicas, garantir qualidade e compartilhar conhecimentos;
o Buscar continuamente oportunidades para melhorar nossas aplicações, processos e experiência do nosso cliente;
* Requisitos:
o Experiência em desenvolvimento Android, incluindo Kotlin e Jetpack Compose;
o Conhecimentos em padrões arquiteturais e design de código, adotando padrões de codificação consistentes e bem documentados;
o Conhecimentos de arquitetura de módulos e componentização;
o Conhecimentos sobre Testes unitários, testes de integração, testes funcionais e testes de snapshots, utilizando ferramentas como JUnit, Espresso, Mockito, XCTest, Snapshot Testing, entre outras;
o Conhecimentos sobre investigação, troubleshooting e depuração de sistemas;
o Conhecimentos sobre integração de APIs RESTful, serviços em nuvem (por exemplo, Firebase), armazenamento local e remoto de dados, autenticação e notificações push;
o Conhecimentos sobre estrutura de CI/CD, pipeline automatizado;
o Conhecimentos sobre ferramentas de métricas e marketing (e.g. Firebase, Google Analytics, Amplitude);
o Capacidade de trabalhar de forma colaborativa em equipes multidisciplinares, comunicando-se de forma eficaz com demais pessoas do time, designers, desenvolvedores, gerentes de produto e outros stakeholders, com habilidades de comunicação e colaboração;
o Conhecimentos sobre metodologias ágeis de desenvolvimento de software, como Scrum ou Kanban;
o Capacidade de se comunicar de forma concisa, franca e clara (também por escrito);
* Benefícios:
o Opportunaides contínuas de crescimento e aprimoramento técnico;
o Trabalho colaborativo em equipe;
o Comunicação eficaz com o time;
o Flexibilidade no horário de trabalho;
o Oportunidades de aprendizado e desenvolvimento profissional;