Objetivo deste desafio é avaliarmos o seu domínio em desenvolvimento fullstack, ou seja, sua organização, estilo e boas práticas com o código, criação de APIs Restfull, conhecimento dos frameworks e tecnologias utilizadas.
- Todo o seu código deve ser disponibilizado num repositório público ou privado em seu github ou bitbucket pessoal. Envie o link para [email protected] ou faça um pull-request deste repositório;
- Desenvolver o projeto utilizando:
- HTML e CSS (ou algum pré-processador);
- Algum framework SPA (Single Page Application). Sugestão: Angular 2;
- APIs em Node.js;
- Submeter o link do seu repositório com o código do desafio até 10 dias após a sua aplicação na vaga pelo site
Este é o layout que deverá ser produzido:
Aqui vai o layout em PSD: Download do arquivo
Percebam que no layout acima temos um formulário, uma tabela com informações de percentual de participação de cada pessoa e um grafico de pizza que representa esta distribuição, ou seja, precisamos de API que envie e receba essas infos pro server.
Você deve desenvolver esta API que espera por este recurso "employee" (funcionário) para cadastro.
Não se preocupe com métodos de autênticação, validação, token para esta API, mas ficaremos felizes se você desenvolver testes pra ela =)
Você deve desenvolver esta API que retorna o JSON com a lista de "employees" (funcionários) com suas devidas participações.
Obs 1.: Fique a vontade para utilizar qualquer 3rd party, seja para gráficos, testes, etc;
Obs 2.: Considere que todos os campos são de preenchimento obrigatório no formulário.
Obs 3.: Considere validar os campos também na API e em caso de inconsistência retornar erro num JSON estruturado com código HTTP 400
Deixamos pronto aqui neste repositório um projeto "blueprint blank" em Angular 2 pra você não sair do zero ;)
-
Para instalar o angular-cli você deve ter instalado antes o Node.js v4 ou superior junto com o NPM 3 ou superior.
-
Instalando o angular-cli
$ npm install -g @angular/cli
-
Faça clone deste repositório e suba o projeto
Clone:
$ git clone https://github.com/cubonetwork/fullstack-challenge.git
Instalando as dependências:
$ npm install
Iniciando o projeto:
$ npm start
Acesse http://localhost:4200/ para visualizar o projeto base
Rodando testes end-to-end com Protractor:
$ npm run e2e
Envie suas dúvidas diretamente para [email protected] ou abrindo uma issue