MoIP - Venha trabalhar no MoIP

 

 

 

seja um desenvolvedor moip

 

Para participar, basta criar um, ou mais projetos seguindo o caso de uso descrito abaixo, escrever um documento especificando como instalar o(s) projeto(s), anexar tudo em um arquivo zip junto com o seu currículo.

 

Feito isso, envie o zip por e-mail para o endereço relacionamento@labs.moip.com.br.

a quem se destina?

 

Estagiários, desenvolvedores júnior e pleno pró-ativos e que tenham vontade de trabalhar em uma empresa flexível e que cresce exponencialmente a cada ano.

caso de uso

 

A financeira Foobar Produtos Financeiros pretende iniciar as operações no Brasil. O primeiro produto que a financeira pretende lançar é o seu cartão de crédito, chamado FoobarCard. O MoIP entrou em contato com a financeira e pretende colocar o FoobarCard como uma opção de pagamento para seus clientes. Entretanto, a plataforma da Foobar não está totalmente pronta e não existe um ambiente de homologação. Sua missão, desenvolvedor, é criar um serviço em JAVA para simular o ambiente de homologação da Foobar e criar o cliente que irá consumir este serviço. A Foobar nos mandou sua documentação, para que possamos iniciar nosso desenvolvimento, e será apresentada a seguir.

 

//Documentação FoobarCard

 

Para efetuar uma compra utilizando o FoobarCard pela internet, a Foobar disponibiliza um serviço REST na URL http://www.foobarcard.com.br/autorizacao (utilize sua URL local para testes, por exemplo http://localhost:8080/autorizacao) onde você deve enviar um XML via POST com o seguinte formato:

Onde:

<?xml version="1.0" ?>
<requisicao>
<numeroCartao>1234567890987654</numeroCartao>
<dataExpiracao>05/12</dataExpiracao>
<valor>10.00</valor>
</requisicao>

numeroCartao - É o número do cartão de crédito

dataExpiracao - É o a data de expiração do cartão no formato MM/AA (MM - mês com 2 digitos, AA - ano com 2 digitos)

valor - Valor da compra

Ao enviar O XML de requisicao (apresentado acima) o serviço da foobar irá retornar o seguinte XML:

Onde:

<?xml version="1.0" ?>
<resposta>
<codigoRetorno>0</codigoRetorno>
<mensagem>Transacao Aprovada</mensagem>
</resposta>

codigoRetorno: Indica se a transação foi efetuada com

sucesso ou não. Caso retorne 0, a transação foi aprovada.

Caso retorne 1, a transação não foi aprovada.

 

mensagem: É a mensagem referente ao codigo de retorno. Para transações aprovadas, o valor retornado é "Transacao Aprovada". Para transações não aprovadas, o valor retornado é "Transacao Nao Aprovada".

resumindo

 

//Resumidamente o que precisa ser feito é:

Criar uma aplicação (em java)
web usando REST que simule o
serviço da Foobar conforme descrito na documentação apresentada.

 

Criar uma aplicação (seja em
java, python, perl, php ou
qualquer outra linguagem) para consumir este serviço.

 

Enviar a documentação de
como testamos seus aplicativos

 

//Caso de teste

 

O caso de teste que queremos executar é:

Supondo que o cartão 1234567890987654, cujo a data de validade é 05/12 e o limite é de R$ 30,00 e cada transação autorizada reduz o limite do cartão:

Enviar uma transação - Número
do cartão: 1234567890987654,
Data de validade: 05/12 com o
valor 10.00. O retorno esperado
é: 0, Transacao Aprovada

 

Enviar uma transação - Número
do cartão: 1234567890987654,
Data de validade: 05/12 com
o valor 15.00. O retorno esperado
é: 0, Transacao Aprovada

 

Enviar uma transação - Número
do cartão: 1234567890987654,
Data de validade: 05/12 com o
valor 10.00. O retorno esperado
é: 1, Transacao Nao Aprovada
(o cartão não tem limite suficiente)

 

o que estamos esperando de vocês?

 

 

//Desenvolvedores com pouca experiência:

 

  • Que consigam interpretar uma documentação e traduzir em código
  • Que consigam criar um projeto do zero
  • Que consigam criar uma aplicação REST server/client simples
  • Que consigam escrever uma documentação de instalação

//De todos:

 

  • Que se divirtam e juntem-se a nós!

//Desenvolvedores com experiência:

 

  • Tudo o que esperamos dos desenvolvedores com pouca experiência
  • Uma boa modelagem Orientada a Objetos
  • Que possa usar um build manager como maven ou gradle
  • Que conheça mais de uma linguagem
  • Uma boa, entretanto simples, divisão de camadas
  • Código legível
  • Classes / métodos / variáveis bem nomeado(a)s

Ok, ok! Gostei da ideia, mas não sei direito por onde começar!

 

Sem problemas! Acesse o link abaixo e comece a aprender sobre o assunto AGORA! Não se esqueça que, caso o seu projeto seja escolhido, você irá defendê-lo pessoalmente aqui no MoIP. Link de referência:  http://www.vogella.de/articles/REST/article.html

 

E claro,envie seu projeto para: relacionamento@labs.moip.com.br

 

Boa sorte!