/reamp

Desafiozinho em java para devs gente boa

💻 Desafio Reamp + Jellyfish 🎲

🎲 ⚙️ Data Engineering 🕹 🎮

🚧 Em Construção 🚧

Quem Somos

A Reamp + Jellyfish é uma empresa que contribuí para a transformação digital de parceiros por todo o mundo.
Com uma operação baseada em tecnologia + mídia + dados, criamos novos jeitos de fazer marketing utilizando tecnologias inovadoras e pessoas apaixonadas para descomplicar as operações de mídia de nossos parceiros.


O Desafio

A ideia é simples, você deverá desenvolver uma aplicação que lê, trata e exporta dados da API da Steam.

Para isso você deve desenvolver uma aplicação em Java que:

  • Receba o nome de um usuário da Steam
  • Consuma os dados da API usando o através de requests HTTP/GET
  • Tratar os dados extraídos e criar um arquivo JSON contendo as seguintes informações:
    • Username e ID do usuário na Steam
    • Nome e país do usuário
    • Última aparição online
    • Jogos jogados recentemente

O tempo estimado para a conclusão da solução é de três dias, a partir do fork, mas esse prazo pode ser estendido para até uma semana.


Regras

- Utilize a linguagem java pura, ou seja, sem nenhum framework (ex. Spring, Hibernete, etc...).
- Você deve utilizar o Maven como gerenciador de pacotes.
- Você pode usar qualquer biblioteca que julgar necessário.
- Realizar commits a cada tarefa concluída. Não faça apenas um commit no final.
- Descreva no README do projeto como funciona sua solução (incluíndo instruções para a execução) e o que motivou a escolha das bibliotecas utilizadas.
- Você pode discutir este exercícios com outras pessoas, mas não peça para ninguém escrever ou revisar seu código.
- Você pode nos contatar a qualquer momento para tirar suas dúvidas, caso precise de mais tempo ou para qualquer outra necessidade.
- Você pode usar o Google/Stackoverflow para qualquer necessidade de consulta.

Dicas

Resolva primeiro o desafio base antes de passar para os desafios bônus

Caso tenha problemas para obter o SteamId, dê uma olhada na ResolveVanityURL

Não se esqueça de tratar os erros e excessões! Alguns usuários preferem deixar seus dados de perfil privados ou visíveis somente para amigos.

Um bom uso dos recursos de Orientação à Objeto e um código limpo são altamente incentivados.

Menos é mais. Uma arquitetura simples e um bom uso da Orientação à Objeto são muito mais interessantes para resolver um problema simples do que uma baita arquitetura robusta. Manter isso em mente é sempre uma boa dica!

O uso de interface gráfica não é obrigatório, você pode exibir os dados no Terminal desde que num formato legível ou em qualquer tecnologia de interface gráfica que domine, entretanto temos alguns desafios na sessão bônus.


Bônus

Sessão de desafios bônus pra quem quer ir além! A realização desses desafios é opcional.

Bônus - Back-End Java

Além dos dados de usuário, traga também os dados de:

 - Total de jogos possuídos pelo usuário
 - Lista de todos os jogos possídos pelo usuário
 - Os 3 jogos com maior quantidade de horas jogadas 



Bônus - Web / Fullstack
Pra quem se sente confortável com as tecnologias web (React/Angular e Node) temos alguns bônus específicos nos Issues do projeto.