/desafio-liberty

Desafio para nivelamento de conhecimento em programação para candidatos

Primary LanguagePHP

Desafio de programação

O intuito do desafio, é nivelar o conhecimento de programação dos candidatos a vaga de estágio e de desenvolvedor, trazendo um desafio moderno e prático para avaliar organização de código, estrutura do projeto e padrão de projeto, caso o candidato tenha conhecimento no assunto.

Requisitos para o desafio

Para desenvolver o desafio na versão atual do Laravel Framework 10.*, deve se ter os seguintes requisitos:

  • PHP ^8.1 +
  • Banco de dados (O que desejar) - Preferência PostgreSQL

Proposta do desafio

Desenvolva um sistema de compra e venda de carros.

Obtendo os dados do cliente:

  • Nome
  • Data de nascimento
  • CPF
  • Endereço
  • Se possui CNH

Regra de negócio

Um cliente pode comprar mais de um carro, um carro pode ser vendido apenas para um cliente. Um vendedor pode vender vários um carro pode ser vendido apenas por um vendedor, obrigatoriamente terá que guardar as informações da venda, para futuros relatórios do sistema.

Prazo

O candidato terá um prazo de 2 a 3 dias, a partir do dia do envio do desafio, para realização do mesmo.

Realização do desafio

Clonar o repositório e cria uma nova branch a partir da main, desenvolva o desafio, suba o desafio na branch criada e abra um pull request.

O que será avaliado?

Obrigatório:

  • Conhecimento prévio em lógica de programação e na linguagem PHP
  • Organização de código
  • Conhecimento em banco de dados (Migrations, seeder, factories (não obrigatório))

Opcionais:

  • Conhecimento em padrão projeto
  • Conhecimento em Clean code
  • Conhecimento em Modules
  • Conhecimento em Teste Unitário
  • Conhecimento Data Transfer Object
  • Conhecimento em Docker
  • Conhecimento em Rest Api
  • Documentação em Swaager PHP

Créditos

  • Liberty health tech - Site