Descrição da Vaga
Buscamos um(a) Desenvolvedor(a) .NET Sênior com forte experiência em engenharia de software, arquitetura backend e desenvolvimento de aplicações robustas, escaláveis e de alta qualidade. A posição exige um profissional com profundidade técnica no ecossistema .NET, capacidade de tomar decisões arquiteturais, autonomia para conduzir problemas complexos e maturidade para contribuir tecnicamente com outros desenvolvedores. O profissional atuará em um ambiente com arquitetura distribuída, microsserviços, APIs, mensageria, observabilidade e práticas modernas de engenharia de software.
Responsabilidades
- Desenvolver e evoluir aplicações backend utilizando .NET.
- Projetar APIs REST robustas, seguras, performáticas e escaláveis.
- Participar da definição e evolução da arquitetura das aplicações.
- Desenvolver soluções baseadas em microsserviços.
- Implementar integrações síncronas via APIs e assíncronas via mensageria.
- Modelar domínios, regras de negócio e estruturas de dados.
- Garantir separação adequada de responsabilidades entre as diferentes camadas da aplicação.
- Aplicar princípios de Clean Architecture, SOLID, Clean Code, CQRS e DDD.
- Implementar mecanismos de resiliência para serviços distribuídos.
- Desenvolver e manter testes unitários e de integração.
- Implementar mecanismos de autenticação e autorização.
- Trabalhar com bancos de dados relacionais e NoSQL.
- Implementar observabilidade, tracing, métricas e logs.
- Investigar problemas e gargalos em ambientes produtivos.
- Participar ativamente de code reviews.
- Apoiar decisões técnicas do time.
- Contribuir para evolução dos padrões e práticas de engenharia.
- Compartilhar conhecimento e apoiar o desenvolvimento técnico de outros profissionais.
- Participar de reuniões e discussões técnicas em inglês.
- Documentar decisões, componentes, APIs e arquiteturas de forma clara.
Requisitos
- ✓Experiência sólida com .NET 8 ou superior, C#, ASP.NET Core, Minimal APIs e/ou Controllers.
- ✓Experiência com desenvolvimento de aplicações de alta disponibilidade, escaláveis e distribuídas.
- ✓Conhecimento em programação assíncrona, Dependency Injection, Middleware, Exception handling, Configuration e Options Pattern, Background Services.
- ✓Experiência consistente na construção e evolução de APIs REST, incluindo design, verbos e status HTTP, modelagem de recursos, paginação, filtros, ordenação, versionamento, health checks, tratamento padronizado de erros, validação de requests, idempotência, documentação de APIs (Swagger/OpenAPI), evolução de contratos e segurança/performance de endpoints.
- ✓Forte domínio de conceitos de Arquitetura de Software: Clean Architecture, SOLID, Clean Code, CQRS, Domain-Driven Design (DDD), Design Patterns, Dependency Injection, Separation of Concerns, Microsserviços, Arquiteturas orientadas a eventos e Integração entre sistemas.
- ✓Experiência com CQRS e domínio: separação entre Commands e Queries, MediatR ou abordagem equivalente, Handlers, Pipeline Behaviors, FluentValidation, modelagem de domínio, encapsulamento de regras de negócio, Entidades, Value Objects, Domain Services, Application Services, Eventos de domínio e Invariantes de negócio.
- ✓Experiência com bancos de dados relacionais (PostgreSQL, SQL Server), incluindo modelagem relacional, normalização, índices, queries, transações, concorrência e otimização de consultas.
- ✓Experiência com bancos de dados NoSQL (MongoDB), incluindo modelagem orientada a documentos, estratégias de consulta e indexação.
- ✓Conhecimento sólido em Entity Framework Core, DbContext, mapeamento de entidades, Fluent API, relacionamentos, Tracking e No Tracking, Queries, Migrations, estratégias de atualização de banco, performance, transações e concorrência.
- ✓Experiência com mensageria e arquitetura orientada a eventos: Azure Service Bus, Filas, Topics e Subscriptions, Producers e Consumers, Eventos de integração, processamento assíncrono, Event-driven architecture, Retry, Dead-letter queues, Idempotência, tratamento de mensagens duplicadas, consistência eventual e tratamento de falhas em ambientes distribuídos.
- ✓Conhecimento prático com Polly ou ferramentas equivalentes para implementação de Retry, Circuit Breaker, Timeout, Fallback e controle de falhas transitórias.
- ✓Experiência com segurança de APIs: OAuth 2.0, OpenID Connect, JWT, Azure AD / Microsoft Entra ID, Keycloak, Claims, Roles, Scopes, Policies, Authentication, Authorization, Token validation, Refresh tokens e segurança de endpoints.
- ✓Experiência com testes automatizados: xUnit ou NUnit, testes unitários, testes de integração, mocking, testes de handlers, testes de regras de domínio, testes de APIs, WebApplicationFactory e estratégias de isolamento de dependências.
- ✓Experiência com observabilidade: OpenTelemetry (Traces, Metrics, Logs, Distributed tracing, Instrumentação, Propagação de contexto entre serviços).
- ✓Experiência com containers e infraestrutura: Docker, Dockerfile, Docker Compose, Kubernetes, configuração por ambiente, gerenciamento de secrets, health checks e deploy de aplicações distribuídas.
- ✓Experiência com versionamento e colaboração: Git, GitFlow, Pull Requests, Merge Requests, Branching strategies, Code review, resolução de conflitos e boas práticas de commits.
- ✓Nível de inglês intermediário (B1) para participação em reuniões e discussões técnicas.
- •Experiência desejada com Datadog (APM, Logs, Distributed tracing, Dashboards, Monitoramento, Análise de erros, Investigação de problemas em produção, Identificação de gargalos de performance).
- •Experiência desejável com CI/CD: Azure DevOps, GitHub Actions, Pipelines de build, Pipelines de testes, Deploy automatizado, Quality gates e Gestão de ambientes.
- •Experiência desejável com Microsoft Azure (Azure App Service, Azure Kubernetes Service — AKS, Azure Service Bus, Azure SQL, Storage, Key Vault, Azure Monitor, Application Insights, Microsoft Entra ID).
- •Conhecimento desejável em qualidade contínua: SonarQube, Análise estática, Code smells, Technical debt, Code coverage, Quality gates e Analyzers do .NET.
- •Conhecimento ou experiência desejável com React, TypeScript, consumo de APIs, integração frontend/backend, contratos de APIs e autenticação em aplicações SPA.
- •Conhecimento de Node.js e Drupal será considerado diferencial.
- •Experiência com integração de APIs de IA generativa (Azure OpenAI, OpenAI API, integração de LLMs em aplicações, consumo de APIs de modelos, Prompt orchestration, tratamento de respostas, segurança e controle de dados enviados para modelos, observabilidade e controle de custos de integrações com IA) será considerado diferencial.
- •Experiência avançada com DDD (Bounded Contexts, Context Mapping) será considerado diferencial.
- •Experiência com modernização ou migração de plataformas/sistemas legados será considerado diferencial.
- •Atuação anterior como Tech Lead ou referência técnica será considerado diferencial.
- •Experiência desenvolvendo outros profissionais será considerado diferencial.
Categorias
Sobre a Empresa
Mais vagas na mazzatech →Mazzatech is a global IT professional services company partnering with you to provide solutions to your project’s requirements and challenges in today’s highly competitive technology environment. We supply integrated IT services ecosystems, designed with your business success in mind, for toda...[Ver Mais]
Informações Adicionais
Você será redirecionado para o site da empresa