Engenheiro de Software Senior
Koin
Descrição da vaga
Na Koin, estamos construindo a nova geração de soluções para o comércio digital na América Latina. Somos pioneiros em Buy Now, Pay Later no Brasil e seguimos evoluindo para desenvolver tecnologia antifraude e de pagamentos que acompanhe a expansão dos e-commerces na região.
Nosso compromisso é desbloquear as fricções do ambiente digital — tanto para quem vende quanto para quem compra — combinando inteligência de dados, machine learning e uma arquitetura capaz de oferecer segurança, agilidade e confiança em cada transação.
Atuamos em alguns dos principais mercados da região, como Brasil, Argentina, Colômbia, Chile e México, impulsionando um ecossistema mais eficiente, moderno e acessível.
Pensamos e trabalhamos como empreendedores: transformamos desafios complexos em soluções práticas, experimentamos, aprendemos rápido e construímos em equipe. Aqui, cada pessoa tem a oportunidade de criar impacto real e contribuir para o futuro da inovação financeira na América Latina.
Responsabilidades:
- Ajudar a construir a visão de engenharia dos microsserviços backend e ser a principal referência técnica do time.
- Ajudar a planejar mudanças, identificar dívida técnica, propor melhorias e definir o backlog técnico.
- Conduzir sozinho histórias que envolvem vários times.
- Trabalhar em parceria com a liderança do time e substituí-la temporariamente quando necessário.
- Avaliar e ajudar a definir a estratégia de adoção de novas tecnologias e ferramentas de GenIA, garantindo que elas fortaleçam o time sem deixar os sistemas mais frágeis.
- Conhecer a fundo as aplicações do time e saber explicar e questionar por que elas foram desenhadas e escritas de determinada forma.
- Desenvolver ferramentas e identificar boas práticas que melhorem o fluxo de trabalho e a produtividade do time.
- Compartilhar boas práticas e criar oportunidades de aprendizado e troca de conhecimento no time.
- Colaborar para melhorar as ideias dos colegas, além de identificar problemas e propor soluções.
- Comunicar decisões técnicas com clareza e uma base sólida, incentivando essa prática no time.
- Assumir tarefas essenciais mesmo quando forem pouco atraentes, servindo de exemplo para quem tem menos experiência.
- Olhar a empresa além do próprio time e propor melhorias e soluções também para outras áreas.
- Mínimo 5 anos de experiência com desenvolvimento de software.
- Experiência sólida com desenvolvimento backend em Java e Spring.
- Base técnica forte em algoritmos, linguagens de programação (Java/Spring), JVM, redes, bancos de dados e sistemas distribuídos.
- Domínio de arquitetura de microsserviços, com capacidade de entender, questionar e explicar por que os sistemas são desenhados de determinada forma.
- Experiência desenhando soluções robustas, rastreáveis e escaláveis e orquestrando soluções complexas entre vários componentes e times.
- Uso de GenIA no dia a dia, com experiência em avaliar a adoção de ferramentas de IA sem deixar os sistemas mais frágeis.
- Experiência liderando o suporte à produção, a resposta a incidentes e as análises pós-incidente.
- Experiência identificando dívida técnica, propondo melhorias e ajudando a definir o backlog técnico.
- Comunicação clara, sempre com uma base sólida para cada decisão, e abertura para ter as próprias ideias revisadas e questionadas.
