Tech Lead Java
Innvo Labs
Job Description
Estamos em busca de um(a) Tech Lead Java para atuar na liderança técnica de times de desenvolvimento, contribuindo para a evolução arquitetural das soluções, definição de padrões técnicos e desenvolvimento de sistemas robustos, escaláveis e de alta disponibilidade.
Buscamos uma pessoa com forte experiência em Java e desenvolvimento backend, visão de arquitetura, capacidade de tomada de decisão e habilidade para orientar tecnicamente o time, promovendo boas práticas de engenharia e qualidade de software.
Principais responsabilidades
- Liderar tecnicamente o time de desenvolvimento, apoiando decisões e direcionamentos técnicos.
- Definir e evoluir arquiteturas de sistemas, considerando escalabilidade, performance, segurança e disponibilidade.
- Atuar diretamente no desenvolvimento e revisão de código quando necessário.
- Definir padrões, boas práticas e guidelines de desenvolvimento.
- Realizar code reviews e apoiar a evolução técnica dos desenvolvedores.
- Identificar riscos técnicos e propor soluções para problemas complexos.
- Trabalhar em conjunto com Product Managers, Arquitetos, DevOps, QA e demais áreas.
- Apoiar decisões relacionadas à escolha de tecnologias, frameworks e ferramentas.
- Promover práticas de engenharia como Clean Code, SOLID, Design Patterns, TDD e automação de testes.
- Garantir a qualidade, manutenibilidade e evolução das aplicações.
- Apoiar o planejamento técnico das entregas e estimativas de esforço.
- Atuar na investigação e resolução de problemas críticos em produção.
- Incentivar a evolução técnica e o compartilhamento de conhecimento dentro do time.
Requisitos
- Experiência sólida com desenvolvimento Java.
- Experiência atuando como Tech Lead, Líder Técnico ou em posição de referência técnica.
- Conhecimento avançado de Java 8+, preferencialmente Java 11/17/21.
- Experiência com Spring Boot e Spring Framework.
- Conhecimento de desenvolvimento de APIs REST e microsserviços.
- Experiência com bancos de dados relacionais, como Oracle, PostgreSQL ou SQL Server.
- Conhecimento de bancos NoSQL será considerado diferencial.
- Experiência com mensageria, como Kafka ou RabbitMQ.
- Conhecimento de Docker e Kubernetes.
- Experiência com práticas de CI/CD e DevOps.
- Conhecimento de Git e estratégias de versionamento.
- Experiência com testes automatizados e ferramentas de qualidade de código.
- Conhecimento de conceitos de arquitetura de software, Design Patterns e princípios SOLID.
- Boa capacidade de comunicação e influência técnica.
Diferenciais
- Experiência com ambientes de alta volumetria e sistemas críticos.
- Experiência com AWS, Azure ou GCP.
- Conhecimento de arquiteturas event-driven.
- Experiência com DDD, Clean Architecture ou Hexagonal Architecture.
- Conhecimento de observabilidade, incluindo logs, métricas e tracing.
- Experiência com Terraform e práticas de Infrastructure as Code.
- Experiência em ambientes financeiros, bancários ou de grande escala.
- Conhecimento de arquitetura orientada a eventos e sistemas distribuídos.