Por favor leia este documento do começo ao fim, com muita atenção. O intuito deste teste é avaliar seus conhecimentos técnicos como fullstack junior, e assim entendermos melhor o quanto você possui de conhecimento e o quanto nós podemos te ajudar a crescer e se desenvolver.
Este teste consiste em criar um pequeno cadastro de clientes com vínculo de contatos e depois mostrar o cliente e seus contatos vinculados.
- Primeiro, crie um repositório público no Github (crie uma conta se você não possuir).
- Em seguida, implemente o projeto tal qual descrito abaixo, em seu clone local.
- Faça o push do seu projeto local para um repositório público no Github.
- Por fim, envie um via e-mail com o link do projeto em seu repositório para o contato desenvolvimento@customerx.cx e ricardo.grassi@customerx.cx
Você deverá criar um cadastro de clientes que poderá conter muitos contatos associados. Depois deste processo deverá ter um relatório em tela, ou PDF que mostre os clientes e os contatos vinculados a este cliente.
OBS: utilize a linguagem de sua preferência.
Sua aplicação web DEVE CONTER:
- Uma tela de cadastro de cliente com os seguintes campos:
- nome completo
- e-mails
- telefones
- data de registro (data em que o cliente foi registrado)
- Ter uma tela para cadastro de contato com os seguintes campos:
- nome completo
- e-mails
- telefones
- Tanto a tela de cliente quando a de contato devem ter as operações básicas de um CRUD (criar/editar/visualizar/excluir).
- Um cliente poderá ter mais de um contato vinculado a ele.
- Um relatório (podendo ser em tela) que mostre o cliente e seus contatos
Diferenciais:
- Ter uma documentação clara do projeto.
- Apresentar telas bonitas, porém, preferimos o processo funcional e fluido.
- Cobertura de testes.
- Login de acesso.
Seu projeto será avaliado de acordo com os seguintes critérios:
- Sua aplicação preenche os requerimentos básicos?
- Você documentou a maneira de configurar o ambiente e rodar sua aplicação?
- Você seguiu as instruções de envio do desafio?
Adicionalmente, tentaremos verificar a sua familiarização com as bibliotecas (padrões) (standard libs), bem como sua experiência com programação orientada a objetos a partir da estrutura de seu projeto.
Este desafio foi baseado neste outro desafio: https://github.com/Pagnet/desafio-back-end
Boa sorte!