Este documento descreve o desafio técnico ao candidato para a vaga de pessoa desenvolvedora - RankyMyApp
- Ir direto ao ponto.
- Aplicar boas práticas de código e de reuso sempre que possível.
- Poderá utilizar uma das seguintes linguages de Programação ou Plataformas de Execução: Node.js ou GoLang
- Utilização de containers (Docker) é primordial para a avaliação.
- Em relação aos dados, estes poderão ser armazenados em memória durante a execução do desafio ou em banco de dados (relacional, não-relacional, chave-valor etc.). Escolha o que achar que faz mais sentido para o problema.
- Escreva um README.md (Markdown) para documentar a aplicação, configuração do ambiente, execução e build.
- Ao finalizar o desafio e o executar corretamente, o código produzidor deverá ser enviado com um PR para o repositório em questão, no seguinte padrão
<GITHUB_USERNAME>/backend-challenge
O desafio pode ser acessado através da senioridade da vaga e no arquivo desafio-tecnico.md
.
A sua solução será avaliada durante a execução do desafio (Live Coding) e posteriormente pelo time ténico aqui da RankyMyApp, com base nos seguintes critérios:
- Objetivo: A solução antingiu o objetivo?
- Execução: A solução enviada contém todas as instruções necessárias para executarmos sua solução? Todos os requisitos foram implementados na solução entregue?
- Build: A solução contém instruções claras para configurarmos o ambiente e fazer o build?
- Performance: A solução possui uma performance adequada?
- Manutenibilidade e extensibilidade: O código escrito é de fácil leitura? O quão fácil é criar novas funcionalidades na solução existente?
- Arquitetura e Design: Como está desenhada a arquitetura da solução? As responsabilidades estão bem definidas? Foi utilizada alguma técnica para guiar o desenvolvimento?
Desejamos todo sucesso a você candidato e esperamos que você se divirta codificando essa solução. Qualquer duvida sobre o desafio pode ser levantada no momento da aplicação do desafio em conjunto com o avaliador no momento.
Bom código! 😄⚡