Skip to content

Latest commit

 

History

History
95 lines (77 loc) · 4.41 KB

vaga.md

File metadata and controls

95 lines (77 loc) · 4.41 KB

Desafio para candidatos à vaga de Desenvolvedor PHP (Jr/Pleno/Sênior).

Olá caro desenvolvedor, nosso principal objetivo é conseguir ver a lógica implementada independente da sua experiência, framework ou linguagem utilizada para resolver o desafio. Queremos avaliar a sua capacidade em aplicar as regras de négocios na aplicação, separar as responsabilidades e ter um código legível para outros desenvolvedores, as instruções nesse projeto são apenas um direcional para entregar o desafio mas pode ficar livre para resolver da forma que achar mais eficiente. 🚀

Não deixe de enviar o seu teste mesmo que incompleto!

Tecnologias a serem utilizadas

  • HTML
  • CSS
  • Javascript
  • PHP (Laravel, Yii, Lumen, etc...)

Entrega:

Para iniciar o teste, faça um fork deste repositório, crie uma branch com o seu nome completo e depois envie-nos o pull request. Se você apenas clonar o repositório não vai conseguir fazer push e depois vai ser mais complicado fazer o pull request.

Envie também seu LinkedIn ou currículo para [email protected].

O que vamos avaliar:

  • Legibilidade do código
  • Modularização
  • Lógica para aplicar a regra de négocio
  • Utilização da API

Instruções para o desafio:

Você vai implementar uma aplicação que faça a conversão da nossa moeda nacional para uma moeda estrangeira, aplicando algumas taxas e regras, no final da conversão o resultado deverá ficar em tela de forma detalhada.

Pode utilizar qualquer API para conversão de valores, mas recomendamos essa aqui: https://docs.awesomeapi.com.br/api-de-moedas pela facilidade e boa documentação.

O Desafio:

O usuário precisa informar 3 informações em tela, moeda de destino, valor para conversão e forma de pagamento. A nossa moeda nacional BRL será usada como moeda base na conversão.

As Regras de négocio:

  • Moeda de origem BRL;
  • Informar uma moeda de compra que não seja BRL (exibir no mínimo 2 opções);
  • Valor da Compra em BRL (deve ser maior que R$ 1.000,00 e menor que R$ 100.000,00)
  • Formas de pagamento (taxas aplicadas no valor da compra e aceitar apenas as opções abaixo)
    • Para pagamentos em boleto, taxa de 1,45%
    • Para pagamentos em cartão de crédito, taxa de 7,63%
  • Aplicar taxa de 2% pela conversão para valores abaixo de R$ 3.000,00 e 1% para valores maiores que R$ 3.000,00, essa taxa deve ser aplicada apenas no valor da compra e não sobre o valor já com a taxa de forma de pagamento.

Exemplos de entrada:

  • Moeda de origem: BRL (default)
  • Moeda de destino:
    • Exemplo: USD, BTC, ...
  • Valor para conversão:
    • Exemplo: 5.000,00, 1.000.00, 70.000,00, ...
  • Forma de pagamento:
    • Boleto ou Cartão de Crédito

Exemplo de funcionamento:

Parâmetros de entrada:

  • Moeda de origem: BRL (default)
  • Moeda de destino: USD
  • Valor para conversão: 5.000,00
  • Forma de pagamento: Boleto

Parâmetros de saída:

  • Moeda de origem: BRL
  • Moeda de destino: USD
  • Valor para conversão: R$ 5.000,00
  • Forma de pagamento: Boleto
  • Valor da "Moeda de destino" usado para conversão: $ 5,30
  • Valor comprado em "Moeda de destino": $ 920,18 (taxas aplicadas no valor de compra diminuindo no valor total de conversão)
  • Taxa de pagamento: R$ 72,50
  • Taxa de conversão: R$ 50,00
  • Valor utilizado para conversão descontando as taxas: R$ 4.877,50

Critério de aceitação:

Deve ser possível escolher uma moeda estrangeira entre pelo menos 2 opções sendo o seu valor de compra maior que R$ 1.000 e menor que R$ 100.000,00 e sua forma de pagamento em boleto ou cartão de crédito tendo como resultado o valor que será adquirido na moeda de destino e as taxas aplicadas;

Bônus:

  • Enviar cotação realizada por email;
  • Autenticação de usuário;
  • Histórico de cotações feita pelo usuário;
  • Uma opção no painel para configurar as taxas aplicadas na conversão;

Informações úteis da api:

Boa sorte! 🚀