Finding the Right Custom Software Development Firm
|Joshua Philips in Mobile Tech Monday, December 8, 2014|
Finding someone to develop your custom software can be tricky, but not impossible. There are four general approaches, generalist, freelancers, offshore, and onshore development teams.
In the custom software development process, goals tend to evolve dramatically. The application you initially set out to develop often looks very different from the one you end up with, precisely because you learn more about what you need and the best way to accomplish it at every step of the development process. Even at the very beginning, as you select a software development partner, you will likely make discoveries that help you shift your project in a more effective direction.
This project malleability can make it particularly difficult to identify a custom software development firm. How can you decide who will best support your goals when the goal posts are likely to move? It’s a tricky prospect, but by understanding the type of firm you’re working with and how it aligns with your needs, it is possible.
There are four major types of developers, each with their own advantages and drawbacks: onshore firms, individual developers, offshore firms, and onshore boutique firms. Let’s take a look at each – along with the circumstances that might lead you to choose them.
- Generalist onshore software development firms These firms may offer a wide range of services, and their cost will tend to differ depending on their offerings. Usually, though, they’ll charge between $80 and $150 per hour.
- Local freelance developers Usually cheaper than engaging a firm (around $50-$100 an hour), freelance developers – especially local ones – may be highly flexible in their ability to visit or work on-site. But often it may be difficult to find someone who is both local and possesses the same level of specialized expertise that you might find at a firm.
- Offshore software development firms This is another cheaper approach – rates tend to be similar to a local freelancer, at around $50 to $100 per hour. The challenge here can lie in the workflow. Time zone and language differences can make effective and efficient communication difficult, which is particularly problematic on more complex projects.
- An onshore, specialized custom software development firm In particular contrast to an offshore firm, this approach is well suited to complicated and collaborative projects. Small specialist firms can often deliver familiarity with how certain technologies can support business processes like yours. Typically, these firms will charge between $150 and $200.
So how can you go about deciding which style of the developer is appropriate for your software project?
The right kind of specialist
One point to consider: when it comes to a custom software development firm, “specialist” refers to specialization in particular technologies, not a given industry. One common mistake when choosing a partner is to gravitate toward those who have worked in your industry before.
Sometimes the experience is relevant, but often that work in your industry was on an entirely different sort of software. Say you’re a grocery chain looking to build a large-scale web app, choosing between a firm that specializes in similar applications or one that has built a point of sale system sometimes used in grocery stores. All other things being equal, you probably want to choose the specialist in web apps.
Even though the functionality of your app may evolve, it’s important to find a partner whose experience matches the type of technology you’ll be using – and this should take priority over their experience in your field. As you ask vendors for references, try to get references related to the type of project you seek to undertake.
Thinking about scope
The scope and complexity of your project is another major consideration. Small updates or bug fixes, very simple projects – these are probably better suited to freelancers or offshore developers. In these cases, it makes sense to prioritize cost, as long as you are confident that the developers in question have the skills for the task.
There is a real risk, however, of larger and more complicated projects collapsing under their own weight when assigned to an under-prepared firm or developer. In these cases, prioritizing experience, specialization, and the ability to collaborate effectively can ultimately keep costs down by ensuring that your project stays on track.
Ideally, potential vendors will engage closely with your ideas as you go through the RFP process. They should collaboratively discuss the problem you’re trying to solve, the project’s requirements, and potential approaches to a solution. You should learn something new in each of these conversations – often, something so transformational that it is wise to update your RFP so all of your prospective vendors have an up-to-date perspective on your requirements.
If a service provider doesn’t demonstrate this level of engagement, it’s a good sign that they are to be avoided, particularly for a complex, large-scale project. In truth, the process of discussing your project with vendors is the first major step in the road to building your application. By beginning the project in an informed, open, and collaborative way, you’ll have equipped yourself to create an app that could transform your business – while staying on budget and on track.
This content is made possible by a guest author, or sponsor; it is not written by and does not necessarily reflect the views of App Developer Magazine's editorial staff.