Get Started. It's Free
or sign up with your email address
BuscaJobs by Mind Map: BuscaJobs

1. Features

1.1. Obrigatórias

1.1.1. Permitir a busca de Jobs

1.1.2. Fazer o scraping 1 vez ao dia em cada site

1.1.3. Testes de sistema

1.2. Extras

1.2.1. Permitir ao usuário criar um perfil no site

1.2.2. Enviar um email com o resumo de novas vagas para o usuário baseado nas palavras chave de interesse dele (exp: Ruby On Rails, VueJs, Node e etc)

1.2.3. Obs: Outras features também serão levadas em consideração

2. Páginas mínimas

2.1. Página inicial com campo de buscas

2.2. Página com o resultado das buscas (com paginação)

2.3. Página com detalhes da vaga

3. Ferramentas

3.1. Obrigatórias

3.1.1. Ruby On Rails

3.1.2. Postgresql

3.1.3. Gems

3.1.3.1. Capybara

3.1.3.2. Rspec

3.2. Sugestões

3.2.1. Redis

3.2.2. Gems

3.2.2.1. sidekiq

3.2.2.2. sidekiq-scheduler

3.2.2.3. Materialize

3.2.2.4. Nokigiri

3.2.2.5. Rest-client

3.2.3. Elasticsearch ou PgSearch

4. Passo a Passo

4.1. Start

4.1.1. Entrar no canal do Slack do seu grupo

4.1.2. Fazer uma videochamada com o grupo

4.1.3. Criar o repositório do Projeto no Github

4.1.4. Separar as tasks iniciais no Trello ou MeisterTask

4.2. Desenvolvimento

4.2.1. Cada membro faz as tasks definidas

4.2.2. Novas tasks são definidas em novos calls

4.2.3. Caso necessário os membros fazem pair programmer para resolver bugs e desenvolver features

4.3. Entrega

4.3.1. Envio do link para o Github do Projeto (e link para o projeto online se existir) para [email protected] e no #general do slack

5. O Projeto

5.1. Um site de busca para Jobs de programação

5.2. Os jobs listados são links para outros sites de Jobs

5.3. As vagas são extraídas via web scraping 1 vez ao dia dos outros sites

6. Regras

6.1. Web Scraping

6.1.1. O Web Scraping deve ocorrer ao menos em 3 sites diferentes

6.1.2. O Web Scraping não deve passar de 1 vez ao dia

6.1.3. As vagas armazenadas devem ser substituídas todos os dias através do web scraping

6.1.4. Você não deve fazer Web Scraping de sites que explicitamente digam que isso é proibido nos termos de uso :)

6.2. Navegação

6.2.1. O usuário deve ser capaz de fazer buscas no site que o levarão a uma lista com as vagas armazenadas

6.2.2. Ao clicar em uma vaga, mais detalhes devem ser mostrados

6.2.3. Nos detalhes da vaga deve haver um link para a vaga no site original

6.2.4. Caso existam mais de 15 resultados para a busca, você deve realizar a paginação deles