Skip to content

Projeto de entrada feito para testar e nivelar o conhecimento de novos bolsistas

Notifications You must be signed in to change notification settings

fabsoftwareifrs/fabrica-ramp-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Fábrica de Software Ramp-up

Primeiramente muítissimo obrigado pela sua participação na Fábrica de Software, seja você um bolsista ou voluntário. Nosso objetivo é estimular o potencial de todos os participantes ofertando-lhes a oportunidade de participar de projetos que agregem-lhes experiência de desenvolvimento como na indústria e ao mesmo tempo desenvolva softwares que sejam significativos para a Sociedade.

"Ramp-up" é um termo da administração para descrever o aumento da produção até atingir o nível médio de produção, na indústria de software é muito utilizado para descrever o tempo que um programador demora para integrar-se e acostumar-se com uma nova tecnologia ou metodologia de trabalho e este projeto tem justamente este objetivo.

O objetivo proncipal deste projeto é que você tente desenvolver um CRUD inicial para que conheça as ferramentas que irá utilizar enquanto trabaha na Fábrica e também para que possamos conhecer suas dúvidas e dificuldades com nossa stack e possamos te ajudar e também saber como direcioná-lo em nossos projetos.

Materiais

Ninguém nasce sabendo e compreendemos que muitos alunos que chegam a fábrica não tem experiência com as tecnologias que usamos, você pode consultar como utilizar essas tecnologias em qualquer lugar, mas recomendamos os cursos gratuitos de JavaScript, Node e React da Rocketseat!

O Desafio

Desenvolva uma aplicação Node utilizando o framework React e Express.

  • O desafio poderá ser feito individualmente ou em duplas, conforme o coordenador do projeto julgar necessário;
  • Esta aplicação, deve conter uma API CRUD básica de pelo menos duas áreas e relacionamento entre as tabelas. Exemplo: Categorias e Produtos;
  • O back-end (API) em Node e o front-end em React devem estar separados!
  • Quanto a organização do layout, o participante poderá fazer sua própria organização conforme julgar melhor, caso queira algum exemplo prático porderá utilizar o template de aplicações da própria Fábrica de Software;
  • Para desenvolvimento, utilizar a versão LTS (Long Term Support) do Node e MySQL 5.5+;
  • Publique os arquivos com o dump do banco de dados em SQL junto ao projeto;
  • Importante: queremos observar todo seu processo de desenvolvimento, commit por commit, portanto NÃO FAÇA apenas um commit para todo projeto;
  • Preferencialmente se puder disponibilize um link para visualizarmos o seu teste rodando - você pode hospedar temporariamente onde preferir, caso não tenha onde colocar, sugerimos que dê uma olhada nos serviços da Vercel e Heroku;
  • Insira no seu README.md instruções / documentação necessária sobre como rodarmos seu teste localmente;
  • Pro teste ficar legal, considere como se estivesse desenvolvendo para uma marca real, para ter interface específica como cores, marca, formas e dados como se fosse para um cliente. Você pode usar qualquer marca que preferir, exemplo: Hyundai, Renault, Boticário, Coca-Cola etc. - você pode brincar com cadastros de produtos específicos das empresas, como modelos, cores, categorias, entre outra opções, não se preocupe em "clonar" a interface dessas empresas você não precisa fazer nada complexo, porém se precisar de inspiração do que fazer ou como fazer são exemplos legais de onde buscar;
  • Caso queira nos encaminhar junto algum(ns) outro(s) trabalho(s) ou link(s) que considere interessante, fique a vontade, adoramos ver o que você já desenvolveu, mas precisamos que faça o teste para que possamos conhêce-lo;

Importante: há respostas de outras pessoas para este desafio no GitHub - fique a vontade para visualizá-las como exemplos - mas em momento algum copie e/ou dê fork para nos enviar como se fosse sua resposta. Esse tipo de comportamento prejudicará o objetivo deste exercício. O mesmo vale para cópias praticamente integrais de tutoriais que possa encontrar na internet - com exceção da própria documentação do framework.


Dúvidas

Qualquer dúvida, fique a vontade para entrar em contato conosco como preferir.

Por que Node?

No IFRS Campus Bento por muito tempo os cursos utilizaram uma série de tecnologias PHP, Java, Python... porém a partir de 2020 estamos tentando simplificar o uso de tecnologias no curso para que todas as disciplinas trabalhem com JavaScript com o objetivo de ter consistência no ensino e aproveitar o tempo de estudo (que tanto no Técnico quanto Técnologo) é escasso para focar em ensinar e aperfeiçoar conceitos que são imutáveis, essenciais e transferíveis em qualquer tecnologia que o aluno venha a trabalhar no futuro. Como nossa tecnologia de ensino baseia-se em JavaScript, nada mais natural que a Fábrica utilize Node que é JavaScript executado em server-side.

Tenho que usar mesmo Node pro teste?

Sim (vide resposta acima).

Posso enviar uma interface feito em "JS Vanilla"?

Não, utilize React.

Irei trabalhar só com Node aqui na Fábrica?

DEPENDE, muito provével que SIM, mas pode ser que surgam projetos com outras tecnologias como TypeScript ou ReScript, mas caso isso aconteça isso sempre será anunciado na chamada de voluntários e se você está aqui muito provável já saiba quais tecnologias irá trabalhar.

Sugestões?

Tem sugestões de melhorias para esse exercício? Fique a vontade para fazer um fork com melhorias, pull requests ou abrir issues com o que passar na sua mente.

Bom exercício!


Showcase

Entre os links abaixo, alguns desenvolvedores que fizeram esse exercício anteriormente.

About

Projeto de entrada feito para testar e nivelar o conhecimento de novos bolsistas

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages