Deciding which software development company to use for your company’s new technology is usually stressful. It’s a huge commitment, and making the wrong choice could cost you more than just money. It could mean offbrand technology, services you don’t need, or a team you realize you can’t work with. Especially if you have been burned. It happens to companies of all sizes.
You meet smart people, and you like that they come with big names. It seems like everything should be worth the high price tag. Or you are amazed that someone can do everything you need at an amazingly low price. Whatever it is, they gain your trust, and all goes well … until it doesn’t.
So many things can go wrong, from out-of-control implementation timelines to fancy new technology that won’t scale to meet your needs.
To get exactly what you need, look past price tags and big names for a company that can set you up not just for now, but for the future. There are some common pitfalls to avoid and essential elements to consider when looking for the right software development company.
We’ve gathered the most essential intel to help you make the best choice.
Too often, companies start their searches unaware of everything that goes into developing technology. They are too focused on their committees, budgets, and goals. It’s common for someone to think, for example, that it takes two years to develop technology, when it will only take months. Enterprise organizations often don’t understand the time and resources a tech project will require.
Too many are making educated guesses about what they need— or if they even need app development at all. Before you start, find out exactly where you are.
Answer these questions:
Custom development versus using an existing platform—which way should you go? For many enterprise organizations, it’s a combination of both. If it’s crucial for your business plan to “own” the software—meaning the IP and source code—you need completely custom development.
However, there may be areas in which you can leverage an existing platform or service to
augment custom development. You can ensure the core of your technology is completely custom while also integrating with platforms that may be easier and more cost-effective.
The right software development company will tell you the balance of custom development and existing platforms that would work best for you.
Enterprise organizations often think they must offshore or nearshore developers when they need to scale their business because onshore services (i.e., U.S. and Canada) seem more expensive.
But it’s all about project planning.
Those offshore developers you think you need to scale your business? You don’t need them if you hire a firm that knows how to plan projects and scale teams.
Ask about project management when you’re vetting development companies. Get upfront answers about how they will help you scale even if they don’t have a football team of developers waiting.
Look for a development company that has deep experience in building for iOS, Android, and the web, and weaving all of these together to build a complete product offering. If you need software written in a certain language, make sure you hire a fluent firm.
Wondering if you are right about what you need? Ask. Talk to prospective development companies about your needs and what platforms, programming languages, hosting, and architecture you should be using. A good partner will not give you lip service, but instead provide informed answers. They should be knowledgeable about where technology is and where it is going.
Ah, the method to the magic of development. Let’s get real— it’s about the waterfall versus agile.
The traditional waterfall methodology is still popular among enterprise organizations. Who doesn’t love a nice, big plan? Lock in those dates and go!
Except with the waterfall methodology, you are really locked in. If you discover something that needs to be changed, you have to wait until the next version of the technology is released to update it.
The waterfall methodology can take months to years to develop due to how unforgiving the feedback structure is.
With agile development, you have a more iterative process that involves five-day sprints. That means when anything needs to be updated for any reason—whether it’s a change in customer needs, product needs, or just a better idea—you can do it in the next sprint.
This is a more iterative, flexible approach that allows developers and their clients to truly collaborate and have their hands and minds involved in every development step. Agile development depends on open communication, in which you have a feedback loop that shows the progress made every step of the way.
There are quite a few types of agile methodologies, and if you are set on one of them, you don’t necessarily have to find developers who use that specific type.
Instead, look for a company that is flexible enough to work within your agile framework. The whole point of agile is agility. If a development company isn’t flexible enough to work with your agile type, it won’t be the best fit.
Before you get to creating a giant waterfall or a flexible agile sprint, stop. Did you do all of the upfront discovery work you needed to do?
Ask simple questions:
Before you take any steps toward software development, ensure you’re ready to be there. If you’re not on a solid foundation built on research, goals, and best practices, the road to your finished technology is going to be rocky.
When searching for a company, you’re going to check out as much as you can, and you’re going to be especially interested in portfolios.
But don’t make portfolio pitfalls. It’s essential to compare two similar development companies—apples to apples— but getting there is not quite as cut-and-dry as it may seem.
Portfolios of clients and projects are essential, but they might not tell the whole story.
For example, a development company team that designed an order-tracking mobile app for a pizza delivery company may not have direct warehouse management experience, but they still designed an app for order tracking. It might be for a different industry, but the necessary features are similar.
Look at industries worked with or clients by size. If the development company’s team has built for enterprise organizations, they are likely well-versed in building for just about any industry.
The same goes for any other size business. If you are not at the enterprise level, looking at development companies that only work with enterprise-level companies is a waste of time. It’s like buying a field of roses when you only need one. Find a development company that either works with organizations of all sizes or that specializes in businesses of your size.
You have to hire a firm that fits. Duh, right?
But how do you figure it out? How do you get everything to just fit, with a sweet cadence around the software that includes weekly demos, progress reports, and quick turnarounds?
To get there, start with best practices:
Choose a company that understands industry best practices and believes in its people. Most of all, choose a firm that is devoted to quality because quality is a culture fit.
Hire a firm that knows what it is—those are the experts you can learn from.
When you make your final decision, it’s going to be based on trust.
Let’s say you are down to two companies that size up on paper and are near identical. How do you choose?
Go back to asking yourself questions:
Keep this checklist handy as you go through the process of choosing a partner for your software development. When you’re looking, remember not to discount the value of working with people who love teamwork and are as passionate about your project as you are. The hard skills are crucial, but so are the soft skills.