Skip to content

krepe/teste-dev

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Instruções para rodar as aplicações:

Back-End

  1. Você pode instalar as dependências do aplicativo navegando até o diretório 'api' e executar o seguinte comando. Este comando usa um pequeno container Docker contendo PHP e Composer para instalar as dependências do aplicativo:

        docker run --rm \
            -u "$(id -u):$(id -g)" \
            -v $(pwd):/var/www/html \
            -w /var/www/html \
            laravelsail/php81-composer:latest \
            composer install --ignore-platform-reqs
  2. Configuração do servidor web.

        cp .env.example .env
  3. Subindo a aplicação e gerando a chave

        ./vendor/bin/sail up - d
    
        ./vendor/bin/sail art key:generate

Sua Api agora está rodando faça o Teste para retornar os livros cadastrados.

Front-End

  1. Instalação de todos os packages

    npm install
  2. Executar servidor de desenvolvimento

    npm run serve
  3. Gerar arquivos de compilação para implantação

    npm run build

Teste para candidatos à vaga de Desenvolvedor Full Stack.

Olá, caro desenvolvedor, nesse teste analisaremos seu conhecimento geral e velocidade de desenvolvimento. Abaixo explicaremos tudo o que será necessário.

Instruções

  • Você deve desenvolver uma API, utilizando Laravel, Lumen ou Node. A escolha das bibliotecas, banco de dados, arquitetura, etc, fica a seu critério.

  • O código precisa rodar em múltiplas plataformas, utilizando a Docker. Altere o arquivo README explicando o que é preciso para rodar sua aplicação.

O teste

Back-End

A primeira etapa será o desenvolvimento do backend.

Descrição:

Você deverá desenvolver uma 'mini api' para que seja possível realizar operações CRUD de uma estante de livros. Será necessário gerar um relatório a partir destas informações.

Condições:

Você poderá utilizar qualquer tecnologia de banco relacional ou apenas MongoDB como banco não relacional.

  • O sistema deverá ser separado por módulos, tendo eles, seus respectivos controllers, rotas, models, camada de serviço e repositório.
  • O sistema deverá retornar os livros de forma paginada.

Cada livro deverá possuir :

  • ID
  • Nome
  • Autor
  • Categoria
  • Código (único)
  • Tipo (arquivo digital ou físico)
  • Tamanho (Peso do livro físico ou tamanho do arquivo)
  • Diferenciais : Testes unitários.

Front-End

Para a segunda etapa do teste, você deverá desenvolver uma SPA (Single Page Application) com Vue.js 2 e nela deve ser possível:

  • Ver a lista de livros cadastrados
  • Criar um novo livro
  • Editar um livro existente
  • Apagar um livro existente
  • Filtragem por categoria, tipo de arquivo e nome.
  • Elaboração de um relatório/dashboard de livros cadastrados, sendo possível filtrar por categoria e por período.

Condições:

  • A página deve ser responsiva.
  • A página deve funcionar 100% via AJAX, sem outros carregamentos de páginas.
  • Os dados das requisições deverão ser gerenciados pelo VUEX.
  • Ao criar/editar um livro, o campo "categoria" deverá ser um SELECT.
  • A definição de peso ou tamanho do arquivo deverá ser realizada pela função watch, verificando o tipo do arquivo: arquivo digital ou físico

Dicas:

  • Você pode usar frameworks, tanto para o front-end (Vuejs) e tanto para o back-end.
  • Você pode usar ferramentas de automação (Grunt, Gulp), mas deverá informar o uso completo para funcionamento do teste.
  • Será considerado ponto positivo no teste a utilização de orientação a objetos, design patterns e rotinas para testes.

Entrega

Para iniciar o teste, faça um fork deste repositório, crie uma branch com o seu nome completo e depois envie-nos o pull request. Se você apenas clonar o repositório não vai conseguir fazer push e depois vai ser mais complicado fazer o pull request. Nossa análise Organização do código, legibilidade e comentários, uso de padrões. Histórico de commits.

Dúvidas? Quaisquer dúvidas que você venha a ter, abra você mesmo uma nova issue, ou mande um e-mail. Boa sorte!

About

Teste para desenvolvedor Full Stack

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • PHP 42.7%
  • SCSS 23.2%
  • Vue 20.8%
  • Blade 8.7%
  • JavaScript 3.8%
  • Shell 0.4%
  • HTML 0.4%