Selecting the right software development partner to work with is critical to the long-term success of the application to be built and the business processes it supports. While there are many factors that should be considered when choosing the best partner for your needs, the four considerations listed below will provide you with a good framework to get started.
- Determine your short and long-term needs.
Do you need a partner who can handle every aspect of the project and support the new application long-term or do you simply need a developer or two to augment your team for the initial build? To answer this question will largely depend on:
- If you currently have an internal software development team
- If you plan to outsource the initial build and maintenance of the app
- The complexity and business value of the application to be built
- Your philosophy regarding the total cost of ownership
- Your tolerance for risk
2. Do they have experience with projects similar to yours?
One of the best ways to quickly trim the list of potential partners is to ask them to tell you about their past projects which are similar in nature to yours.
Listen to understand if:
- Their project examples really are similar to yours
- They truly understand the business value that’s driving the project
- They added value from either a technical and or business perspective
- They consistently follow a mature software development process
3. Do they challenge your ideas and suggest alternative ways to achieve your business case?
There are partners who offer a consultative approach (consultants) and those who just code (coders). Although both approaches can be useful, typically the greater the complexity and value to the organization of the application, the more important it is to select a consultative partner. Identifying the difference between the two can be tricky but being on the lookout for the behavioral traits listed below can help.
Consultants will typically:
- Want to understand the business drivers and bottom line impacts of the project and how it aligns with your business strategy and goals
- Challenge your thought processes and sacred cows, while helping you to close gaps in your project strategy and requirements
- Demonstrate keen business acumen and take responsibility for the project’s outcome
Coders will typically:
- Focus on the technical aspects of the project and show very little curiosity regarding the business drivers and impacts relative to the application
- Expect you to provide them with a comprehensive set of software requirements to be developed
- Not deviate from the specifications they’ve been given or brainstorm different alternatives for solving your business problems
4. Do they have the right skills, experience, and use the appropriate technology?
There are many different types of software tools, developers, languages, and platforms. Make the wrong choice for your project and it could significantly increase your risk of failure. Most software development partners have a sweet spot. The trick is to match the best technology for your specific need with the best partner to implement it. Hedge your bets by:
- Gaining the counsel of a neutral CTO or CIO with a minimum of 10 years’ experience
- Surveying your professional network about their experiences using various types of software
- Asking Google about the pros/cons of software, languages, and platforms
Choosing the best software development partner for your needs is a critically important decision that requires a close examination of both your short and long-term needs. Select the right partner and your probability for long-term sustainable success is greatly enhanced.