Profissional dedicado na carreira de engenharia de software com experiência em desenvolvimento de software em times ágeis.
Deve possuir conhecimentos de frameworks de programação em Java, mas além disso de conceitos de programação, incluindo Design Patterns de orientação a objeto (Gof), programação distribuída, e Integração de Sistemas (EAI) como: orientada a mensagens e API's.
**Requisitos técnicos obrigatórios**
- Java 11+;
- Spring framework;
- Spring Boot framework;
- Containers Docker;
- Google Cloud Functions ou AWS Lambda;
- Integrações por API's REST e SOAP;
- Banco de dados NoSQL e RDBMS (Oracle e Postgree);
- Banco de dados de Cache - Ex: REDIS, ElasticSearch
- Conceitos de Controle de Versão - Git;
- Experiência com desenvolvimento de software distribuidos;
- Experiência com arquitetura de microserviços e serveless;
- Experiência com desenvolvimento orietado a mensagens (kafka, GCP Pub/Sub);
- Testes unitários;
- Clean Code e TDD.
**Requisitos técnicos desejáveis**
- Conhecimentos em Google Firestore;
- Arquitetura orientada à Eventos;
- Ferramentas de DevOps (Jenkins, Sonar, Dynatrace, etc.
);
- Conhecimentos com solução de arquitetura de sistema;
- Conhecimentos com ferramentas de testes automatizados;
- Conhecimento de negócio (Seguros em gerais);
- Conhecimentos em outra plataforma de desenvolvimento.
**Competências/ Habilidades**
- Espírito de dono: responsabilidade de todos.
- Centralidade no cliente: sempre colocar o cliente no centro das nossas entregas, sempre objetivando valor agregado.
- Movido por inovação: questionar e provocar mudanças, para gerar inovação.
Tudo, por menor que seja, está sujeito a inovação e melhorias.
- Colaboração: promover interação e colaboração entre as pessoas do time.