Skip to content

Instantly share code, notes, and snippets.

@patrickporto
Last active May 21, 2018 17:15
Show Gist options
  • Save patrickporto/046d8599761220b2e75fea70232a7169 to your computer and use it in GitHub Desktop.
Save patrickporto/046d8599761220b2e75fea70232a7169 to your computer and use it in GitHub Desktop.
Este é um desafio adequado para Desenvolvedor Front-End da área de Banking.

Carteira Virtual

O Web App precisa fornecer carteiras virtuais de criptomoedas. Todo cliente possui ao se cadastrar recebe R$ 100.000,00 (cem mil reais) em conta para comprar Bitcoins e Britas. A cotação da criptomoeda Brita é equivalente ao dólar e pode ser consultada na API do Banco Central enquanto que a cotação do Bitcoin pode ser consultada na API do Mercado Bitcoin.

Sobre as operações financeiras de criptomoedas, é correto afirmar que:

  • O cliente pode vender suas criptomoedas ou trocar uma pela outra.

  • O cliente precisa saber o saldo discriminado por cada moeda.

  • O cliente precisa ter um extrato de operações financeiras.

Requisitos Técnicos

  • Os dados precisam ser armazenados em um banco de dados local.
  • React ou VueJS são diferenciais

Critérios de Avaliação

O desafio será avaliado através de cinco critérios.

Entrega

  • O código possui algum controle de dependências?
  • O resultado final está completo para ser executado?
  • O resultado final atende ao que se propõe fazer?
  • O resultado final atende totalmente aos requisitos propostos?
  • O resultado final é visualmente elegante?

Boas Práticas

  • O código está de acordo com o guia de estilo da linguagem?
  • O código está bem estruturado?
  • O código está fluente na linguagem?
  • O código faz o uso correto de Design Patterns?

Documentação

  • O código foi entregue com um arquivo de README claro de como se guiar?
  • O código possui comentários pertinentes?
  • O código está em algum controle de versão?
  • Os commits são pequenos e consistentes?
  • As mensagens de commit são claras?

Código Limpo

  • O código possibilita expansão para novas funcionalidades?
  • O código é Don't Repeat Yourself?
  • O código é fácil de compreender?

Controle de Qualidade

  • O código possui configuração de lint?
  • O código possui testes unitários?
  • O código possui teste de cobertura?
  • O código está em Integração Contínua?

Material de Estudo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment