Arquiteto de Software Java Sênior (Especialista em Estabilidade e Performance)
Sobre a Vaga
Estamos buscando um(a) Arquiteto(a) de Software Java Sênior, Especialista em Estabilidade e Performance, com forte experiência prática em desenvolvimento e, principalmente, histórico comprovado de tomada de decisões arquiteturais.
Essa posição fará parte de um time de Arquitetura e Engenharia responsável por apoiar diferentes produtos e desafios tecnológicos, atuando desde a análise de problemas complexos até a definição, evolução e validação de soluções arquiteturais.
Buscamos alguém que não seja apenas capaz de implementar uma arquitetura previamente definida, mas que tenha experiência em avaliar cenários, estudar alternativas, analisar trade-offs e decidir qual abordagem técnica faz mais sentido para cada contexto.
Responsabilidades
- Arquitetura e tomada de decisão
- Analisar problemas técnicos e propor diferentes alternativas de solução;
Definir arquiteturas e padrões técnicos considerando requisitos funcionais e não funcionais;
Avaliar trade-offs relacionados a performance, escalabilidade, disponibilidade, confiabilidade, complexidade, custo e manutenibilidade;
Tomar e sustentar decisões arquiteturais com base em critérios técnicos e evidências;
- Documentar decisões, premissas, alternativas avaliadas e respectivos impactos;
- Revisar arquiteturas existentes e propor evoluções quando necessário;
Avaliar novas tecnologias e determinar quando sua adoção é tecnicamente justificável.
- Desenvolvimento e atuação hands-on
- Atuar diretamente no desenvolvimento de soluções Java/Spring Boot;
- Participar de provas de conceito, protótipos e validações técnicas;
- Revisar código e orientar tecnicamente os desenvolvedores;
Investigar problemas complexos de produção e atuar na identificação de causa raiz;
Garantir que as decisões arquiteturais sejam viáveis na prática e não apenas conceituais.
- Performance, estabilidade e resiliência
- Analisar gargalos de performance e comportamento de sistemas sob carga;
- Definir estratégias para alta disponibilidade, escalabilidade e resiliência;
Avaliar mecanismos de timeout, retry, idempotência, controle de concorrência e backpressure;
- Apoiar testes de carga, estresse e performance;
Identificar e solucionar problemas relacionados a integrações, processamento e comunicação entre serviços;
Avaliar gargalos relacionados a banco de dados, queries, índices, pools de conexão e transações.
- Integrações e sistemas distribuídos
- Projetar e evoluir integrações entre sistemas e serviços;
- Trabalhar com APIs, mensageria e comunicação síncrona e assíncrona;
Avaliar diferentes padrões de comunicação de acordo com o contexto e os requisitos da solução;
- Atuar em cenários envolvendo microsserviços e sistemas distribuídos;
Considerar observabilidade e rastreabilidade como parte da arquitetura da solução.
Requisitos
- Experiência sólida com Java e Spring Boot;
Experiência comprovada atuando em arquitetura de software, não apenas na implementação de arquiteturas previamente definidas;
- Histórico de participação ou liderança em decisões arquiteturais relevantes;
- Experiência com desenvolvimento de APIs e integrações;
- Experiência com sistemas distribuídos e microsserviços;
- Conhecimento de mensageria, como Kafka, RabbitMQ ou AWS SQS;
- Experiência ou conhecimento em gRPC e Protocol Buffers;
Experiência com testes automatizados de backend, como JUnit, RestAssured e WireMock;
- Experiência com testes de carga e estresse, como JMeter, Gatling ou k6;
- Conhecimento de banco de dados, incluindo análise de queries, índice
Requisitos
Benefícios
Não informado.
Vagas semelhantes para você
Selecionadas com base na tecnologia, modalidade, nível e localização desta oportunidade.