I love fast food. It started as a teenager when I worked at McDonald’s in New Zealand. There were only a few locations back then and we were amazingly busy, with lines usually out the door at lunchtime. We made Big Macs as fast as we could — 12 at a time. Sure, the work itself was a little mundane. But it was strangely (and rewardingly) competitive.
For me, the joy came from the satisfaction of trying to go faster and faster while still making those perfectly standard (and highly demanded) burgers every time.
That early job taught me an important lesson: There is nothing menial about providing joy to customers and doing it over and over again.
I have carried this philosophy into my work as co-founder and CTO of Aha! But some of my greatest satisfaction still comes from the simple parts of what I do. This includes lesser-noticed tasks like getting UI elements pixel-perfect in their alignment or optimizing the last bit of performance from a SQL query.
Science backs up my way of thinking. In fact, researchers recently confirmed that workers are more likely to stick to a job — and be happy in it — when they find small pleasures in their daily routine.
If you are a software developer, it is important to find joy in the mundane. Here are three places to start:
Support is often dismissed by engineers as being a less valuable use of time. However, I think that the opposite is the case in practice. Hearing problems directly from customers gets you to solutions faster. It also helps when customers share common failure modes and use-cases. This shows you where you can improve for the future while also giving you greater empathy for the customer.
Edge and failure cases
Thinking about the ways some code might fail is hard and requires a lot of concentration. It is also not very rewarding since you are spending time on something that most people will never experience. However, brittle software — software that breaks easily or unexpectedly — is never desirable. So when hiring at Aha! we always look for engineers who have that somewhat masochistic trait to keep pressing forward until even the most complex edge case is solved.
Polishing UI and UX
This requires a constant eye for detail and being unsatisfied with things that are almost right. Iterating on a user interface can be tedious, and different developers have a different tolerance for how many iterations they will go through. But the best UI developers are willing to stick at it for longer. And the result shows — but often not to the person using the feature. Users only tend to notice when a user interaction is not perfect. When it is perfect, it is unnoticeable.
Great developers know that some of the smallest and seemingly mundane tasks can have the biggest impact.
It is true that in any big project, there will be plenty of work that could be seen as tedious. But if you find that tedious work off-putting, it can be hard to get to completion. Alternatively, it can be easy to call something “done” without putting in that last bit of effort on the polish.
I learned this early on by delivering those perfectly standard burgers. And I am still pushing myself today to be better and faster — even when the work is at its most tedious. I would encourage you to do the same. Embracing your most mundane work will lead to great results. And I bet you will find joy in the process.
What small tasks bring you joy at work?