Oracle | System Level Design | IC3 - Senior Software Engineer
Summary
This post describes a system design interview experience at Oracle for a Senior Software Engineer role, where I was asked to design a hospital management system.
Full Experience
The interview focused on a system level design problem.
System Level Design
The hospital has multiple wards. Every ward has patients. Every ward is managed by a group of Nurses If a medicine is to be given to the patient, the nurse would do it. Doctors come to see patients check medicines, what new medicine to give, and cancel any existing medicine. Doctors use an app to place orders for medicine. Medicine A should 2 times a day to 3 patients (6 tasks) First day morning - evening
Nurse has a dashboard and see task that which medicine is to be given to the patient on time and mark the task as done.
There are 4 major parts we have in our system,
- Order management system responsible for searching, modifying and canceling order.
- An App to place, modify and regenerate orders.
- Task management system, show which task is created.
- Internal dashboard shows which task has done, yet to be done.
Scale: 10000 patients in one hospital There can be multiple hospitals as well in the city.
Design a High-Level System design supporting the below use case,
- Highly Scalable
- low latency
- Availability
- Fault Tolerant
- APIs Design
- Work-flow Design
Interview Questions (1)
System Level Design
The hospital has multiple wards. Every ward has patients. Every ward is managed by a group of Nurses If a medicine is to be given to the patient, the nurse would do it. Doctors come to see patients check medicines, what new medicine to give, and cancel any existing medicine. Doctors use an app to place orders for medicine. Medicine A should 2 times a day to 3 patients (6 tasks) First day morning - evening
Nurse has a dashboard and see task that which medicine is to be given to the patient on time and mark the task as done.
There are 4 major parts we have in our system,
- Order management system responsible for searching, modifying and canceling order.
- An App to place, modify and regenerate orders.
- Task management system, show which task is created.
- Internal dashboard shows which task has done, yet to be done.
Scale: 10000 patients in one hospital There can be multiple hospitals as well in the city.
Design a High-Level System design supporting the below use case,
- Highly Scalable
- low latency
- Availability
- Fault Tolerant
- APIs Design
- Work-flow Design