Aim: To design and build a real-time restaurant inventory manager.
You have a franchise of some restaurants. At the beginning of each day, you need to stock up the inventory of each restaurant with ingredients required to serve the items listed in its menu. You decide to build a system which calculates what items need to be bought and in which amount in the beginning of the day. You need to order enough amount of each item to serve its menu for the entire day. Once you have stocked up, customers start placing their orders and your restaurant starts serving them their item of choice till that restaurant does not run out of ingredients. The next day you have information regarding the state of the inventory and the orders of the previous day. Using this, you need to decide how to restock the inventory the next day. If any ingredient has expired, you are not supposed to use them to place orders.
Two files with the given information.
More details can be found in the helper doc.
Submission Requirements :
You are expected to submit the following:
The scoring will be based on the following factors:
Q: Is there any restriction on the programming language being used?
A: We would prefer if the code is in C++, Java or Python. We are looking for an object oriented design with emphasis on data locality.
Q: What happens when an order is placed for which ingredients are not available?
A: You are not supposed to fill the order. The inventory will not change due to the processing of the order. Restocking can only happen in the beginning of the next day.
Please feel free to get in touch with us if you have any queries.
You can send an email to data-science-challenge (AT) tworoads (dot) co (dot) in to reach us.