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
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;
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);
Desejável experiência como o InfluxDB;
Familiaridade com esteiras de CI/CD, Docker e Terraform;
Experiência em soluções Cloud (AWS);
Programação de sistemas de grande complexidade;
Desejável experiência em outras linguagens programação, como: .Net, Node.js, Python, Java, etc;
Mentoria e liderança técnica (código, boas práticas, onboarding);
Tomada de decisão técnica (escalabilidade, performance, trade-offs).