[Uberlândia, MG | Remoto] Back-end Developer - Java @ Social Bank

Nossa empresa

O Social Bank é um banco digital cujo propósito é ressignificar os valores da sociedade.

Buscamos tornar o mundo mais justo, ético, transparente e com oportunidades para todos. Nossos produtos são importantes agentes de inclusão financeira, social e digital, ajudando as pessoas a terem uma melhor relação com o dinheiro, transformando suas formas de pensar, de consumir e, consequentemente, gerando relações mais saudáveis e humanas.

Somos um time feito de pessoas que acreditam em pessoas.

Estamos à procura de gente que, além de acreditar, também quer aprender, ensinar, construir, transformar. Buscamos apaixonados por tecnologia, que amam o que fazem e que se sentem realizados quando veem seu trabalho nas mãos dos clientes 📱. Queremos parceiros que, ao lado de outros talentos extraordinários, topem o desafio de transformar positivamente a vida de milhares de pessoas!

Você pode ser parte disso! #VemProSocialBank

Descrição da vaga

Responsabilidades e atribuições: - Colaborar com times tanto de tecnologia quanto de negócio para entregar novas funcionalidades e dar manutenção em nossas aplicações Java; - Trabalhar de forma ágil para disponibilizar serviços REST com alta disponibilidade, escalabilidade e segurança; - Escrever código com qualidade, organização, de fácil manutenção e que siga as melhores práticas de desenvolvimento e padrões do projeto; - Identificar pontos de melhoria em processos e ferramentas de desenvolvimento que possam aumentar a eficiência e a qualidade das entregas de seu time; - Trocar conhecimentos e experiências com seus colegas e ajudar a construir um ambiente respeitoso, agradável e que favoreça tanto o crescimento profissional quanto o pessoal.

Local

Remoto

Requisitos

PARA O NÍVEL JÚNIOR VOCÊ PRECISA: - Conhecer a linguagem Java; - Ter conhecimento básico sobre programação orientada a objetos; - Ter noções de banco de dados relacional.

No nível Júnior, você se destacaria de outros candidatos se: - Tiver seus próprios projetos open source e/ou já tiver trabalhado em algum projeto da comunidade; - Souber como usar o Git; - Tiver conhecimento e/ou experiência com metodologias ágeis.

DE UM CANDIDATO DE NÍVEL PLENO NÓS ESPERAMOS QUE: - Domine Java 8+ e os conceitos de orientação a objetos; - Saiba usar com destreza a IDE de sua escolha, consiga configurar um ambiente de desenvolvimento e faça rodar um projeto Java rapidamente; - Tenha noções de padrões de projeto e de boas práticas de desenvolvimento; - Conheça os frameworks mais importantes da plataforma Java, como Spring, JPA, JUnit, etc.; - Entenda bem o conceito de uma API RESTful; - Saiba criar e expor um endpoint REST; - Tenha conhecimentos sólidos sobre banco de dados relacionais e SQL; - Se vire bem com Git.

Um candidato de nível Pleno se destacaria se: - Tiver seus próprios projetos open source e/ou já tiver trabalhado em algum projeto da comunidade; - Demonstrar conhecimento sobre segurança e design de APIs; - Tiver noções de banco de dados NoSQL; - Souber como configurar diferentes servidores de aplicação; - Souber como criar e rodar testes unitários; - Demonstrar conhecimento sobre ferramentas e processos de CI/CD.

PARA O NÍVEL SÊNIOR NÓS ESPERAMOS QUE VOCÊ: - Domine Java 8+ e demonstre sólidas habilidades de engenharia e de programação; - Aplique conhecimentos de padrões de projeto e consiga arquitetar uma API do zero, bem como propor e implementar refatorações e atualizações em aplicações já existentes; - Domine os principais frameworks usados na comunidade Java, como Spring, JPA, JUnit, etc; - Conheça e saiba como configurar vários servidores de aplicação; - Seja capaz de configurar, criar e rodar testes unitários num projeto Java, bem como conhecer bem o conceito de TDD; - Consiga projetar, criar e manter bases de dados relacionais e não relacionais; - Demonstre sólidos conhecimentos sobre segurança e design de APIs; - Crie e mantenha libs e SDKs proprietárias; - Domine Git; - Domine Gradle / Maven; - Tenha habilidade para trabalhar em áreas fora da sua zona de conforto e demonstrar motivação para crescimento pessoal; - Ajude no crescimento técnico de outros desenvolvedores.

São diferenciais de um candidato de nível Sênior: - Apresentar certificações, projetos pessoais ou open source que demonstrem sua excelência técnica e senso de produto e negócio; - Demonstrar conhecimento sobre ferramentas e processos de CI/CD; - Interesse em inovação e acompanhar as novidades das comunidades de tecnologia, especialmente a de Java.

Benefícios

Contratação

CLT

Como se candidatar

Acesse esta página e faça seu cadastro. Esperamos por você!

Alocação

Regime

Nível

Fonte: https://github.com/backend-br/vagas/issues/5724