Responsabilidades: ? Desenvolver software aplicando as melhores práticas de codificação e padrões de design, como os princípios SOLID e a Orientação a Objetos, com foco em segurança, escalabilidade e eficiência, a fim de evitar impactos negativos nos processos existentes;
? Colaborar com o time na proposição e documentação de novas funcionalidades e aplicações, garantindo uma abordagem orientada a objetos e seguindo padrões de arquitetura definidos;
? Refinar e planejar o desenvolvimento de tarefas em conjunto com o time, priorizando a qualidade e a eficiência no processo de entrega;
? Realizar revisões de código regularmente para assegurar a conformidade com os padrões estabelecidos e garantir a qualidade dos artefatos produzidos;
? Apoiar ativamente o desenvolvimento de produtos de alta qualidade, contribuindo para a definição da arquitetura, seleção de ferramentas, automação de processos (testes, integração contínua/desenvolvimento contínuo - CI/CD) e promoção de boas práticas de desenvolvimento;
? Apoiar na documentação de soluções e sistemas;
? Prestar suporte aos times na resolução de problemas, oferecendo soluções eficazes e conduzindo análises de causa raiz para evitar recorrências;
? Identificar, mapear e priorizar débitos técnicos, visando a redução de custos operacionais e o aprimoramento do desempenho da aplicação;
? Trabalhar com tecnologias de ponta em novos projetos, ao mesmo tempo que demonstra flexibilidade para dar suporte a sistemas legados baseados em tecnologias mais antigas.
Requisitos: ? Experiência no desenvolvimento de aplicações utilizando Java
? Habituado(a) a versionar seus projetos com GIT em equipe. Entender como funcionam processos de code review, merge, CI/CD etc.;
? Experiência no desenvolvimento de micro-serviços no padrão REST;
? Experiência no desenvolvimento utilizando testes unitários e de integração;
? Capacidade de transitar entre diferentes tipos de aplicações (APIs, Workers, BFFs);
? Conhecimento em bancos de dados relacionais como PostgreSQL;
? Experiência em troubleshooting de aplicações através do acompanhamento de logs e no uso de ferramentas de monitoramento (APM).
? Produzir código simples, limpo e legível;
? Maturidade para trabalhar em equipes multidisciplinares de alta performance.
Será um diferencial se você conhecer: ? Conhecimento em transações financeiras utilizando o protocolo ISO8583;
? Conhecimento sobre arranjos de pagamento (Mastercard ou Visa);
? Framework jPOS;
? Outras linguagens de programação como: Python;
? Kubernetes / Docker;
? Redis / RabbitMQ;
? Cloud Providers: AWS (Api Gateway e Lambda);
? Tiver atuado anteriormente em fintechs, processadoras de cartão ou similares;
? Tiver disposição e conhecimento para por a mão na massa e ajudar o time quando na linha de frente caso a situação exija;