Evaluating bids

Develop a book recommendation website (i.e. build the recommendation engine + backend + frontend)

Published on the March 14, 2019 in IT & Programming

About this project

Open

We are a company looking for a programmer capable of building a book recommendation system from scratch. Our intention is to obtain a quotation for the project described below, including:
Work hours required to reach an MVP of this product (including key milestones and technical prerequisites/concerns if any):
1. Price per hour worked
2.

High-level scoping of work to be delivered (details will be given if shortlisted)
3. Prior related projects and professional background
Based on information provided, we will shortlist applicants and be in contact shortly.

PROJECT

Objective : Build an accurate book recommendation engine based off an underlying algorithm that can be easily integrated on a website. The core idea is to alleviate the difficulty to find a new book that matches traits of the book such as genre, writing style, pace, complexity, etc… Data points of how each user scores a book should be captured, and feed back into the scoring of the book, and a user’s individual profile. Users will review the book based on traits, and conventional star ratings.

Over time, we intend to build a system that considers the user similarity vis-a-vis other users reading preferences to recommend books.

Deliverables:
- API of recommender system that can be plugged into our website (, including:
- The code for the algorithm coming up with books’ recommendations (most likely a hybrid system using both content and collaborative filtering)
- Back-end database with books’ scores for each users
- Front-end plugin of recommendation search engine (i.e. API that we can plug into our website)
- Database code for storing user profiles (rating history of traits, stars, interaction with other users).
Review system which captures user’s rating of book’s traits, and updates dynamically to generate new recommendations based on captured data.

We expect the the recommendation engine and other parts of the website to be built in separate microservices and to be integrated with Jenkins

Work requirements:
Developer will be responsible for the development of the recommender system and ui/ux designing of the recommendation engine

functions and parameters :
we (the client) would manually score a set of books following 7 criterias
- genre
- quality of the plot (i.e. What happens and chronology)
- Pace of the story
- Character’s traits
- Complexity of the story
- Writing style and tone
- Addictiveness of the story (i.e. Hook)
Using a scale and a cursor, user would use criteria mentioned above to search for a book to read
User would have to prioritize 3 of the most important criteria for search (excluding genre which would be used as a filter rather than a search parameter)
Using standard deviation and prioritization of criteria, algorithm would match parameters chosen with existing books’ scores and recommend matching titles with similar traits
In addition, user would have the ability to tag a book with one keyword and search books through this function (e.g. eye-opening, disturbing)

Technology, language and device compatibility:
- Language: Python (necessity to implement core components in C to be confirmed)
- Device compatibility: web (no app planned for now)
We expect the the recommendation engine and other parts of the website to be built in separate microservices and to be integrated with Jenkins

What would be provided by the client:
- Excel spreadsheet with data points for search algorithm
- Wireframe/powerpoint prototype of recommendation engine
- UI Design color codes

Category IT & Programming
Subcategory Web development
What is the scope of the project? Create a new custom site
Is this a project or a position? Project
I currently have I have an idea
Required availability As needed
API Integrations Social media (Facebook, Twitter, etc.), Other (Other APIs), Cloud Storage (Dropbox, Google Drive, etc.)
Roles needed Developer

Delivery term: Not specified

Skills needed