Descrição da vaga
- Projetar e implementar arquiteturas de confiabilidade para plataformas distribuídas Edge-to-Cloud.
- Conduzir iniciativas de melhoria de confiabilidade em todo o ecossistema de software.
- Desenvolver provas de conceito para validar novas tecnologias e melhorias arquiteturais.
- Projetar mecanismos resilientes de comunicação para redes industriais, incluindo Zigbee, Ethernet, VPN, MQTT e conectividade com a nuvem.
- Melhorar a entrega de mensagens utilizando mecanismos de retry, store-and-forward, filas, sincronização, garantias de ordenação e detecção de duplicidade.
- Desenvolver componentes tolerantes a falhas, incluindo monitoramento de saúde da aplicação, watchdogs, heartbeat, recuperação automática e estratégias de degradação controlada.
- Desenvolver soluções de observabilidade utilizando métricas, logs estruturados, rastreamento distribuído (distributed tracing), dashboards e indicadores de saúde operacional.
- Criar frameworks para validação de confiabilidade utilizando fault injection, simulação de falhas de rede, testes de estresse, testes de longa duração (endurance), testes de recuperação e práticas de Chaos Engineering.
- Investigar problemas complexos em produção envolvendo falhas de comunicação, latência, falhas intermitentes, problemas de sincronização e indisponibilidade prolongada.
- Liderar análises de causa raiz (Root Cause Analysis - RCA) e implementar ações corretivas permanentes.
- Definir e monitorar indicadores de confiabilidade (KPIs), como disponibilidade, MTBF, MTTR, tempo de recuperação, latência e taxa de sucesso na comunicação.
- Trabalhar em conjunto com as equipes de Engenharia de Plataforma e Cibersegurança para garantir que as arquiteturas de infraestrutura, segurança e confiabilidade estejam alinhadas.
- Produzir documentação de arquitetura, padrões de engenharia, diretrizes de desenvolvimento e estratégias de validação.
- Atuar como mentor das equipes de desenvolvimento em práticas de Engenharia de Confiabilidade de Software, promovendo melhoria contínua durante todo o ciclo de vida do produto.
- Contrato CLT;
- Remuneração competitiva;
- Modelo híbrido em Sorocaba-SP;
- Mais de 8 anos desenvolvendo sistemas de software complexos.
- Experiência no desenvolvimento de plataformas distribuídas ou soluções industriais de IoT.
- Experiência com sistemas altamente disponíveis, resilientes e tolerantes a falhas.
- Experiência em troubleshooting de sistemas compostos por múltiplos componentes em ambiente de produção.
- Experiência na realização de análise de causa raiz e implementação de melhorias permanentes de confiabilidade.
- Experiência na construção de provas de conceito para validação de decisões arquiteturais.
- Linux (Ubuntu)
- Arquitetura de software distribuído
- TCP/IP, MQTT, Zigbee e protocolos de comunicação industrial
- Engenharia de confiabilidade, tolerância a falhas e mecanismos de recuperação
- Observabilidade (métricas, logs e distributed tracing)
- Análise de desempenho e troubleshooting
- Fundamentos de redes
- Padrões de projeto de software e concorrência
- Conceitos básicos de cibersegurança para sistemas distribuídos
Buscamos uma pessoa para atuar como Sr Software Reliability Engineer (SRE) na área de energia e recursos naturais, localizada em Sorocaba. A posição envolve garantir a confiabilidade e a eficiência dos sistemas tecnológicos, promovendo melhorias contínuas.