CARGO: Desenvolvedor Fullstack Sênior Java
SOBRE A OPORTUNIDADE:
Estamos em busca de um(a) Desenvolvedor(a) Full Stack Sênior, com forte experiência em Back-end Java, para atuar no desenvolvimento e na evolução de aplicações, contribuindo com decisões técnicas, arquitetura de software, qualidade e performance das soluções.
PRINCIPAIS RESPONSABILIDADES:
- Desenvolvimento e evolução de aplicações Back-end Java com integração ao Front-end, criação e manutenção de APIs REST, microsserviços e processos batch.
- Atuação em arquitetura, escalabilidade, segurança e performance, aplicando boas práticas como Clean Code, SOLID, Design Patterns, TDD e BDD.
- Integração entre sistemas, bancos de dados e mensageria, garantindo qualidade por meio de testes automatizados.
- Monitoramento e otimização contínua das aplicações, participação em decisões técnicas, apoio ao desenvolvimento da equipe e implementação de soluções baseadas em Inteligência Artificial para aumento da eficiência e produtividade.
REQUISITOS OBRIGATÓRIOS:
- Experiência sólida com Java 17 ou superior.
- Domínio de Spring Boot e desenvolvimento de APIs REST.
- Experiência com Spring Batch e processamento de lotes.
- Conhecimento do ecossistema Spring, incluindo Spring Data, Spring Security, Spring Cache e métricas.
- Arquitetura e qualidade de software.
- Experiência com microsserviços e/ou arquitetura hexagonal.
- Conhecimento de Domain-Driven Design (DDD), SOLID e Clean Code.
- Experiência com testes automatizados utilizando JUnit e Mockito.
- Conhecimento de TDD, BDD, Code Review e ferramentas de análise de qualidade, como SonarQube.
- Bancos de dados e mensageria.
- Experiência com PostgreSQL.
- Conhecimento de MongoDB ’.
- Experiência com ferramentas de mensageria, como Kafka e/ou RabbitMQ.
- Cloud, infraestrutura e DevOpsExperiência com AWS, especialmente EKS, S3, VPC e Security Groups.
- Conhecimento de Docker e Kubernetes.
- Experiência com pipelines CI/CD, Git, GitHub Actions, Gitflow e Maven.
Conhecimentos desejáveis
- Conhecimento em Node.js e TypeScript.
- Experiência com Appsmith e desenvolvimento utilizando JavaScript.
- Vivência com Temporal para orquestração de fluxos de trabalho.
- Experiência com ferramentas de observabilidade, como OpenSearch, Grafana e Dynatrace.
- Utilização prática de ferramentas de Inteligência Artificial generativa, como Claude, Gemini e modelos da OpenAI, aplicadas ao desenvolvimento de software.
- Conhecimento de Spec-Driven Development (SDD), incluindo Spec Kit.
- Experiência com metodologias ágeis, como Scrum e Kanban.
- Familiaridade com Jira, Confluence e Swagger.