Weekly Tech Notes #6

Hey folks! 👋

This past week was quite busy, so I just watched a video on Pastebin system design.

The author has a series of videos on this topic, and I’ll probably watch more of them in the future.

Key takeaways are:

  • Difference between functional and non-functional requirements. The first ones describe what a system should do. Non-functional, instead, are the ones that describe how a system should perform (e.g., latency, availability, etc.).
  • If a paste is too big, we can use a mixed approach: store the first part in a database to give a quick preview to the user and the rest in a bucket available on demand.
  • He uses a Distributed Key Generation Service for URLs generation, but UUIDs would have been sufficient.

Have a great end of the week!