Olá! Muito obrigado por participar da avalição técnica para integrar a equipe de desenvolvimento da W16.
Criamos esta avaliação para avaliar seu conhecimento em lógica de programação, capacidade de investigar e conhecer novas ferramentas, organização e qualidade de código e especialmente, sua criatividade.
No mundo pós-apocaliptico de 2021, o combustível tem um valor inestimável. Gangues bárbaras lutam até a morte pelo controle desse valioso recurso e a W16 está desenvolvendo o aplicativo WARKER, que é a última esperança da humanidade em trazer um pouco de paz e ordem à esse mundo devastado. Esse aplicativo deve consumir uma API REST em Laravel que indica os postos de gasolina das diversas cidades, sua localização e o nível dos seus reservatórios. Lembre-se de que não há mais lei e a sua vida depende do sucesso desse backend. Marcopoc não fica feliz quando o seu app falha devido a erros no backend e você não quer deixar o Marcopoc irritado...
- Não há regras, não há lei, apenas a sobrevivência importa!
- Faça bom uso dos recursos do framework (migrations, factories, estrutura MVC, rotas...)
- D.R.Y. = "Don't Repeat Yourself"
- Mantenha o código limpo e organizado
- Utilize comentários pois alguém irá ler o seu código. Nosso último dev esqueceu um comentário importante. RIP :(
- Utilize o README.md do seu projeto para explicar instalação, funcionamento, o processo que usou para o desenvolvimento ou implorar por misericórdia.
- Use Laravel 8
- Use Laravel 8
- Use Laravel 8
- Já mencionei que a versão do laravel é a v8?
- Lembre-se de usar os métodos GET,PUT,POST e DELETE.
Pode contar pontos extras
- CRUD Web
- Autenticação
- Teste automatizado
- Seeder e uso de fakers
Cidades
|id |nome_da_cidade|latitude|longitude|created_at|updated_at|
|int|string |double |double |timestamp |timestamp |
Postos
|id |cidade_id|reservatorio|latitude|longitude|created_at|updated_at|
|int|int(fk) |int(1-100%) |double |double |timestamp |timestamp |
/api/cidade/id
{
id : id,
cidade : nome_da_cidade,
coords : {
latitude : latitude,
longitude : longitude
},
postos : {
id : id,
reservatorio : reservatorio,
coords : {
latitude : latitude,
longitude : longitude
},
updated_at : updated_at,
created_at : created_at
}
}
/api/posto/id
{
id : id,
reservatorio : reservatorio,
coords : {
latitude : latitude,
longitude : longitude
},
updated_at : updated_at,
created_at : created_at
}
Crie um FORK deste repositório e faça um Pull-Request. Commite no repositório todo o código do backend, juntamente com instruções, se necessário. O prazo para entrega será de 3 horas - ou melhor, 3 dias.
Qualquer dúvida, crie um issue neste projeto ou entre em contato com o nosso time.
2 DEVS ENTRAM, 1 DEV SAI!