Conhecimentos necessários:
- Conhecimento e partilha dos fundamentos do DDD.
- Conhecimentos que lhe permitam participar na conceção da arquitetura de sistemas baseados em serviços distribuídos.
- Conhecimento profundo dos padrões e arquiteturas de desenvolvimento Java.
- Experiência ou conhecimento da arquitetura hexagonal.
- Conhecimentos da estrutura Spring.
- Conhecimentos ou experiência com protobuf e gRPC.
- Conhecimentos de kafka ou de qualquer outro gestor de filas.
- Qualquer conhecimento complementar em gestão de projetos e/ou gestão de projetos é altamente valorizado.
É importante:
- Experiência em participar na conceção da arquitetura de sistemas baseados em serviços distribuídos.
- Experiência demonstrável em ambientes de execução de alto desempenho e concorrência.
- Experiência na conceção e desenvolvimento de APIs.
- Experiência demonstrável no desenvolvimento sob o modelo de integração contínua e revisão de código.
- Experiência na liderança de equipas em ambientes tecnológicos.
Valoriza-se:
- Experiência com Spring.
- Experiência em participar no desenvolvimento de serviços CQRS.
- Experiência no desenvolvimento em tecnologias cloud.
- Experiência na definição de uma estratégia de APIs e conhecimento de especificações standard (OpenAPI, AsyncAPI, RAML, etc).
- Experiência como parte de uma equipa Scrum.
HARD SKILLS
DDD, Java, SCRUM, API first, Spring, OpenAPI, Maven, CI/CD