I've read thousands of articles over the last 20 years in Tech.
Agile, Career, Distributed Systems, Engineering Management, Metrics, Programming, Testing, Types...
Below are The 22 Articles that Impacted my Career the most ➕ my main highlights from each one.
🧵🧵🧵
1️⃣ On Software Rewrites: "Things You Should Never Do, Part I" by Joel Spolsky (@spolsky).
→ Link: joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/
~2013: It heavily influenced me probably 10 years back and explains a lot about why I’m not a big fan of “Green Field Projects.”
3️⃣ “Generalizing Specialists: Improving Your IT Career Skills” by Scott Ambler (@scottwambler).
→ Link: agilemodeling.com/essays/generalizingSpecialists.htm
~2008/2009 and It helped me a lot to understand how to think about my skills and to evolve as a professional focusing on being a “T-Shaped Engineer.”
5️⃣ The Law of Leaky Abstractions by Joel Spolsky (@spolsky).
→ Link: joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/
~2016: it helped me to see how libraries, programming languages & frameworks will always abstract you from things that might be crucial for you to solve a deep problem.
6️⃣ How to Misuse Code Coverage by Brian Marick (@marick).
→ Link: exampler.com/testing-com/writings/coverage.pdf
~2014: It was mind-blowing in so many ways. It introduced me to the concept of "Faults of Omission" and made me go on the rabbit hole of Checking vs. Testing.
7️⃣ Test Mercenaries by Mike Bland
→ Link: mike-bland.com/2012/07/10/test-mercenaries.html
~2015: I'm always impressed by how much I learn every time I revisit this blog post. This explains in details how Google changed its Engineering Culture on Unit Testing around the time they acquired YouTube.
8️⃣ Mocks Aren't Stubs by Martin Fowler (@martinfowler)
→ Link: martinfowler.com/articles/mocksArentStubs.html
~2011/2012: I remember exactly where I was when I read it and had many epiphanies. It's that good.
Print it and read it on paper. Take notes, carry them around with you.
1️⃣0️⃣ Consumer-Driven Contracts: A Service Evolution Pattern by Ian Robinson (@iansrobinson).
→ Link: martinfowler.com/articles/consumerDrivenContracts.html
~2012: Read this on ThoughtWorks Anthology Book and it was mind-blowing. This article set all the foundations of we call "Contract Testing" today.
1️⃣1️⃣ Goto Fail, Heartbleed, and Unit Testing Culture by Mike Bland.
→ Link: martinfowler.com/articles/testing-culture.html
~2014: I've more highlights on this article than I have in most books. Probably the canonical article I would recommend anyone to read on Unit Testing and Engineering Practices.
1️⃣2️⃣ Being glue by Tanya Reilly (@whereistanya).
→ Link: noidea.dog/glue
~2019: Another article that has had a big impact more recently on my career. I've found myself recommending it to multiple folks struggling career-wise without knowing why. It's eye opening! 🤯
1️⃣3️⃣ Strong Typing vs. Strong Testing by Bruce Eckel (@BruceEckel).
→ Link: archive.ph/sNiUC
~2013: Not a game changer now, but kind of revolutionary for me when I switched from Java to Python. Made me think about a dimension of programming I was blind to: Types.
1️⃣5️⃣ Implementers, Solvers, and Finders by Randall Koutnik (@rkoutnik).
→ Link: rkoutnik.com/2016/04/21/implementers-solvers-and-finders.html
~2022: What if we stopped using Seniority/Titles as a proxy and instead started to use the degrees of autonomy & what the job entails to describe things?
1️⃣6️⃣ How to mentor software engineers by David Golden (@xdg)
→ Link: xdg.me/mentor-engineers/
~2021: Sent this article to many staff engineers trying to structure & be more effective with their mentees.
Thanks @dballona for sharing!
1️⃣7️⃣ The Engineer/Manager Pendulum by Charity Majors (@mipsytipsy).
→ Link: charity.wtf/2017/05/11/the-engineer-manager-pendulum/
~2020: First article I read that made crystal clear the numerous benefits career-wise of switching back and forth between as an IC and as a Manager.
1️⃣9️⃣ On Pair Programming by Birgitta Böckeler (@birgitta410) & Nina Siessegger (@sssggr)
→ Link: martinfowler.com/articles/on-pair-programming.html
~2020: Hands down the best article on Pair Programming I've read. It reflects 💯 my experience and many good practices my team and I also came up with.
2️⃣1️⃣ HOWTO negotiate your salary and benefits - for women by Valerie Aurora (@vaurorapub).
→Link: archive.ph/1ai4e
~2010: I've lost track of how many times I shared this with colleagues. It opened my mind and helped me to start to negotiate salary early in my career.