O desafio é desenvolver um programa que permita realizar as seguintes buscas:
- Listar os valores e data de Vencimento dos boletos presentes em um nota fiscal conforme o CPF ou CNPJ de um fornecedor.
- Apresentar o nome, identificador (CPF ou CNPJ), endereço dos clientes de um fornecedor.
Escolha as tecnologias que você vai usar e tente montar uma solução completa para rodar a aplicação.
Para enviar o resultado, basta realiazar um Fork deste repositório e abra um Pull Request, com seu nome.
É importante comentar que deve ser enviado apenas o código fonte. Não aceitaremos códigos compilados.
Por fim, o candidato deve atualizar o Readme.md com as seguintes informações:
- Documentação da solução;
- Lista dos diferenciais implementados
O programa será avaliado levando em conta os seguintes critérios:
| Critério | Valor |
|---|---|
| Legibilidade do Código | 10 |
| Organização do Código | 10 |
| Documentação do código | 10 |
| Documentação da solução | 10 |
| Tratamento de Erros | 10 |
| Total | 50 |
A pontuação do candidato será a soma dos valores obtidos nos critérios acima.
O candidato pode aumentar a sua pontuação na seleção implementando um ou mais dos itens abaixo:
| Item | Pontos Ganhos |
|---|---|
| Criar um serviço com o problema | 30 |
| Utilizar banco de dados | 30 |
| Implementar Clean Code | 20 |
| Implementar o padrão de programação da tecnologia escolhida | 20 |
| Qualidade de Código com SonarQube | 15 |
| Implementar testes unitários | 15 |
| Implementar testes comportamentais | 15 |
| Implementar integração com Travis | 10 |
| Implementar integração com Travis + SonarQube | 10 |
| Implementar usando Docker | 5 |
| Total | 170 |
A nota final do candidato será acrescido dos pontos referente ao item implementado corretamente.
O candidato será desclassifiado nas seguintes situações:
- Submeter um solução que não funcione;
- Não cumprir os critérios presentes no seção Avaliação;
- Plágio;