Skip to content
Article

Resisting the Urge to Do Work: Exploration Versus Exploitation Activities in Software Development

I find I am constantly having to stop myself from “doing work”. After many years as a software developer, the desire to solve issues immediately is deeply ingrained. Put an issue on my plate, and I’ll pick up and fork and knife faster than you can say “prioritize”. Why? Because solving issues and closing tickets feels good. I get to show how smart I am, I get to click the “Resolved” button, and everyone gets to see the backlog shrink. Instant gratification (well, almost). However, I’ve been working with a client as an application consultant, and my instincts are really tripping me up. During the user acceptance testing phase of a new system rollout, a large number of issues have been raised.

What I WANT to do is start with the highest priority issue, and knock them off one by one.

What I NEED to do is read and understand every issue before doing anything.

Why?

  • Because the issues may be grouped into logical batches, and processing a batch is often more efficient than fixing them one by one.
  • Because assigning issues in a batch to other people makes the coordination effort worthwhile versus just doing it yourself.
  • Because solving one issue correctly can remove the need to solve other dependent issues.

Sounds simple enough right?

If I was a robot, it would be. But reading and understanding each issue without trying to immediately solve it for me is like concentrating on everywhere I am itchy before I start scratching.

There is an adage:

How do you eat an elephant?

One bite at a time.

Well, you may lose your appetite looking at the entire elephant before you start eating. For me, it is stressful to tally everything that needs to be done rather than just doing it.

During my MBA, my professors like to talk about exploitation versus exploration activities. I like to think of exploitive activities as something you do routinely, and they are associated with certain, predictable returns, such as resolving issue tickets. An explorative activity involves thinking about how and why you do things, and may or may not have returns. It’s possible that the issues can’t be grouped into batches, or that nobody can solve the issues except for me, but it isn’t known until I read through all the issues first.

Usually exploitation and exploration are used to identify processes at a much higher level, such as a company focusing on servicing existing customers versus seeking new markets. Successful companies, they say, have a balance between these two activities (the optimal ratio depends on the industry they are in). I’ve found however, it useful to think of my daily activities in these terms, to ensure that I’m not missing the big picture by being too heavily focused on activities I naturally favor.

Register to receive the latest Dynamics 365 Insights

Our proven Success Framework minimizes risk and promotes alignment to results

Explore how Catapult has helped hundreds of businesses successfully adopt cloud solutions and achieve the result they’re looking for.

  • Icon

    Learn

  • Icon

    Load

  • Icon

    Launch

  • Icon

    Level Up

Achieve out of this world results

Our easy-to-navigate Success Framework guides our customers through four critical stages that build towards successful adoption of a tailor made Dynamics 365 business solution

LEARN ABOUT OUR SUCCESS FRAMEWORK

Catapult Leadership

Get real with your stakeholders, and engage partners in frank, open conversations about the real priorities and creative strategies for achieving the most valued outcomes.

Elliot Fishman, CEO