vbuchara / bc-example

Repositório modelo para teste de nível.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Teste de nível - Dev Junior

Obrigado por se candidatar para a vaga de Dev Junior na Kuppi.

Para podermos proseguir com o processo de avaliação, estamos disponibilizando um teste dividido dois exercícios (Exercício prático e Exercício conceitual). Você terá um dia para desenvolvê-lo. Mas se surgir algum imprevisto ou problema é só nos avisar.

Orientações iniciais

O teste proposto será bem simples, porém por sermos uma startup, além das habilidades técnicas é muito importante a comunicação e pesquisa por soluções de problemas. Tenha isso em mente ao resolvê-lo.

O teste é composto por dois exercicios, é importante fazer os dois.

O uso de requisitos e os diferenciais listados na vaga será considerado um bônus.

O desenvolvimento deverá ser feito em ReactJs. O projeto deve ser entregue em outro repositório.

Será disponibilizado o ambiente de dev da Kuppi para a utilização durante o teste.

url: https://dev-api.kuppi.com.br

Uri Método Verbo Descrição
/example/products GET INDEX Array com todos os produtos.
/example/products/:product_id GET SHOW Object com todas as informações do produto com o id especificado.

Packages requeridos

É obrigatório o uso das bibliotecas listadas a seguir e será levados em consideração na análise do teste.

  • axios
  • styled-components

Esses outros packages a seguir também são obrigatórios, porém já estão implementados a arquitetura de seu uso, fique vontade para incrementar o que achar necessário e pertinente.

  • immer
  • react-router-dom
  • history
  • redux
  • react-redux
  • redux-persist
  • redux-saga

Boa sorte!

Exercício 1 - Teste prático

Para prosseguir faça um Fork desse projeto para utilizá-lo como base no teste.

  • Implemente uma aplicação que exiba em uma rota, uma listagem de produtos com seus nomes e preços.

  • Crie também em cada item da listagem, um componente que direcione para outra rota, que servirá para exibir os detalhes desse produto com o restante das informações disponíveis.

  • A estilização do projeto deve ser feito em Styled Component e ela juntamente com o layout desenvolvido serão levados em consideração na análise do teste.

Exercício 2 - Teste conceitual

Responda as perguntas abaixo com suas próprias palavras, mas também fique livre em aplicar algum desses conceitos na primeira parte do teste.

  • Se uma rota é repetida diversas vezes em sua aplicação, como seria possível melhorar a arquitetura para facilitar em manutenções posteriores?
  • É possível melhorar a performance da solução? Como as melhorias impactam a leitura e manutenção do código?
  • De que forma o sistema pode escalar com a arquitetura planejada?
  • Considerando as informações de retorno nas rotas da API disponibilizada para o teste, qual seria a sua sugestão para o controller que alimentaria essas rotas? Leve em consideração os conhecimentos de RESTful API.

About

Repositório modelo para teste de nível.


Languages

Language:JavaScript 94.2%Language:HTML 5.8%