-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
dd3ea4a
commit dd7ea20
Showing
1 changed file
with
75 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# Desafio Engenheiro de software - BTG Pactual | ||
|
||
## Instruções | ||
|
||
1. Leia esse documento com atenção antes de iniciar as atividades. | ||
2. Você tem 1 dia, para entregar o plano de trabalho (item 1). | ||
3. Você tem até 7 dias corridos para concluir as atividades aqui solicitadas. | ||
Caso não consiga concluir todas as atividades, por favor, entregue o que foi feito até a data solicitada. | ||
4. Crie um repositório no Github para seu projeto e mantenha o seu projeto como público. | ||
5. Ao concluir as etapas de entrega, envie um e-mail, com o assunto "[DESAFIO BTG] - SEU NOME COMPLETO", para: ****@btgpactual.com" | ||
6. Fique à vontade para utilizar tecnologias, frameworks e técnicas não citadas nas atividades ou substituir as que julgar necessário. Informe em seu relatório as modificações e os motivos. | ||
7. A aplicação deve ser entregue “rodando”, com instruções para interagir com ela. | ||
8. Recomendamos a utilização do Docker (http://www.docker.com) para montagem do ambiente (MongoDb, RabbitMQ, Web Application, etc.) | ||
Caso opte pela utilização do Docker, crie uma única imagem com todos os containers e compartilhe em seu relatório final. | ||
|
||
## Escopo | ||
Processar pedidos e gerar relatório. | ||
|
||
## Atividades | ||
1. Elabore e entregue um plano de trabalho. | ||
- Crie suas atividades em tasks | ||
- Estime horas | ||
2. Crie uma aplicação, na tecnologia de sua preferência (JAVA, DOTNET, NODEJS) | ||
3. Modele e implemente uma base de dados (PostgreSQL, MySQL, MongoDB). | ||
4. Crie um micro serviço que consuma dados de uma fila RabbitMQ e grave os dados para conseguir listar as informações: | ||
- Valor total do pedido | ||
- Quantidade de Pedidos por Cliente | ||
- Lista de pedidos realizados por cliente | ||
|
||
Exemplo da mensagem que deve ser consumida: | ||
|
||
``` | ||
{ | ||
"codigoPedido": 1001, | ||
"codigoCliente":1, | ||
"itens": [ | ||
{ | ||
"produto": "lápis", | ||
"quantidade": 100, | ||
"preco": 1.10 | ||
}, | ||
{ | ||
"produto": "caderno", | ||
"quantidade": 10, | ||
"preco": 1.00 | ||
} | ||
] | ||
} | ||
``` | ||
|
||
|
||
5. Crie uma API REST, em que permita o consultar as seguintes informações: | ||
- Valor total do pedido | ||
- Quantidade de Pedidos por Cliente | ||
- Lista de pedidos realizados por cliente | ||
|
||
|
||
6. Relatório Técnico explicando de forma sumarizada, considerando: | ||
- Plano de Trabalho (previsto vs realizado) | ||
- Caso haja algum desvio entre o planejamento original e a execução, explique o que houve. | ||
- Caso o plano de trabalho foi seguido sem desvio, comente os motivos para esse resultado. | ||
- Tecnologias utilizadas | ||
- Linguagens, Versões, IDE's, SO's | ||
- Diagrama de arquitetura | ||
- Modelagem da base de dados | ||
- Diagrama de implantação da solução | ||
- Diagrama de infra com os recursos de cloud utilizados (máquina, SO, produtos específicos, etc.) | ||
- Evidência de Testes funcionais da aplicação | ||
- Publique os códigos gerados, em seu perfil do https://github.com/ | ||
- Cite no relatório: | ||
- O seu perfil gitHub e a(s) URL(s) onde se encontram os códigos gerados | ||
- Referências utilizadas | ||
- Demais itens que você julgar relevante (Framework ou técnicas de testes, metodologias, etc.) | ||
- Se foi utilizado o Docker, para montagem do Ambiente, publique em seu perfil do http://hub.docker.com as imagens finais | ||
- Cite no relatório: O seu perfil dockerHub e a(s) URL(s) onde se encontram as imagens geradas |