Reading List
Published on December 23, 2020
Updated on July 3, 2021
This is a collection of software engineering-related articles, books and videos I have read or watch and recommend to others.
2021
Articles 2021
- Figma: How Figma’s multiplayer technology works: How Figma implemented multiplayer in-house, without having to use operational transforms which is the standard multiplayer algorithm used by apps like Google Docs. I really like how the article explores synchronization issues clearly and succinctly, often with the aid of easy-to-understand animations.
- Melodies Sim: Lessons Learnt from Scaling Memcached in Production: Scaling Memcached with High Availability and Consistency in mind. Read my article review!
Books 2021
- Martin Kleppmann: Designing Data-Intensive Applications: Reading this book was one of the best decisions I ever made as a fledgling software engineer. It enlightens readers on the fundamental ideas behind the broad range of popular data systems out there today. It also discusses the key trade-offs between these systems, so readers can make better-informed decisions about which to use given the constraints and context.
2020
Articles 2020
- Github: Why Write ADRs: Architecture Decision Records (ADRs) are a great way to document how and why a decision was reached within a codebase. ADRs discuss the problem context, concerns, outcomes, alternative options and accepted trade-offs.
Conferences 2020
- RailsConf 2014 - Keynote: Writing Software by David Heinemeier Hansson: David on how, 'most information system development has very little to do with the science part of computer science' and more!
Papers 2020
- Hashicorp: Unlocking the Cloud Operating Model: Hashicorp's white paper discusses how enterprises can adopt the Cloud Operating Model to maximise the value of their digital transformation efforts. The paper succinctly but clearly explains how one can capitalise on the dynamic nature of the cloud to achieve much more than possible with a static on-premise infrastructure setup.
- The Akamai Network: A Platform for High-Performance Internet Application: The creators of Akamai's CDN (Content Delivery Network) share how Akamai overcome numerous network challenges such as the middle-mile bottleneck problem in order to enable the delivery of high-performance Internet applications.
- End-To-End Arguments In System Design by J.H. Saltzer, D.P. Reed and D.D. Clark: The authors make a strong case against prematurely performing a function at a lower-level in anticipation of usage at a higher-level in a hypothetical future and more.