Coder Social home page Coder Social logo

recruitment-task's Introduction

README

Instructions:

  1. Clone this repository with: git clone gitlab.besidethepark.com/mkaszubowski/recruitment-task.git

  2. Run ‘bundle install’ command.

  3. Copy config/database.yml.default to config/database.yml and configure the database.

  4. Run ‘bin/rake db:create’ and ‘bin/rake db:migrate’ to setup your database.

  5. Run the server.

  6. Create example user in the console.

  7. Go to localhost:3000 and sign in.

  8. Solve the tasks below.

Tasks:

  • Implement authentication using OAuth.

  • There are some failing tests in the suite. Make sure all tests are passing (change the code - not the tests!)

  • There is not flash messages displaying. Add it to the application layout.

  • Go to developers list. Currently, only first name is shown for each developer. Make sure to display their full names (remember about each develper’s show page).

  • Implement a simple voting system. Users should be able to vote for each project (and remove their vote later). User should be able to vote only once for each project. Vote number should be visible on the projects list.

  • Every project on the projects list should have its developer’s full name displayed.

  • Go to developers list. There is projects count displayed for each developer. What’s wrong?

  • Add avatars upload to developers.

  • For each developer on the developers list, display the created_at date with format ‘DD/MM/YYYY’

  • Add Language model. Every project can use many languages. Add few test languages (you can do it in console or in the seeds file, you don’t have to implement any form for that). Make sure you can choose languages while creating a new project. For each language, user should be able to display the list of projects using selected language.

  • Add ‘admin’ role for users. Admins should be able to delete other users / languages.

  • Use Github public API to fetch some developers and projects.

  • Implement some search mechanism. The choice of search engine / database is up to you.

Tips:

  • Be creative! If you are not sure what to do exactly - just choose follow your instincts (you can then write some comments to clarify how you understood the task).

  • You don’t have to complete each task! Focus on quality rather than on number of completed tasks.

  • Don’t worry too much about the look of the app. Focus on backend code.

  • There are some pieces of code that are not perfect. Can you improve the code?

  • Some gems that may be helpful: Draper, rest-client, will-paginate, CarrierWave.

  • You can use Rubocop to help you with style. If you do, there’s a .rubocop.yml file to help you.

  • Using git is a huge plus. Keep your commit small and write meaninfull commit messages. You can then upload it to your github/bitbucket/gitlab account.

  • We will appreciate if you write test for your code.

  • If you don’t understand any of the tasks, don’t hesitate to ask :)

recruitment-task's People

Contributors

mkaszubowski avatar piotrekpasciak avatar

Watchers

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