Skip to content

Instantly share code, notes, and snippets.

@davidrobert
Created July 22, 2014 12:49
Show Gist options
  • Save davidrobert/921a005d1344413b3171 to your computer and use it in GitHub Desktop.
Save davidrobert/921a005d1344413b3171 to your computer and use it in GitHub Desktop.
programming-challenge
Como parte do processo seletivo do Elo7, gostaríamos que você fizesse uma pequena tarefa. Conforme seu resultado, daremos continuidade ao processo te convidando para uma sessão de pair-programming.
Durante o desenvolvimento de preferência para implementação em Java ou Scala.
O objetivo dessa tarefa é avaliar como você vai desenvolver o código, em termos de estilo, eficiência e qualidade.
Crie um projeto no seu Github para que vejamos os passos feitos através dos commits para resolver a tarefa.
A tarefa é a seguinte:
Desenvolver um sistema de agendamento de transferências financeiras.
1) O usuário deve poder agendar uma transferência financeira com as seguintes informações:
- Conta de origem (padrão XXXXX-X)
- Conta de destino (padrão XXXXX-X)
- Valor da transferência
- Taxa (a ser calculada)
- Data do agendamento
- Tipo (A, B, C, D)
A: Operações do tipo A tem uma taxa de $2 mais 3% do valor da trasferência
B: Operações do tipo B tem uma taxa de $10 para pedidos com agendamento até 30 dias da data de cadastro e $8 para os demais
C: Operações do tipo C tem uma taxa regressiva conforme a data de agendamento:
maior que 30 dias da data de cadastro - 1.2%
até 30 dias da data de cadastro - 2.1%
até 25 dias da data de cadastro - 4.3%
até 20 dias da data de cadastro - 5.4%
até 15 dias da data de cadastro - 6.7%
até 10 dias da data de cadastro - 7.4%
até 5 dias da data de cadastro - 8.3%
D: Operações do tipo D tem a taxa igual a A, B ou C dependendo do valor da transferência.
Valores até $25.000 seguem a taxação tipo A
Valores de $25.001 até $120000 seguem a taxação tipo B
Valores maiores que $120000 seguem a taxação tipo C
2) O usuário deve poder ver todos os agendamentos cadastrados.
Nota: A persistência não precisa ser em banco de dados.
Fique à vontade para criar em cima dessa idéia!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment