Git Product home page Git Product logo

testedotnet2's Introduction

Desafio Back-end Luby Software

Primeiramente, obrigado pelo seu interesse em trabalhar na Luby. Somos uma fábrica de software com mais de 110 desenvolvedores e 15 anos de mercado. Temos atuação em mais de 5 países e estamos em busca de talentos para integrar o nosso time no desenvolvimento .NET de forma 100% remota.

Premissas:

  • Criar uma API usando .NET CORE.
  • O banco de dados pode ser MySql ou SQL Server.

Teste:

Desenvolver um serviço que seja capaz de gerar um lançamento de horas.

  • Um lançamento de horas é composta por pelo menos id, data inicio, data fim, desenvolvedor.

Sua tarefa é desenvolver os serviços REST abaixo:

  • CRUD para desenvolvedor (Será considerado um diferencial paginação na listagem)
  • CRUD de projeto (Será considerado um diferencial paginação na listagem)
  • Criar um lançamento de hora
  • Retornar ranking dos 5 desenvolvedores da semana com maior média de horas trabalhadas.

Algumas regras à serem consideradas

  • Um desenvolvedor só pode lançar horas em projetos que ele esteja vinculado
  • Um desenvolvedor só pode lançar horas se estiver autenticado (Autenticação JWT com expiração de 5 minutos)
  • Validações de integridade e duplicidade
  • Antes de cadastrar um desenvolvedor, devemos validar se seu CPF é válido, para essa validação, pode ser usado o endpoint (https://run.mocky.io/v3/067108b3-77a4-400b-af07-2db3141e95c9)
  • Na confirmação do lançamento de horas, uma notificação é enviada, e o serviço pode estar indisponível/instável. Para enviar a notificação, use o endpoint abaixo (https://run.mocky.io/v3/a1b59b8e-577d-4996-a4c5-56215907d9dd)

Instruções:

  1. Realizar fork deste projeto.
  2. Desenvolver em cima do seu fork.
  3. Após finalizar, realizar o pull request.
  4. Atualize esse README.md com sua identificação no fim do arquivo
  5. Fique à vontade para perguntar qualquer dúvida aos recrutadores.

E por fim:

  • Gostaríamos de ver o uso do controle de versão.
  • Entendimento de OO, conceitos de SOLID, e outros relacionados
  • Reuso do código
  • Vamos avaliar a maneira que você escreveu seu código, a solução apresentada.
  • Caso encontre algum impedimento no decorrer do desenvolvimento, entregue da maneira que preferir e faça uma explicação sobre o impedimento.
  • Avaliaremos também sua postura, honestidade e a maneira que resolve problemas.

Desejável (Será considerado um diferencial)

  • Automação de testes - unitários e integração.
  • Configurar o Swagger para termos acesso a documentação da API.
  • É de suma importância se utilizar das melhores práticas para um projeto seguro e organizado, como a utilização de controllers, services, factory, middlewares, controle de exceções, utilização de um ORM ou MicroORM (Object Relational Mapper) para operações de banco de dados.
  • Criar um client WEB para consumir essa API

Identificação:

Nome:
E-mail:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.