Category: Software Engineering
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.
Don’t Write Code
I’ll make an only partially hyperbolic exhortation: software engineers should write less code.
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.
Pierce the Abstraction Wall
To be an effective developer, regularly aim to pierce the abstraction wall, especially when you identify a soft interface.
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.
Why there’s so much burnout in software and what to do about it
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 code.
Four Startup Engineering Killers
In 2016, I gave technical advice to a first-time entrepreneur building a seed-funded food delivery marketplace. In my view, every tech choice the company had made was wrong. Startup engineering is different from any other type of software engineering. It demands short- and medium-term productivity, relative to the “right way” of building systems.
The Marketing Behind MongoDB
Countless NoSQL databases competed to be the database of choice. MongoDB’s marketing strategy helped it become the winner.
Startup Engineers and Our Mistakes with MongoDB
MongoDB got rave reviews for its usability. But other features mattered too when choosing a database for a growing startup.