Engenheiro de Software Sr. (Java)
PagBank
Descrição da vaga
Quando você pensa em carreira, o que vem à sua mente? Propósito? Colaboração? Ser protagonista para fazer a diferença? No PagBank temos tudo isso e muito mais. 💛 Estamos em busca de pessoas que vistam a camisa com orgulho. Gente com vontade de facilitar a vida financeira das pessoas e impulsionar negócios! Tá a fim de uma carreira que rende mais? Confira essa oportunidade e #VemProPags!Responsabilidades e atribuiçõesAvaliar, discutir e definir arquitetura de sistemas e propor melhorias, promovendo coesão técnica e consistência dos processos de negócio. Traduzir requisitos de negócio em arquiteturas e sistemas. Planejar e executar soluções para plataforma de microsserviços. Garantir o maior nível possível de automação das soluções. Participar da pesquisa e implantação de novas tecnologias. Interagir com outras áreas para garantir a integração das ferramentas. Cuidar da monitoração do ambiente e criar ações proativas que garantam a saúde da plataforma. Interagir com a equipe de segurança para garantir a confiabilidade da plataforma. Criar ferramentas com o intuito de garantir que os recursos estão sendo utilizados de forma consciente. Participar nas melhorias do processo de desenvolvimento técnico do time (DoJo, Pair, entre outras).Requisitos e qualificaçõesSuperior em Tecnologia da Informação ou áreas correlatas. Experiência com desenvolvimento de arquitetura distribuída.Experiência com desenvolvimento de sistemas. Experiência com linguagem de programação Java. Experiência com desenvolvimento para ambiente Unix e Linux. Conhecimento em estrutura de dados, algoritmos e análise de complexidade. Conhecimento em programação concorrente e técnicas para depuração de código. Conhecimento em programação orientada a objetos e Design Patterns,e programação utilizando chamadas REST e JSON. Conhecimento em protocolos de comunicação TCP e UDP. Conhecimento em microsserviços, DevOps, Mesos, Docker, Marathon,e HAProxy. Experiência com bancos de dados relacionais e SQL. Experiência com Spring Boot. Experiência com TDD e BDD. Experiência com testes unitários. Experiência com refactoring de código. Experiência com ferramentas e práticas de monitoração de sistemas como New relic. Conhecimento em plataforma de automação continua, como Jenkins. Inglês técnico. Informações adicionaisPara se destacar nesta posição seria legal se você também tivesse:Experiência com Scrum, Lean ou Kanban. Conhecimento em bancos NoSQL. Experiência com Node.js.Conhecimento em AWS. Conhecimento em GraphQL. Certificação de programador Java.
