*Atenção: esta oportunidade é para atuação em uma empresa parceira da GeekHunter.
Requisitos Obrigatórios:
Backend & Arquitetura
- Experiência sólida com Node.js e TypeScript
- Desenvolvimento e manutenção de APIs RESTful escaláveis
- Bom domínio de Programação Orientada a Objetos (POO)
- Aplicação consistente de princípios SOLID e boas práticas de engenharia
- Experiência prática com Clean Architecture, Arquitetura Hexagonal ou similares
- Conhecimento em design de sistemas distribuídos e integração entre serviços
Banco de Dados
- Modelagem e otimização de bancos de dados relacionais (PostgreSQL, MySQL, etc.)
- Experiência com ORMs como Sequelize e/ou Drizzle ORM
Testes & Qualidade
- Escrita de testes unitários e de integração, com uso de mocks
- Atenção à testabilidade do código
- Vivência com TDD é considerada diferencial
Cloud & AWS
- Experiência com AWS e conceitos de Cloud Computing
Mensageria & Processamento Assíncrono
- Implementação de fluxos assíncronos e estratégias de resiliência
- Conceitos como retry, DLQ, circuit breaker e idempotência
- Experiência com filas e/ou streams (SQS, RabbitMQ, Kafka, etc.)
DevOps & Engenharia
- Participação em pipelines de CI/CD (GitHub Actions, GitLab CI, AWS CodePipeline)
- Noções de Infraestrutura como Código (Terraform, AWS CDK ou Serverless Framework)
- Uso de Git, versionamento e padrões de branching (GitFlow ou similares)
Requisitos Desejáveis:
- Experiência com arquiteturas orientadas a eventos
- Conhecimento ou aplicação de Domain-Driven Design (DDD)
- Vivência em arquitetura de microserviços
- Experiência com monitoramento e rastreabilidade distribuída
- Conhecimentos em segurança, OWASP e boas práticas de hardening
- Atuação como referência técnica, tech lead informal ou apoio a decisões técnicas
- Forte cultura de clean code, documentação e code reviews
- Familiaridade com Scrum e/ou Kanban
Responsabilidades
- Desenvolver funcionalidades de média a alta complexidade, integrações e serviços backend
- Projetar, evoluir e manter APIs e serviços críticos para o negócio
- Garantir qualidade, testabilidade, resiliência e observabilidade das entregas
- Apoiar na modernização ou refatoração de componentes legados quando necessário
- Participar ativamente de code reviews, contribuindo para a evolução técnica do time
- Sugerir e implementar melhorias em pipelines, processos e automações
- Zelar pela padronização técnica e boas práticas do ecossistema
- Trabalhar de forma próxima com Product Managers, Designers e demais engenheiros
- Contribuir para decisões técnicas de forma colaborativa e bem fundamentada
- Apoiar e orientar desenvolvedores menos experientes
- Participar de cerimônias ágeis e promover uma cultura de melhoria contínua