We are all moved by great movies, cinematography, and stories. Watching them is fun because you can imagine yourself resonating with a character. You are thrilled by the tension the story creates and curious how it will be resolved.
Many find software development a dull job where you have to write exactly what your PM or client asks for. It’s exciting at first, but it can become boring after a few iterations.
Whatever doesn’t excite you, change it.
When we, as developers, push ourselves to be protagonists, we discover many problems to solve — a lot of tension to resolve. Here are a few good problems for everyday devs:
- Your CI/CD takes a huge amount of time because you forgot to leverage caching.
- You forgot to add connection pooling and your service bombarded the database, causing too many open connections.
- You misconfigured the garbage collector and now you have a memory leak that keeps growing.
- If it takes you more than 3 seconds to understand what you wrote last week, it’s poorly written.
- Latency is high for your users in Mumbai because your servers are in Singapore.
- The database becomes very slow when you start dumping data in batches.
- You want consistent API responses for read operations for users in both Mumbai and Singapore.
These are not trivial problems; they happen every day. These are our villains — irritating, unwanted, and surprising. We should eliminate them.
Pick your fight. This is one way to make your day exciting. If you can’t tackle these at work, do it in your personal projects.
If you chase the right tension, a story will follow.