Responsabilidades e atribuições:
- Desenho e construção de soluções evolutivas e resilientes;
- Acompanhar e controlar débitos técnicos das soluções;
- Participar ativamente na estratégia com o time de produto/negócio;
- Controlar os níveis de obsolescência da plataforma;
- Orientar os membros da equipe por meio de práticas como programação em pares e revisões de código;
- Buscar evolução contínua da tecnologia e solução utilizada;
- Fomentar cultura de revisão de código, DevOps e desenvolvimento seguro;
- Participar de todas as fases do design de sistemas de alta criticidade, analisando os requisitos, propondo novas soluções que agreguem valor para as áreas técnica e de negócios e visando obter melhorias para o produto;
- Garantir a qualidade do código e a observabilidade das métricas de negócio e sistêmicas;
- Estabelecer rotinas de teste unitários e automatizados dos produtos desenvolvidos;
- Prover suporte técnico L3.
Requisitos e qualificações:
O que você precisa ter:
- Experiência em arquitetura de microsserviços;
- Experiência com sistemas de grande complexidade e escala;
- Experiência de desenvolvimento de software web com linguagens como PHP e frameworks relacionados;
- Experiência de desenvolvimento de software web com linguagens como Golang e frameworks relacionados;
- Domínio em versionamento de código via Gitlab/Github;
- Experiência com boas práticas: SOLID, Clean Code, Design Patterns
- Experiência em banco de dados relacionais e não relacionais (MySQL, DynamoDB, DocumentDB);
- Desejável experiência em banco de dados chave-valor, como o Redis
- Conhecimento de HTML, Javascript, CSS e frameworks de front-end;
- Experiência em arquitetura event-driven, mensageria e orientação a eventos (Kafka, AMQ, SQS, SNS.. etc);
- Conhecimento de testes automatizados e testes unitários e conceitos de desenvolvimento seguro;
- Inglês técnico;
- Experiência com monitoramento e observabilidade (APM, logs, métricas, tracing).
É desejável e será um diferencial:
- Conhecimento em metodologias ágeis (Kanban, Scrum, etc);
- Familiaridade com esteiras de CI/CD, Docker e Terraform;
- Experiência em soluções Cloud (AWS);
- Programação de sistemas de grande complexidade;
- Apoio na tomada de decisão técnica (escalabilidade, performance, trade-offs).