Giter Site home page Giter Site logo

desafio-tecnico's Introduction

Desafio para Engenheiro(a) de Software - VAGAS.com

Este documento descreve o exercício de programação para a vaga de Engenheiro(a) de Software da VAGAS.com.

Considerações sobre o desafio

  • O prazo para entrega da solução é de 7 dias corridos, contados a partir da data de recebimento do desafio. Caso você precise de mais tempo, entre em contato conosco e fechamos uma nova data para a entrega. Não se preocupe, somos super flexíveis ;)
  • Utilize uma das seguintes linguagens: Ruby, Python, Java ou C#. Caso queira desenvolver em uma linguagem diferente das listadas aqui, fique à vontade. Podemos demorar um pouco mais em dar um retorno nesses casos.
  • A utilização de frameworks/bibliotecas é livre para a construção da solução, exceto quando o enunciado indicar o contrário.
  • Em relação aos dados, estes poderão ser armazenados em memória durante a execução da API ou em banco de dados (relacional, não-relacional, chave-valor etc.). Escolha o que achar que faz mais sentido para o problema.
  • O código produzido deve estar versionado em algum repositório público (Github, Bitbucket etc.)
  • Quando estiver tudo pronto, você deve mandar um e-mail para [email protected] com o assunto Engenheiro(a) de Software VAGAS.com - <%SEU_NOME%> e o link para o seu repositório.

Desafio

O desafio pode ser acessado pelo link.

Documentação e Deploy

Crie uma documentação breve sobre a sua solução, com explicação sobre a arquitetura/design e hipóteses assumidas.

Esperamos também um passo a passo de como executar a sua solução. Quanto mais simples, melhor. Vale ressaltar que a execução não poderá depender do uso de alguma IDE específica.

A utilização de Docker é um plus ;)

Avaliação

A sua solução será avaliada por um time de engenheiros(as) de software aqui da VAGAS.com, com base nos seguintes critérios:

Execução

  • Build: A solução contém instruções claras para configurarmos o ambiente e fazer o build?
  • Execução: A documentação enviada contém todas as instruções necessárias para executarmos sua solução? Todos os requisitos foram implementados na solução entregue?
  • Performance: A solução possui uma performance adequada?

Código

  • Manutenibilidade e extensibilidade: O código escrito é de fácil leitura? O quão fácil é criar novas funcionalidades na solução existente?
  • Arquitetura e Design: Como está desenhada a arquitetura da solução? As responsabilidades estão bem definidas? Foi utilizada alguma técnica para guiar o desenvolvimento?
  • Qualidade de Código e Testes: Foi utilizada alguma ferramenta de estilo de código para a linguagem? A solução possui testes unitários? É fácil alterar os testes caso haja modificação na solução?

Esperamos que você se divirta codificando essa solução. Estamos aqui ([email protected]) caso surjam dúvidas durante o desenvolvimento.

Bom código! ;)

desafio-tecnico's People

Contributors

luisrpp avatar catks 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.