Expand your SuiteScript skills in the Sustainable SuiteScript community for NetSuite developers.

The Butterfly Effect

Created: January 6, 2021

Your sales team/process has done a marvelous job filling up the pipeline.

You eagerly say Yes to them all; you can't leave money on the table.

You pack those projects on the calendar as tightly as possible; time is money.

Your team is constantly 100% utilized - or more; they can't sit idle.

Projects continue apace for some time.

As your team digs into a certain project, they discover it's going to be far more difficult than imagined in the discovery process. It's going to take much more time than expected.

You rush to hire the first person(s) good enough to help; you can't be late.

You welcome them to the team and get them started on the project right away.

Their work is slower than you expected; they need time to acclimate.

They consistently need help from other team members, pulling attention away from the project; the project slows down further.

The team works nights and weekends to try to push it over the finish line; the deadline looms.

With every passing day, everything seems to take longer; for every two steps forward there is at least one step back.

The project deadline flies by, not to mention the budget.

Like watching the flight schedule at an airport during a snowstorm, you watch your meticulously scheduled projects become a cascade of delays.

Your team is exhausted, your clients are furious, and you're constantly on the phone offering concessions and reassurances.

The dysfunction becomes the normal state of the business as you scramble to pick up the pieces.

There is no happy ending to this story. In fact, if I were to continue, things get far worse before they ever get better - and many times they simply never get better. And I only introduced a butterfly to one project. In reality, you'd have a kaleidoscope of butterflies introducing variance into every project (scope creep, clients going dark, unplanned absences, unforeseen obstacles to name just a few). Yet this sort of operation seems to be pervasive across the professional services landscape. We seem to have resigned ourselves to dysfunction as the way of doing business.

There is no fly in the ointment to be removed here, but rather a cloud of them:

  • Hourly billing immediately enforces a misalignment of incentives between you and your clients, and encourages unproductive, unhealthy habits for employees and teams.
  • Humans cannot predict the future (yet). Project deadlines provide only an illusion of certainty.
  • Work beyond 8 hours in a day is almost never productive and is often actively detrimental.
  • Adding people to a project does not make it go faster.
  • Writing code for a client is not the most valuable thing a good developer can do.
  • Business is not a zero-sum game; profit can be generated on both sides of the equation.
  • The ability to say No generates far more opportunity than the willingness to say Yes.
  • Idle time is something to be encouraged, not eliminated.
  • Hiring is the most disruptive and least profitable action you can take to grow a business.
  • Revenue, head count, and hours worked are all terrible metrics of success.

There is no single fix, either. I don't yet possess a magic wand or an Ace up my sleeve. This is not a "Hire me, and I'll make your troubles disappear!" sort of message.

It's my line in the sand - my public proclamation that I find the status quo of professional services software practices to be detestable. I know that we can do much better for our employees and for our clients.

It's also my promise that these are the types of ideas I'll be delving into - exploring, writing, and advising on saner, healthier ways to operate a professional services development team.

If you'd like to explore with me, let's have a conversation.