Skip to content

Instantly share code, notes, and snippets.

@fengyj
Last active February 6, 2024 15:41
Show Gist options
  • Save fengyj/e6dd38c0a4926771e85f5da2f6eb048a to your computer and use it in GitHub Desktop.
Save fengyj/e6dd38c0a4926771e85f5da2f6eb048a to your computer and use it in GitHub Desktop.
Prospect System Design

Prospect System Design

Explaination:

This design is just created based on my crude understanding of the business logics of the system. This is just only a demonstration. To make it more reasonable, need to understand the things in following aspects.

  • For this system, what benefits can provide to clients or what problems it can resolve for clients, why they need it?
  • How will clients use this system, what functions it will provide?
  • How it gets the data clients need? any processing logic needs to be applied on the data?
  • Any requirements on technical aspect?
  • Any plans in short term? And mid, long term?

And here is my assumption:

  • Clients visit Linkedin profile page, and import the infomation to the system, and follow it (the current job, the previous jobs I guess they're useless to the client). On the backend, the system will invoke some function to get the phone and email information and save them within the serve_record.
  • When client clicked import button on the UI, the link of the profile page will be as the parameter passed back to the backend API. Then the API will download the content and grab the information based on a definition about how to parse the document. And there is an API or function can be used for getting the phone number and email via the full name and company name.
  • The system will be deployed on AWS, and due to the amount of clients, the system can be deployed on one region, in multiple zones.
  • Needs a system operation dashborad, so that operator can update the definition of the parser for Linkedin (or other sources), and do other operation works, such as check the monitors and handle the system exceptions.
  • The system will support to grab the information from other sources other than Linkedin; or support fuzzy search for companies or employees by name based on similarity algorithm; load the data ahead client search it.

System Architecture

Data Models

ER Diagram

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment