Principais Responsabilidades
- Conduzir o desenvolvimento de APIs, aprimorando e otimizando nossa solução de API atual, e direcionando o desenvolvimento da solução de API para o futuro.
- Trabalhar em integrações de API com partes externas e garantir que o processo de integração seja simplificado.
- Documentar procedimentos técnicos e criar guias de integração e de usuários, mantendo registros precisos das configurações e alterações das APIs.
- Colaborar com parceiros externos para comunicar e resolver questões relacionadas a APIs.
- Identificar e solucionar problemas de rede e sistema, fornecendo soluções rápidas e eficazes para minimizar o tempo de inatividade.
- Participar da implementação e integração de novas tecnologias e atualizações na infraestrutura existente além das funções de API.
Requisitos
Sólido conhecimento em desenvolvimento de API
- NodeJS, TypeScript, NestJS, React
- Construção de APIs RESTful com NestJS
- Desenvolvimento de microserviços e funções serverless com Node.js
- Construção de aplicações de página única com React
- Ferramentas como MongoDB e Swagger
- Experiência com MongoDB Atlas para bancos de dados em nuvem
- Proficiência no uso do Swagger para documentação e testes de API
- Serviços backend (Para construir a API)
- Proficiência em Express.js, NestJS ou outros frameworks Node.js para construção de APIs
- Experiência com camadas de acesso a dados (ORMs como Mongoose, TypeORM) e bibliotecas de validação de dados
- Front end (Para consumir a API)
- Sólido conhecimento em React e React Hooks para construção de interfaces de usuário
- Familiaridade com bibliotecas de gerenciamento de estado como Redux ou React Context API
- Experiência em realizar chamadas de API utilizando clientes HTTP
- Banco de dados (Para armazenar os dados da API)
- Proficiência em trabalhar com MongoDB para armazenar e recuperar dados da API
- Experiência com bancos de dados relacionais como PostgreSQL, MySQL ou SQL Server
- Conhecimento sobre modelagem de dados, design de esquemas e melhores práticas de gerenciamento de banco de dados
- Conhecimento em nuvem (Para hospedar a API)
- Implantação e gerenciamento de APIs em plataformas de nuvem, principalmente GCP
- Familiaridade com tecnologias de containerização como Docker e ferramentas de orquestração como Kubernetes
- Autenticação e Segurança (OAuth, JWT)
- Implementação do OAuth 2.0 e OpenID Connect para autenticação segura
- Utilização de JSON Web Tokens (JWT) para autenticação e autorização sem estado
- Técnicas de Cache, Otimização de Desempenho
- Implementação de estratégias de cache como cache do lado do cliente e cache do lado do servidor (Redis)
- Otimização do desempenho da API através de técnicas como paginação, compressão de dados e balanceamento de carga
- Monitoramento e Alerta
- Experiência com ferramentas de monitoramento como Prometheus, Grafana ou serviços de monitoramento nativos da nuvem
- Configuração de processos de alerta e resposta a incidentes para questões de saúde e desempenho da API
- Gerenciamento de API Gateway e Active Directory
- Configuração e gerenciamento de API Gateways como AWS API Gateway ou Azure API Management
- Integração com Active Directory ou outros sistemas de gerenciamento de identidade para autenticação e autorização de usuários
- Gerenciamento de lançamentos
- Implementação de pipelines de integração contínua e entrega contínua (CI/CD)
- Familiaridade com ferramentas de gerenciamento de lançamentos como pipelines GitLab, GitHub Actions ou serviços de CI/CD nativos da nuvem
Desejável
- Experiência com sistemas Linux, incluindo sistema de arquivos, redes, ajuste de kernel, iptables, correções.
- Experiência em gerenciamento e solução de problemas de rede
- Experiência com Docker, Ansible e Terraform
- Compreensão de conceitos de Blockchain e Infraestrutura de Blockchain (Validadores e Nós RPC, em particular)