└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # A RockApps 2 | 3 | Desenvolvimento ágil e profissional de produtos e ideias, utilizando modernas tecnologias através de um modelo de custos acessível e flexível. A atuação de nossa empresa busca personalizar projetos e aplicações integrar soluções aos sistemas pré-existentes de nossos clientes. Sempre atualizados com as novas tecnologias de mercado, trazemos conosco aplicações inovadoras que certamente atenderão sua necessidade. Hoje em dia, a RK se consolidou no mercado, possuindo mais de 50 clientes e mais de 60 softwares e aplicativos criados. Realizações que nos mantém em andamento. 4 | 5 | Conheça mais sobre nossa empresa em https://rockapps.com.br. 6 | 7 | 8 | ## O Teste 9 | 10 | Teste para candidatos à vaga de Desenvolvedor Backend Laravel Júnior, Pleno e Sênior. O teste é o mesmo para todos os níveis! Nós fazemos isso esperando que os devs mais iniciantes entendam qual o modelo de profissional que temos por aqui e que buscamos para o nosso time. 11 | 12 | Você deverá criar um fork deste projeto, e desenvolver em cima do seu fork. Use o README principal do seu repositório para nos contar como foi resolver seu teste, as decisões tomadas, como você organizou e separou seu código, e principalmente as instruções de como rodar seu projeto, afinal a primeira pessoa que irá rodar seu projeto será um programador de nossa equipe, e se você conseguir explicar para ele como fazer isso, você já começou bem! 13 | 14 | Nós não definimos um tempo limite para resolução deste teste, o que vale para nós e o resultado final e a evolução da criação do projeto até se atingir este resultado, mas acreditamos que este desafio pode ser resolvido em cerca de 16 horas de codificação. 15 | 16 | **Para iniciar, faça um fork deste projeto.** 17 | 18 | Em seguida, é **fundamental** o preenchimento do formulário https://link.rockapps.com.br/vaga-dev-laravel. Demora 5 minutinhos! Se necessário, entre em contato com a gente em carreiras@rockapps.com.br. 19 | 20 | ## As Instruções 21 | 22 | O desafio consiste na implementação de um e-Commerce Web utilizando o framework PHP Laravel (versão 5.8+,6,7,8), e um banco de dados relacional SQLite ou MySQL. 23 | 24 | Você também pode optar por desenvolver somente o Backend utilizando requisições em RestFul API. 25 | 26 | 27 | 28 | 29 | Veja as principais estruturas de dados 30 | 31 | - CRUD de clientes (nome, email,foto) 32 | - CRUD de produtos (nome, descrição, foto, valor unitário) 33 | - CRUD de pedidos (status (Em Aberto, Em Checkout), cliente_id, valor total) 34 | - CRUD de itens (pedido_id, produto_id, quantidade) 35 | 36 | ## O Que Utilizar 37 | 38 | Esperamos que você faça uso das principais tecnologias embarcadas no Laravel. Use sua criatividade e demonstre suas competências! Lembre-se que cada item abaixo poderá avaliado conforme seu nível de experiência. 39 | 40 | - Model, 41 | - Controller, 42 | - Requests, 43 | - Validation, 44 | - Events, 45 | - Notification, 46 | - Observer, 47 | - Console, 48 | - Routes, 49 | - Traits, 50 | - Seeder, 51 | - Interfaces, 52 | - Horizon, 53 | - Gestão de filas (Queues), 54 | - Cache (Redis ou File), 55 | - Socket, 56 | - Autenticação JWT, 57 | - [Jetstream](https://jetstream.laravel.com/) e/ou [Livewire](https://github.com/livewire/livewire), 58 | - Testes Unitários, 59 | - Testes Funcionais. 60 | 61 | ## Processo Principal 62 | 63 | 1. Usuário deverá se autenticar 64 | 1. Usuário devera troca a foto de perfil 65 | 1. Usuário deverá incluir um item no carrinho 66 | 1. Usuário deverá incluir outro item no carrinho 67 | 1. Usuário deverá remover o primeiro item do carrinho 68 | 1. Usuário deverá finalizar o carrinho (trocar o status para Em Checkout) 69 | 1. Envio de notificações por e-mail através de filas (ao finalizar o carrinho) 70 | 71 | ## Bônus 72 | 73 | - CRUD Objeto Categorias (e vincular com o objeto Produto) 74 | - Reset de senha 75 | - Integrar um front em React 76 | 77 | 78 | #### O que nós não gostaríamos 79 | - Descobrir que não foi você quem fez seu teste 80 | - Ver commits grandes, sem muita explicação nas mensagens em seu repositório 81 | 82 | --------------------------------------------------------------------------------