I follow an architecture principle I call The Law of Collective Amnesia
A software architect introduces 'The Law of Collective Amnesia' to explain how system design intent fades over time and offers strategies to defend architecture.
A software architect introduces 'The Law of Collective Amnesia' to explain how system design intent fades over time and offers strategies to defend architecture.
A senior engineer reflects on the transition from individual contributor to system designer, exploring the addictive nature of shipping code versus the long-term leverage of building robust systems.
A lecture on control theory, explaining feedback as an algebraic interconnection for robust system design, using amplifier gain as an example.
A software engineer shares seven career aspirations for 2026, focusing on fundamentals, systems thinking, communication, and long-term impact.
Explores how AI prompts have evolved from simple text strings into critical, reusable system components with logic, and the challenges this creates.
A Principal Engineer compares interview processes at 8 major tech firms, detailing coding, system design, and behavioral rounds.
A strategy for building low-latency systems by deferring non-essential processing to an event-driven platform to optimize real-time performance.
Explains the concept of a 'synchrony budget' for designing distributed systems, advocating for asynchronous communication to improve performance and availability.
A summary of Dr. Werner Vogels' re:Invent 2024 keynote on system design principles like evolvability, decomposition, and cell-based architectures.
Summary of AWS re:Invent 2024 Day 4, covering Werner Vogels' keynote on simplicity vs. complexity and technical sessions on serverless and DynamoDB.
A review of the 'System Design Interview' book, analyzing its strengths and weaknesses as a resource for technical interview preparation.
A software engineer draws parallels between spacecraft design principles and software engineering, emphasizing data-driven decisions and balanced system design.
A senior engineer shares notes and strategies for tackling system design interviews, focusing on clarifying requirements and core concepts.
A backend engineer contrasts the diverse, complex nature of backend system design with the more uniform iOS development, based on hiring interview experiences.
Explains the key differences between 32-bit and 64-bit computer systems using simple analogies for beginners.
A talk on system design principles for building production recommendation systems and search engines, presented at an MLOps Community meetup.
A talk on system design for recommendation and search systems, covering architecture and production considerations.
Explores system design patterns for industrial-scale recommendation and search engines, focusing on offline/online components and retrieval/ranking stages.
A software developer uses a personal story about walking in high heels to illustrate the importance of seeing the 'big picture' when implementing features.
A developer critiques modern software complexity, arguing that overengineered tools like Docker and Gulp create more problems than they solve.