#Excalidraw — Collaborative whiteboarding...

1 messages · Page 1 of 1 (latest)

ornate basin
#

A bunch of things:

  • How are the recommendations made?
  • What are your upload and download APIs?
  • How are you handling different resolutions, like 720p, 1080p, etc.?
  • How are videos getting cached in the CDN?
  • How are videos going to be uploaded in your system? Do not make the assumption that the videos already in your system on day 0.
  • Are you saying you're sharding the database by userId or just the user table on userId?
  • Why are you sharding on userId?
  • How are you doing identity and access management?
  • Why did you choose a SQL DB over a non-relational DB? (Aside, if you're using a SQL DB, I suggest using Postgres over MySQL since it's more prevalent in industry and has more robust features than MySQL)
  • What are your disaster recovery plans?
  • How is your system gonna deal with spike traffic?
  • What are you caching in your Redis, and what’s your cache strategy?
ornate basin
#

Overall, for a new grad with no industry experience (not counting internships), your design is an ok start, but you're gonna need a ton more detail in everything. You have to keep the mindset that you and other engineers (potentially, an engineering team that doesn't include you) will be tasked to implement the design, and you will need to minimize the ambiguities in your design and justify everything you include.