Categories
Optimization

The Lazy Engineer

They say that necessity is the mother of invention. Perhaps, then, a certain type of laziness is the fun uncle? Like I said in my first post on optimization, as an engineer, I’m driven to optimize, to make things work better. But I think there is a secondary force in operation here: a drive to work less—at least, to work less on uninteresting things.

One could make the argument that this is actually still a form of optimization, just at a higher level: that I’m optimizing my time to work more on interesting things and less on uninteresting things. This sort of meta-optimization is at the core of what I am calling the Lazy Engineer (the group of which I consider myself to be a member).

The Lazy Engineer doesn’t want to waste time on uninteresting tasks, therefore he optimizes those tasks to automate them and free up more of his time for interesting tasks. But there is an even higher level to this meta-optimization for the Lazy Engineer: he also doesn’t want to waste too much time optimizing, so he optimizes his optimizations for time spent.

The guiding principle for this meta-meta-optimization is the Pareto principle, also commonly called the 80/20 rule. In this context, the application is this: find the 20% of a task that accounts for 80% of its outcomes, and build a system around that. Don’t waste time optimizing for the remaining 20% of outcomes, because that last 20% will take 80% of the time to optimize.

Essentially, as a Lazy Engineer, I’m seeking that tipping point to maximize the effect of optimizations before reaching diminishing returns, and then calling it Good Enough. This goes back to the idea of seeking out the core principles of a task and focusing on optimizing those, effectively ignoring secondary outcomes and fringe benefits. By cutting out the fat and the fluff, these meta-optimized processes become simple, lean, and efficient. Perhaps one could call it Minimalist Optimization, but I think it’s more fitting to call it Lazy Optimization: the favorite tool of the Lazy Engineer.