Resources
Links to resources that I think are really informative and foundational to modern software engineering.
- All
- Engineering
- CXO / Management
- SRE / DevOps
Blogs and Resource Sites
- DHH - Creator of several successful startups and Ruby on Rails. I would describe him as "insightful and interesting" - take that as you will.
- Joel Spolsky - Founder of the companies behind Trello and Stack Overflow. Has an organized and insanely extensive blog with over 1000 articles.
- Roy Lindauer - Savvy DevOps, Platform and Automation Engineer. Has a blog full of useful nuggets of knowledge.
YouTube
- #NoEstimates - Allen Holub: Estimation is a bad thing. Explains how to plan without estimations and get back to delivering value.
- Attitude Determines Altitude: Engineering Yourself & Your Teams - Randy Shoup: Management philosophy and how to lift up your engineering teams instead of choking the life out of them.
- Code as Risk - Kevlin Henney: A discussion of code as a cost center, followed by a discussion of C# code in the real world.
- Feature Branches and Toggles in a Post-GitHub World - Sam Newman: A discussion of a real world trainwreck and how to manage the complexity of CI on "enterprise" applications using feature toggles and dark launches.
- Gilding the Rose: Refactoring-Driven Development - Kevlin Henney: A discussion of refactoring and TDD by example using a complex existing codebase. A must-watch for engineers unfamiliar with TDD and/or refactoring.
- How to Truly Build a Team - Cindy Xin: A real world example of what "shift left" looks like for "QA" teams.
- Minimum Viable Architecture - Randy Shoup: How and when to decompose your architecture while scaling - with anecdotes from eBay and Amazon.
- Moving IO to the edges of your app: Functional Core, Imperative Shell - Scott Wlaschin: A high level discussion of purity and functional design in your Object Oriented language. Requires a solid understanding of Design and Architecture.
- Object-Oriented Programming is Bad - Brian Will: I initially gave this a thumbs down when it came out and dismissed it as nonsense. 8 years later, this is basically how I arrange code.
- Prioritizing Technical Debt - Adam Tornhill: How to measure technical debt and prioritize it as a business need.
- The Unreasonable Effectiveness of Simplicity - Randy Shoup: How to keep your architecture simple and decoupled while scaling - with anecdotes from eBay and Amazon.
- War is Peace, Freedom is Slavery, Ignorance is Strength, Scrum is Agile - Allen Holub: 'Agile' has become meaningless.
- What Your Mother Never Told You About Agile Development - Aino Corry: Applying Agile practices in real companies; Aino has a very dry sense of humor and great anecdotes.
- You Keep Using That Word: Asynchronous And Interprocess Comms - Sam Newman: Getting into the weeds of "async" communication between services and the confused terminology thereof.