Skip to content

certsys/teste-dev-fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Desenvolvedor Full Stack

Então, quer dizer que você gosta de desafios e quer se tornar um desenvolvedor full stack na Certsys? Está no lugar certo!

Este teste faz parte do nosso processo de seleção e é a sua chance de nos mostrar todo o seu conhecimento como desenvolvedor fullstack. Este teste está dividido em duas etapas:

  • Desenvolver uma API REST simples, utilizando node.js
  • Desenvolver uma aplicação front-end simples (pode usar o framework que preferir)
  • Daremos um feedback a todos os que fizerem o Pull Request.

As especificações das aplicações estão logo abaixo.

A sua entrega será feita através de um Pull Request nesse repositório. Faça um fork do repositório, implemente o seu código e faça um pull request. Sinta-se a vontade para colocar quaisquer outras informações que você considere pertinente no README.

Instruções:

  • Faça um fork deste repositório;
  • Construa uma API REST conforme solicitado, utilizando Node.js, dentro da pasta back-end;
  • Construa uma aplicação front-end conforme solicitado, utilizando o framework que desejar, dentro da pasta front-end;
  • Adicione quaisquer informações adicionais para executar sua aplicação no README.md;
  • Após terminar, submeta um pull request e aguarde seu feedback.

Projeto 1: Criando uma API REST para uma classificado de imóveis

Neste primeiro projeto, seu objetivo é criar uma API REST para um mini classificado de imóveis, o CertImóveis. Neste classificado, nossos usuários podem cadastrar e anunciar seus imóveis. Potenciais clientes podem pesquisar os imóveis e indicar quais os interessam.

Considerando a funcionalidade de um classificado de imóveis, construa uma API REST contendo as operações de básicas de CRUD: inclusão, atualização, exclusão e consulta - tanto de um único imóvel quanto uma listagem deles. O recurso em questão deve ter a seguinte estrutura:

Imóvel

  • ID
  • Data de Publicação
  • Título
  • Descrição
  • Valor
  • Área (em m²)
  • Endereço
  • Logradouro
  • Número
  • Complemento
  • Bairro
  • CEP
  • Cidade
  • Estado

Você é livre para montar a aplicação como quiser, utilizando qualquer framework que lhe convier, mas temos alguns pré-requisitos:

  • Utilização de Node.js 10+;
  • Utilização de algum banco de dados (seja ele relacional ou NoSQL);
  • Além disso, vamos avaliar como você organiza e documenta o projeto, e a estrutura de módulos, componentes, serviços e rotas que você criou.

Ganhe pontos extras por:

  • Validação do CEP e preenchimento do endereço usando o ViaCEP;
  • Documentação da API;
  • Documentação do código;
  • Mecanismo de pesquisa - filtros e paginação;
  • Postman Collection (para testes da API);
  • Testes unitários e end to end;
  • Scripts de deploy;
  • Containerização usando Docker;
  • Organização e mensagens dos commits.

Projeto 2: Criando uma interface front-end para seu classificado de imóveis

Agora que nós temos uma API REST, já podemos pensar em uma aplicação para nossos usuários finais. Neste segundo projeto, seu objetivo é criar uma pequena aplicação front-end para o nosso mini classificado de imóveis, o CertImóveis. Agora, nossos usuários poderão cadastrar seus imóveis, e potenciais clientes podem pesquisar os imóveis e indicar quais os interessam.

Chegou a hora de montarmos uma aplicação front-end para que nossos usuários finais consigam utilizá-la.

Você é livre para montar a aplicação como quiser, mas gostaríamos de ver a listagem de todos os imóveis, com informações básicas, em uma página inicial e detalhes do imóvel selecionado em outra página.

Temos alguns pré-requisitos:

  • Design responsivo;
  • Pelo menos um filtro de pesquisa deve estar disponível;
  • Além disso, vamos avaliar como você organiza e documenta o projeto, e a estrutura de módulos, componentes, serviços e rotas que você criou.

Ganhe pontos extras por:

  • Filtros de pesquisa adicionais;
  • Testes usando JEST e Cypress;
  • Paginação dos resultados;
  • Layout diferenciado e animações;
  • Mecanismo de pesquisa;
  • Cache e persistência dos dados no localStorage ou IndexedDB;
  • Funcionamento offline com os dados cacheados - melhor ainda se for um PWA!;
  • Testes unitários e end to end;
  • Scripts de deploy;
  • Organização e mensagens dos commits.

Será considerado pontos extras também

  • Criação de fluxo de criação de usuário e login

Boa sorte! =)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published