The challenge here is to design a dynamic and responsive application which takes a user’s portfolio parameters and displays the performance of the portfolio over the simulation period.

Motivation :

Backend engineers work on the server components of multi-tier web applications.  They focus on web services and the data store (data modeling and databases). They may also be involved with business rule implementation logic.The idea is to test your ability to design/implement an application from scratch in a way that ensures high performance and nice user experience  

Input :
You are provided with the closing price data for 3 products in each of the 5 sectors(IT,Power,Banking,FMCG,Automobile).The data has been taken from yahoo finance and we do not take any responsibility for the correctness/reliability of the data. You are also provided a helper doc which explains the relevant finance terms and computation of required performance stats.
Helper Doc
Submission Requirements :

You are expected to submit the following:

  1. You are expected to deploy the application on the web and send us the link to the application

  2. The application code with instructions on how to install/run the application

  3. One(or two) page report on the application and database design/architecture with the motivation behind the approach

  4. The response time of the application for various useful test cases(request patterns)

Scoring :

The scoring will be based on the following factors:

  1. The performance(response time) of the application for dynamic requests made by the user.

  2. Approach taken to handle the data i.e. pre-processing, storage, retrieval, and presentation of data.

  3. Intuitive and User friendly displays are always appreciated.

  4. How one tested the correctness/robustness of the application.


Q: Which web application framework are allowed for this ?

A: For server-side development we would prefer if you use PHP, Python(Django) or Ruby(RoR). But in case you feel that using some other framework/language would improve the performance a lot then feel free to use any framework except CMS.

Q: Where to deploy the application?

A: We would suggest using any free hosting service.For example: 000webhost for PHP+MySQL, Heroku for Ruby on Rails,  Google app engine for python etc. If the hosting service does not provide access to all the services you would like to use, please let us know. We will either provide you a hosting account,or ask you to develop the application locally.

Q: How do I allocate between shares of each sector?

A: You can assume equal allocation between shares of each sector. Money allocated to a sector is equally divided among its constituents. For example, 30% of the portfolio in Auto sector means 10% in TATA, MARUTI, HERO each.

Q: Do I assume number of shares as fractional or integers?

A: You can assume fractional shares.