An ongoing series about software engineering for early engineers.
Attitude
Think in Tradeoffs
There are very few silver bullets for becoming a better software engineer, but I’ll argue that learning to view most decisions as tradeoffs, not good versus bad, is the top one.
Pierce the Abstraction Wall
To be an effective developer, regularly aim to pierce the abstraction wall, especially when you identify a soft interface.
Don’t Write Code
I’ll make an only partially hyperbolic exhortation: software engineers should write less code.
Read Code
In software, plenty of people write code, but precious few spend time reading it—especially code outside their day to day work. That is a mistake. Early in your career, act like an aspiring writer and embrace reading diverse…
The User is King (And Not)
If you want your product to be widely used—or to work on projects that won’t be shut down at the first sign of trouble—remember that the user is king.
Mistakes
Beware Engineering Media
The most common mistake you’ll make is to see engineering media as a mirror of what’s going on in our industry. Instead, it’s more akin to a bazaar.
Beware Burnout
Why there’s so much burnout in software and what to do about it