4 Software Design Principles I Learned the Hard Way
I recently built and designed a massive service that (finally) launched successfully last month. During the design and implementation process, I found that the following list of “rules” kept coming back up over and over in various scenarios. These rules are common enough that I daresay that at least one of them will be useful for a project that any software engineers reading this are currently working on. But if you can’t apply it directly now, I hope that these principles are a useful thought exercise that you are free to comment on below or challenge directly too. One thing I will note here is that of course - each “principle” has a time and place. Nuance is necessary, as always. These are conclusions that I find myself erring towards in general because oftentimes, the opposite that is the default that I see when I’m reviewing code or reading design docs. To be a top software engineer, you need to know a lot. But how do you know what you don't know? SWE Quiz is a compilation of 450+
4 Software Design Principles I Learned the Hard Way If there’s two sources of truth, one is probably wrong. And yes, please repeat yourself. Apr 22, 2024 165 15 11 Share Engineer’s Codex is a publication about real-world software engineering. Subscribe I recently built and designed a massive service that (finally) launched successfully last month. During the design and implementation process, I found that the following list of “rules” kept coming back up over and over in various scenarios. These rules are common enough that I daresay that at least one of them will be useful for a project that
related reading
- Everything I know about good system designseangoedecke.com
- Cognitive load is what mattersminds.md
- The unwritten laws of software engineeringnewsletter.manager.dev
- Essays on programming I think about a lot | benkuhn.netbenkuhn.net
- Do the simplest thing that could possibly workseangoedecke.com
- Mistakes engineers make in large established codebasesseangoedecke.com
- Everything I know about good API designseangoedecke.com
- Write code that is easy to delete, not easy to... — programming is terribleprogrammingisterrible.com
- How to write complex softwaregrantslatton.com
- Everything I know about good system designseangoedecke.com
- Advice to Myself When Starting Out as a Software Developer - The Pragmatic Engineerblog.pragmaticengineer.com
- A Bunch of Programming Advice I'd Give To Myself 15 Years Ago | Marcus' Blogmbuffett.com