Descrição do cargo
">
* Ser um profissional dedicado a entregar soluções escaláveis e de alta performance para auxiliar nossos clientes na transformação digital.
">">
Ao assumir esse papel, você estará responsável por:
">
* Pensar em plataformas críticas e otimizá-las para garantir o melhor desempenho possível;
* Desenvolver sistemas que sejam autônomos e monitoráveis, garantindo que as plataformas estejam funcionando corretamente.
">">
Requisitos técnicos
">
* Experiência com programação orientada a objetos e conhecimento em .NET;
* Criar APIs REST e gRPC é fundamental para o sucesso nessa função.
">">
Observabilidade e Monitoramento
">
* Ferramentas como Datadog, New Relic, Kibana e Grafana são fundamentais para coletar métricas e criar dashboards eficientes;
* É essencial entender conceitos de Design Patterns (Factory, Strategy, Observer, CQRS, Event Sourcing) para desenvolver sistemas escaláveis.
">">
Infraestrutura
">
* Mensageria: RabbitMQ, Kafka e Azure Service Bus devem ser utilizados da forma mais adequada possível;
* Bancos de dados: PostgreSQL, SQL Server, MongoDB e Redis devem estar bem configurados para garantir a integridade dos dados.
">">
Resiliência e Performance
">
* Retry com backoff e Circuit Breaker (Resilience4j, Hystrix) devem ser implementados para garantir a resiliência dos sistemas;
* Rate-limiting e Defensive Cache devem ser usados para evitar problemas de desempenho.
">">
Arquitetura orientada a eventos
">
* EDA, Event Sourcing e CQRS devem ser aplicados para garantir a flexibilidade dos sistemas;
* Público/consumo assíncrono com Kafka, RabbitMQ e Azure Service Bus deve ser utilizado para garantir a comunicação entre os sistemas.
">
Título alternativo: Arquiteto(a) de Soluções Escaláveis