In a company named TW
, There is a team consist of 4 members and a leader, we can named this team Eagle team
.
The following are Eagle team
members:
- Nicole (team leader)
- Irene (member)
- Michael (member)
- Dan (member)
- Kal (member)
In the work day, Nicole always submitting around 10 contacts toward the team, a contact is a potential buyer of company product. Each contact has the following information in them:
- Name
- Phone
Nicole offered these contacts one by one to each team member randomly. But, the agent will never offered a same contact.
Each Eagle team
team member should reach out a contact they assigned to, whether it by email or phone.
- Create an endpoint to receive contact information and save them to the Database that only can be used by Nicole
- Each contact should be unique by email address
- Create a worker/cronjob that can offer a new contact to a team member, that system should follow these rules
- System choose the team member randomly
- Only a contact for a team member at given time (unique)
Note:
- Ideally, we can send a notification whenever a system has choosen the agent, but, for simplicity we can stub out that by doing a mock API call to other system.
- Mysql
- Node JS with Typescript
- Other JS libraries