Descrição
Procuramos um(a) Engenheiro(a) de Software Java Sênior com sólida experiência em sistemas financeiros de missão crítica para integrar o time de Pix. O desafio consiste em projetar, desenvolver e monitorar soluções resilientes de Pix utilizando Spring Boot e Google Cloud Platform (GCP). Você será peça-chave na definição da arquitetura de microsserviços orientada a eventos, na implementação de esteiras automatizadas de CI/CD, nas melhores práticas de segurança e na garantia de observabilidade ponta a ponta da aplicação.
Responsabilidades e atribuições
- Atuar no desenvolvimento e manutenção de aplicações;
- Participar da análise técnica, estimativas e definição de soluções junto com o time, Tech Lead e Arquiteto;
- Garantir a qualidade e desempenho das soluções através de boas práticas de codificação, testes automatizados e revisão de código;
- Trabalhar de forma colaborativa com times multidisciplinares (QA, Produto, DevOps, Arquitetura, SI);
- Contribuir para a evolução da arquitetura e padrões técnicos do time;
- Participar da monitoração ativa das aplicações, colaborando na identificação e resolução de incidentes;
Requisitos e qualificações
Desenvolvimento e Linguagem
- Experiência sólida em Java (versões recentes, preferencialmente 11 ou superior).
- Domínio do framework Spring Boot e seus módulos principais: Spring Data, Spring Security, Spring Cloud (para microserviços).
- Conhecimento avançado de arquitetura de microserviços, incluindo princípios de desacoplamento e comunicação entre serviços (ex.: REST, gRPC).
- Experiência com mensageria/eventos usando Kafka ou RabbitMQ.
- Práticas de Clean Code e Design Patterns (ex.: Factory, Singleton, Strategy).
- Experiência com Testes Automatizados:
- Unitários (JUnit, Mockito).
- Integração (Testcontainers, Spring Test).
Versionamento e Integração Contínua
- Domínio de Git e workflows de versionamento (ex.: GitFlow, trunk-based development).
- Conhecimento profundo em CI/CD pipelines:
- Experiência prática com ferramentas como GitLab CI/CD, Jenkins, ou GitHub Actions.
Segurança
- Experiência com melhores práticas de segurança em desenvolvimento:
- Implementação de autenticação e autorização (OAuth 2.0, JWT, OpenID Connect).
- Validação e sanitização de entradas.
- Proteção contra vulnerabilidades comuns (ex.: OWASP Top 10).
- Conhecimento em segurança de APIs e hardening de microserviços.
Observabilidade
- Experiência com monitoramento e rastreamento distribuído em arquiteturas de microserviços:
- Log Aggregation (ex.: ELK Stack, Google Cloud Logging).
- Tracing (ex.: OpenTelemetry, Jaeger, Zipkin).
- Monitoring (ex.: Prometheus, Grafana, Google Cloud Monitoring).
- Implementação de métricas de desempenho e alertas.
Infraestrutura
- Experiência com Google Cloud Platform (GCP):
- Compute Engine, Cloud Run, ou GKE (Google Kubernetes Engine).
- Pub/Sub para comunicação assíncrona entre serviços.
- Cloud SQL ou Firestore para persistência de dados.
- IAM (Identity and Access Management) para controle de permissões.
- Conhecimento em Infraestrutura como Código (IaC): Ferramentas como Terraform ou Pulumi.
- Configuração de ambientes utilizando templates bem definidos.
Cultura DevOps
- Familiaridade com práticas de DevSecOps, incluindo integração de ferramentas de segurança em pipelines.
- Experiência com containers (Docker) e orquestração de containers (Kubernetes).
- Capacidade de trabalhar em times ágeis (Scrum, Kanban).