Git Product home page Git Product logo

techstartpro's Introduction

Trabalho no olist

Olist é uma empresa que oferece uma plataforma de integração para vendedores e marketplaces, permitindo-lhes vender seus produtos em vários canais.

A equipe de desenvolvimento Olist consiste em desenvolvedores que amam o que fazem. Nossos processos de desenvolvimento ágil e nossa busca pelas melhores práticas de desenvolvimento proporcionam um ótimo ambiente para profissionais que gostam de criar softwares de qualidade em boa companhia.

Estamos sempre à procura de bons programadores que adorem melhorar seu trabalho.

Este repositório contém um problema usado para avaliar as habilidades do candidato. É importante notar que resolver satisfatoriamente o problema é apenas uma parte do que será avaliado. Também consideramos outras disciplinas de programação como documentação, teste, cronograma de commit, design e melhores práticas de codificação.

Dicas:

  • Leia atentamente a especificação para entender todos os requisitos do problema e do artefato antes de começar, se você não entender algo, diga-nos;
  • Verifique as recomendações e o material de referência no final desta especificação;
  • Apreciamos a simplicidade, portanto, crie uma boa configuração de projeto que nos ajudará na sua avaliação;
  • Por favor, faça testes ... nós apreciamos testes <3 ... testes tornam o mundo melhor.

Como participar

  • Faça um fork deste repositório no Github. Se você não pode criar um fork público deste projeto, faça um repositório privado e adicione permissão de leitura para o usuário abaixo:
    • mgranemann
  • Siga as instruções do README.md (este arquivo);
  • Candidate-se ao cargo na nossa página de carreiras com o link para o fork no Github.
    • caso ja tenha realizado a candidatura na pagina de carreiras sem o envio do desafio, responda ao e-mail que lhe foi enviado pela equipe do seleção com o link do seu repositório.

Especificação

Você deve implementar um aplicativo para armazenar dados de produtos e categorias.

  1. Receba um CSV com as categorias e importe para o banco de dados

Dado um arquivo CSV com muitas categorias, você precisa construir um comando para importar os dados para o banco de dados. O arquivo CSV terá o seguinte formato:

nome

  • Móveis
  • Decoração
  • Celular
  • Informática
  • Brinquedos

Cada registro de categoria no banco de dados deve ter os seguintes campos:

  • id (autogerado)
  • nome

Você precisa armazenar os dados das categorias para complementar os dados do produto que serão armazenados posteriormente (consulte o item # 2).

  1. CRUD (criar, ler, atualizar e excluir) de produtos:

Você precisa implementar estas ações:

  • Criar um produto
  • Ler os dados do produto
  • Atualizar os dados do produto
  • Excluir os dados do produto

Cada registro de produto possui os campos:

  • id (autogerado)
  • nome
  • descrição
  • valor
  • categorias (um produto pode estar em mais de uma categoria)

Para recuperar um produto, podemos filtrar por 4 campos (ou uma composição desses quatro):

  • nome
  • descrição
  • valor
  • categorias Deve ser possível navegar pelos dados de todos os produtos sem nenhum filtro.

Para criar um produto, será necessário informar os dados abaixo:

  • "nome": // Nome do produto;
  • “descrição”: // Descrição do produto
  • “valor”:// Valor do produto
  • “categorias”:// Lista de ids de categorias

Requisitos do projeto:

  1. Pode ser feita em qualquer linguagem de programação que suporte o paradigma de orientação a objetos
  2. Utilizar padrões de projeto
  3. Boas práticas de desenvolvimento de software
  4. Utilizar paradigma de orientação a objetos
  5. Utilizar GitHub
  6. Camada visual pode ser console, desktop ou web
  7. Variáveis, código e strings devem estar todos em inglês.
  8. Escreva a documentação do projeto contendo:
  • Descrição;
  • Instruções de instalação (configuração) e teste;
  • Breve descrição do ambiente de trabalho utilizado para executar este projeto (Computador / sistema operacional, editor de texto / IDE, bibliotecas, etc).
  • Variáveis, código e strings devem estar todos em inglês.

Recomendações

  • Escreva testes! Por favor, faça testes ... nós apreciamos testes <3 ... testes tornam o mundo melhor;
  • Use boas práticas de programação;
  • Use as melhores práticas do git, com mensagens claras;
  • Esteja ciente ao modelar o banco de dados;

Divirta-se!

techstartpro's People

Contributors

mgranemann avatar kaline avatar

Watchers

James Cloos avatar

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.