/teste-back-end

Desafio para admissão ao time de Back-End da Tech Pro Bem.

Primary LanguageJavaScript

Tech Pro Bem - Teste Back-End

Desafio para admissão ao time de Back-End da Tech Pro Bem.

Objetivo

  • Desenvolver e expor CRUD via API REST para gerenciar dados de voluntários e apresentar os níveis de crescimento para se tornar um programador com uma bagagem técnica maior.

Funcionalidades

  • Lambda para criar um voluntário (POST);
  • Lambda para atualizar um voluntário (PUT);
  • Lambda para excluir um voluntário (DELETE);
  • Lambda para resgatar um voluntário (GET).

Você tem as opções de entregar o teste baseado nos níveis apresentados abaixo:

Nível 1 (obrigatório):

  • Node;
  • JavaScript;
  • MongoDB.

Nível 2:

  • Node;
  • TypeScript;
  • MongoDB;
  • Códigos HTTP de resposta condizente -> 200, 201, 400, 401, 403 (esses últimos são usados caso você opte colocar JWT), 500 e outros.

Nível 3:

  • Node;
  • TypeScript;
  • Códigos HTTP.
  • AWS API Gateway;
  • AWS Lambda;
  • DynamoDB;

Nível 4:

  • Node;
  • TypeScript;
  • Códigos HTTP.
  • Serverless framework;
  • AWS API Gateway;
  • AWS Lambda;
  • DynamoDB;

Nível 5:

  • Node;
  • TypeScript;
  • Códigos HTTP.
  • Serverless framework;
  • AWS API Gateway;
  • AWS Lambda;
  • DynamoDB;
  • SOLID (não necessariamente todos);
  • JWT;
  • Clean Code.

Também diferenciais independente dos níveis:

  • Clean Code.
  • Commits semânticos (feat, fix, refactor e outros se houver necessidade);
  • Língua inglesa;
  • Validações dos dados de entrada (tipo, formatação e etc);
  • Jest para testes unitários e de integração.
  • Eslint;
  • .editorconfig.

Referênciais:

Entrega

Dúvidas

  • Para sessão de dúvidas, abra uma issue e descreva de forma mais clara possível sua dúvida.

Observações

  • Sinta-se livre para usar/não usar tudo que não for obrigatório e mesclar as stacks entre os níveis;
  • Todos receberão feedbacks e, dependendo da quantidade de inscrições, será será 2v1.

Boa sorte!