Choosing a good development partner

When developing new software, timelines, cost, and quality can be hard to control. Here's how to choose the right development partner to keep things on track.

When we set out to build a new digital product, we’re betting that our initial development costs will eventually be offset by revenue the product generates. Like any long journey though, software development is full of unforeseen diversions and slowdowns. Projects often run late, over budget, and are full of bugs at launch, pushing any return on investment far off into the future.

A good development partner acts as a guide on this journey. Taking the form of an experienced freelance developer, consultant, or agency, they’ll help you avoid roadblocks, navigate unfamiliar territory, and challenge unwise decisions as you go.

Your development partner supplements your business knowledge with their technical and product expertise to keep everything progressing efficiently towards your goal, even when things go wrong along the way. Choosing the right development partner is about making a good choice for your business. Below are 5 pointers to help you with the decision.

Choose the right size

If you were building an extension on your house, you’d probably hire a single architect. If you were building a skyscraper from scratch, you’d need an entire team. A similar approach is wise for your digital product.

An individual or small agency won't have many communication overheads, and can work extremely efficiently as a result. However, a larger agency may provide a level of parallelism and ongoing support that smaller operations won't be able to match.

It's important to talk to prospective development partners of different sizes to figure out what would work best for you. You don't want to be paying for communication overheads unnecessarily, or be moving too slowly due with a deadline looming.

Luckily, you can change things as you go. For a new product, it’s often wise to start with an individual developer to move quickly and establish solid foundations in the early stages, and then bring more people into the team as the project matures. Good solo operators and agencies can usually facilitate this growth for you through their own employees or wider network. Some will even help you hire your own development team to replace them if you want to take development internal later on.

Insist on great communication

In order for your project to progress smoothly, you’re going to need to work with a great communicator. Excellent spoken, written, and visual communication skills are fundamental, but you should expect more than this from your development partner.

You need a partner who can clearly articulate complex concepts in a language every stakeholder can understand. This will be crucial to bridging the gap between the arcane and abstract world of software development, and the concrete product concerns of your business.

Your partner is also going to need to be a good listener. They’ll need to talk to stakeholders within your business, understand their problems, and ingest new concepts and terminology as they go. They’ll also need to pull on threads for more information where necessary to quickly gain an understanding of your processes and the problems you’re trying to solve.

Finally, you should look for a good facilitator. Your partner should be tailoring their communication medium for the task at hand, and should be comfortable pushing others for clarification of points where required. When disagreements arise, they should be able to pick out the crux of the issue, and explain the point of difference for everyone so the discussion can move forward.

Avoid pushovers

Make sure you’re not working with someone who's waiting to be told what to do. “Yes people” are fun to delegate tasks to, but you’re paying for expertise and results for your business, not just their ability to follow instructions.

Your development partner should be comfortable challenging decisions they disagree with, and pushing you to explain your rationale. They should be telling you clearly when deadlines are not going to be met, or when the scope of the project is ballooning. Where appropriate, they should push for a particular course of action, and where necessary they should be providing solutions for you to choose between with the pros and cons clearly explained.

Polite and proactive pushback from your development partner is a good signal that they have your best interests at heart, and that they’re confident in the advice they’re giving. Conversely, a pushover is putting pleasing you in the short term over the long term success of your product.

Get the right technology for the job

There’s an unhelpful pattern of behaviour in the world of tech where development teams at small tech companies look to the world’s largest tech companies (Facebook, Google, Amazon, Microsoft etc.) for technical solutions to their problems.

On the surface, this seems like a great idea - If it’s good enough for Facebook, it must be good enough for you, surely? Unfortunately, this is often like buying a Ferrari to deliver pizza. Despite amazing engineering, its horsepower would make no difference to your delivery times when a 30mph speed limit needs to be obeyed. Better to get a scooter to weave through the traffic.

When choosing your development partner, make sure you’re working with someone who’s able to identify which technologies make sense for your business. As a non-developer this can be difficult to spot, so here are some questions any prospective partner should have readily-available answers for:

Don’t be too price sensitive

All other factors being equal, a high fee is usually a signal of a successful track record and demand for someone’s expertise. You should avoid being too price sensitive when choosing your development partner, because paying more for the best expertise during the initial development phases both maximises your chances of launching on time and budget, and most likely sets you up with the best technical foundations for ongoing development.

This isn’t a hard rule. Your best choice may charge less because they lack track record, are unaware of the value they provide, or are desperate to work with your brand. If you’re considering a cheaper option, just make sure you find out why they're cheap.

Wrapping up

Getting a good start can quite literally be the difference between the success and failure of a digital product, or even an entire business. Carefully consider each of the above points before you choose your development partner, and you stand a much better chance of delivering a high quality product on time and on budget.

I make a living by helping companies bring digital products to market with solid foundations, room to scale, and costs under control. If you’d liked what you’ve read here, you should follow me on Twitter for more product development content in future.