IBM-Challenge ─ Desafio de Programação

Desafio full-stack cujo objetivo consistia em criar um mini-portal para que os usuários pudessem manter um histórico das suas consultas feitas no portal da StackOverflow.

Entre os desafios propostos, era preciso autenticar os usuários usando uma das seguintes contas: Google, LinkedIn ou Twitter.

Além disso, era preciso manter as consultas anteriores armazenadas no servidor, usando um banco de dados NoSQL ─ para esse projeto, foi escolhido o MongoDB.

Projeto open source, com seu código-fonte integral disponível no GitHub.

Ficha Técnica

Categoria Projeto Full-Stack
Sub-categoria Desafio de Programação
Site ibm-challenge.eduardostuart.pro.br
Tecnologias
  • Node.js
  • MongoDB
  • EJS
  • JavaScript ES6+
  • HTML5
  • CSS3
  • Código-Fonte GitHub
    Autor Eduardo Stuart

    Sobre o projeto

    O desafio técnico pode ser conferido visitando esse endereço

    Tela do desafio técnico IBM-Challenge


    Detalhes

    Desafio técnico de programação cujo objetivo consistia em demontrar a aplicação de algumas das melhores técnicas de desenvolvimento de software em um aplicativo full-stack.

    Os seguintes requisitos técnicos deveriam ser atendidos:

    • Somente usuários autenticados podem fazer uso da ferramenta
      • A autenticação precisa ser realizada usando serviços como Google, LinkedIn ou Twitter
    • Assim que o usuário for autenticado, ele poderá realizar pesquisas para encontrar soluções de problemas relacionados com o desenvolvimento de sistemas
      • As consultas devem fazer uso da API pública do site StackOverflow
      • Todas as consultas devem ser registradas em um banco de dados para futuras conferências
    • A usabilidade deve ser levada em consideração
      • A interface precisa ser consistente e agradável, tanto em dispositivos móveis, quanto em desktops
    • Todos os componentes relacionados ao site precisam estar em produção

    Telas capturadas

    Para o design desse projeto, foi escolhido um visual mais sóbrio, usando como parâmetro os demais serviços usados pela própria empresa.

    • Boas-vindas

    IBM-Challenge: tela inicial de boas-vindas

    Ao visitar a página principal, se o usuário não estiver sido previamente autenticado, será apresentado pela tela para selecionar um dos serviços usados para a autenticação.

    • Selecionando a conta usada para autenticação

    IBM-Challenge: selecionando uma conta

    Tela quando o usuário selecionar autenticar via Google.

    • Realizando uma consulta

    IBM-Challenge: selecionando uma conta

    Após a autenticação, o usuário pode realizar as pesquisas. Note a seção que conta com as Consultas Anteriores.

    • Lista de resultados

    IBM-Challenge: selecionando uma conta

    A ferramenta exibe uma relação com até 30 resultados, classificados por relevância. Todos que tiverem um ícone checked ao lado do título representa soluções aceitas pela comunidade. Ao clicar em um dos resultados, o usuário será transferido para a respectiva seção do site StackOverflow.