5 reasons you are unhappy with your Software Services Company

And, how to choose the right one.

James Williams
7 min readSep 1, 2020
Good services company deliver results, not excuses.
Photo by Gerd Altmann on Shutterstock

In 2019, Information Technology Outsourcing revenue was $66.5 billion U.S. dollars.

Over sixty-four miles in one-hundred-dollar bills is nothing to sneeze at or ignore.

So, if you’re are unhappy with your current software services firm, you’re in the right place. In this article, I will cover:

  • What to look for in a Software Services Company
  • How to get the greatest results
  • Steps towards finding the right Services Company
  • My top five recommendations

Let’s get started.

What do you need in a Software Services company?

You can engage a services company for a variety of reasons. And it’s paramount that you have a clear understanding of what you hope to get out of your new partner.

Are you looking for staff augmentation and extended hands? Do you want niche experts brave enough to fix-bid? Product?

Or, do you want help delivering value?

Without a firm understanding of your goals, you are likely to choose the wrong team for your needs. Your best bet is to set clear goals and expectations.

This isn’t a test, so there isn’t a right answer per se. One key is understanding where your new partner can provide the most value. How do you see value?

Are they aligned?

Is your definition of results the same as theirs? If your definition is a positive business outcome and theirs is an optimized sprint, then you’ve lost the battle and the war.

You want a partner that thinks value and knows how to deliver it. You want a partner that is willing to take a risk with you.

At the risk of stating the not-so-obvious, does your partner’s management team have a good track record in delivering results? And by results, I mean profits, revenue, more users, a more valuable company, etc.

It’s important that you identify your goals. You want them to be the expert. Their references should show that they have been there and done that.

Have they successfully delivered a project like yours?

Is your goal revenue? Is it a need for speed? Do you need to show you can grow your organization? Or, someone in your company is telling you that you need to grow your team.

The dream of all services organizations is the perfect scope. Since there is no such thing, good partners will ask you value-based questions. They will take time to understand your business and the context of your project.

Why are we doing this? How does it affect you? What does success look like?

A bad sign is companies who jump right to their rate sheet and tell you how many years of JavaScript experience their lead engineer has. Or worse, “we are cheaper than the competition.”

Let us not forget the infamous, “we are agile certified!”

Lastly, don’t laser focus on statements of work and the finer details in the beginning. You can always work through those details with a good partner later.

5 characteristics that make a good Software Services company

Now you have an understanding of goals, expectations, and that business value is key. So, it’s time to take a look at what exactly to look for.

Bluntly, not all services companies are the same. Some service companies do well in providing expert team members for hire. Others specialize in great customer service coupled with strong leadership DNA.

One isn’t better than the other. The key is to ask yourself “what are you looking for?” Again, how do you see value?

How much do you want your technical leads managing? Do you want the services partner’s process to be consistent with yours?

You want them to run in parallel to get you past some business milestones.

The big ah-ha here is alignment. If they are already aligned with your style, then it will make conversations much easier.

If you are thinking value and they are showing how many hours completed and believe that hours are THE value…good luck!

Here are 5 reasons that you are unhappy with your current Software Services company.

1. They don’t understand your business value

Software development, in general, is a very broad field. Many software services companies have engineers skilled in this or that.

So extracting “value” and demonstrated expertise is crucial to your success.

The best service companies take a doctor-patient approach. They understand your pain and prescribe a comprehensive solution.

Photo by Syda Productions on Shutterstock

Better yet, if it’s not their sweet spot, they will recommend someone else.

They also understand the importance of collecting as much information as possible. They know it’s their job to come up with the scope.

And they will be able to show value by citing examples of doing similar work.

When selecting a firm you want to ask questions like:

  • How will you share results with us?
  • What are your KPI’s for measuring your success?
  • Is a comprehensive report included in your offer?
  • If so, can you share a sample?

Remember, if they were your doctor they’d write the prescription from a description of your pain.

If they have done a thorough job of listening to you, then the statement of work will be on point and concise.

If not…well?

2. Lack of Knowledge of ways to do things

As Software Services firm that lacks knowledge.
Photo by pathdoc on Shutterstock

If a prospective partner is any good, then they will be able to share how they have done things before.

Once you are past the NDA stage, they can say things like, “with reputable customer XYZ, we were able to get result ABC.”

Even if they don’t share the names of their other customers, the methods, techniques, and knowledge should show through.

A good doctor will show you what she is going to do on a prop or share what most of her patients choose and most importantly, the results.

During the discovery phase, it may help to ask things like:

  • Can you share case studies that are like what we are doing?
  • How do you approach industry-best practices?
  • Will you walk me through your approach to architecture? Process?
  • What happens if the proposed solution doesn’t work?
  • How have you recovered from failures in the past? Examples?

3. Narrow engineering capabilities

Cloud infrastructure, containerization, AWS, Google Cloud, and Azure are all the rage. While many of them seem to have an “easy button,” not all engineers are are capable of wading through acronym hell to deliver the solution you need.

To the naked eye, autoscale is easy. The Mobile application that you want to look like another application you saw, should be easy.

The truth? A deep skillset is required. Knowing how to stitch these things together requires experience from both successes and failures.

What’s worse is many companies will take your money and google how to do it later.

Ask yourself and them, can they share demonstrated results. If they are any good, then they will call a current or previous customer as a reference, immediately.

4. They think you care about Scrum

Don’t get me wrong because the process is important. And, if the final product that you want to deliver is an agile development process, skip to number five.

If you are like most companies that need a services company, a process is a means to an end. You need it to get to some business value.

And, yes the process is important. You do want your selected partner to have a finely tuned process.

But

The last thing you want to hear when things go wrong is a biblical explanation of planning poker, the Fibonacci sequence, and the Agile manifesto.

Your prospective partner should understand where your pain is, how you define value, and what moves the needle.

And how about, what makes you look good?

The big dirty secret is that, in practice, Agile can deliver low impact decisions. These are decisions that fail to make an impact on profits or revenue.

Far too often the process itself becomes the deliverable.

Agile is an absolute beauty if your goal is to focus on “getting things done.” Agile is a good process well-suited for most environments. You want your prospective partner to be focused on the things that have a huge impact on your users.

Good partners will optimize for impact over efficiency, with or without Agile.

5. They over-promise and under deliver

Photo by pathdoc on Shutterstock

Delivering software is about mastering chaos. Things go wrong. Software doesn’t exactly do what you tell it to do all the time.

All good software products are iterative, and they get better over time.

Many firms will try to eat an elephant in one sprint. And, once they realize they can’t chew it all, they are too afraid to tell you they are behind.

The most common scapegoat is, “we didn’t have enough requirements.”

Experts understand it’s their obligation to deliver on their promise. They know it’s their job to gather requirements and to set expectations.

Experts own the deliverable.

If you have a good partner, you will feel like they are in it with you.

Results == Right Partner

The right partner is a big choice. Often, partners can make the difference between success and failure.

There’s no doubt that you are busy. And, if you are in the market to choose the right, value-focused partner, you must need it.

You want expertise. You want results. You want someone in it with you.

The good news is you now know what makes you unhappy. With the tips included in this article, you are on your way to choosing a partner that can yield results, right away.

And remember, you deserve it.

--

--

James Williams

Founder of COFEBE, Inc. We build tools that make engineer’s jobs easier. https://www.cofebe.com