Descrição do Cargo
O cargo de Arquiteto(a) de Software .NET busca alguém para atuar em projetos estratégicos, com foco em escalabilidade, alto desempenho e inovação tecnológica. As responsabilidades incluem planejar, otimizar e manter plataformas críticas, propor melhorias e reconstruções de infraestrutura, colaborar com Engenharia na resolução de problemas e desenvolver sistemas escaláveis, monitoráveis e autônomos.
Responsabilidades
* Planejar, otimizar e manter plataformas críticas;
* Propor melhorias e reconstruções de infraestrutura;
* Colaborar com Engenharia na resolução de problemas;
* Desenvolver sistemas escaláveis, monitoráveis e autônomos;
* Garantir a integração e funcionamento das plataformas.
Técnicas Específicas
* Programação orientada a objetos com domínio em .NET;
* Experiência na criação de APIs REST e gRPC.
Boas Práticas
* Aplique SOLID, KISS, Arquitetura Hexagonal e Limpa;
* Conhecimento em Design Patterns (Factory, Strategy, Observer, CQRS, Event Sourcing).
Observabilidade e Monitoramento
* Ferramentas como Datadog, New Relic, Kibana, Grafana;
* Coleta de métricas, logs estruturados, dashboards e alertas.
Infraestrutura
* Mensageria: RabbitMQ, Kafka, Azure Service Bus;
* Bancos de dados: PostgreSQL, SQL Server, MongoDB, Redis;
* Cache: Redis, Memcached;
* Segurança: Vault, Secrets Manager, Kubernetes (ConfigMaps e Secrets);
* Jobs assíncronos: Workers, Locks Distribuídos (Redlock, Zookeeper).
Resiliência e Performance
* Retry com backoff, Circuit Breaker (Resilience4j, Hystrix), DLQ, Rate-limiting, Defensive Cache.
Arquitetura Orientada a Eventos
* EDA, Event Sourcing, CQRS;
* Pública/consumo assíncrono com Kafka, RabbitMQ, Azure Service Bus.