There are many important reasons for enterprise companies to outsource a portion of their software application development. If done well, the benefits are extremely lucrative.
Unfortunately, many companies trip over the starting line and wind up creating challenges instead of solving problems.
After working with enterprise companies for over 20 years, I’ve compiled a list of the top four mistakes these teams make when creating their enterprise application development tools. Avoiding these pitfalls can save you time, money, and anguish:
Rushing to start:
Yes, you have deadlines. Yes, you have pressure from stakeholders. Yes, you have a boss who expects you to exceed expectations. None of these realities means you are better off rushing. Too often a decision-maker identifies the need to outsource a project, and they are on the phone with me the next day begging my team to start embedding with their team within a matter of days. Rushing is never a good idea. It results in:
- Lack of alignment on goals
- A development team that was picked based on availability and not based on skill and culture fit
- Failure to identify what success and failure look like
Focusing on “rockstar” engineers instead of “rock star teams”:
The second biggest mistake enterprise teams make is thinking they need each outsourced software engineer to be a rockstar engineer. Many well-intentioned decision-makers will attempt to grill and vet outsourced engineers 15 different ways, looking for each individual engineer to possess ALL of the qualities that are lacking within their current in-house team. This is the wrong way to approach outsourced application development.
A more fruitful and healthy approach is to aim to create a rockstar team. Take a look at what your team’s strengths are; compare that to what your goals are, then seek out an outsourced development partner who can provide a team that complements yours and has the tools to help you achieve your goals. Seek out engineers who:
- Are smart and get stuff done
- Learn quickly
- Are inquisitive and passionate about your project
At Stride, we take hours to select a team of Agile technologists for each new client engagement we start, and we take a lot of care to ask our engineers if they are excited about joining the project. The more passionate individuals are about the work they are doing, the more productive they will be.
Not having a product owner:
Without a product owner, the project will likely fail. The two biggest things the Product Owner can do to help the project succeed are:
- Be fully dedicated to the application development project
- Have the authority to identify stories as ‘done’
If the Product Owner is only partially dedicated and/or if they don’t have true authority to classify stories ‘done’, the result will be a large amount of rework, which will make the project unnecessarily costly.
Not aligning on values:
There are tons of blogs and books written on the importance of culture fit and aligning full time hires with your company’s values. I believe it’s just as important to align your outsourced development team’s values with your company’s values. Why? Because no matter how high functioning the team is, there will be days when things get stressful. And when things get stressful, it’s everyone’s natural tendency to retreat to what they believe are core beliefs about the best way to build software and communicate. The more you can align on inter-team values, the more efficient the combined team is going to be both in good days and bad.
In summary, increase your odds of a successful outsourced development partnership by prioritizing these four things, and you’ll be glad you did:
- Take your time up front, don’t rush to start
- Focus on building a rockstar team
- Identify a Product Owner
- Align on values