By Justin Dombroski, Lead Project Manager at Enola Labs
When selecting someone to design and develop your app, make sure you weigh your options. Below we examine a few choices and the pros/cons of each.
When looking for an app development company, you will come across some that are full service, meaning that they are staffed to design, engineer, test, and release your app. Working with a full service company will likely result in higher costs, but will typically yield the best quality results needing little to no rework. Companies will also be able to give great guidance throughout the process because they have an abundance of resources to pull from.
The first variable to dive into when looking at full service companies is where their staff comes from. Some companies outsource some of their services, while others use blended teams that have a mix of members in different locations. If you want everything done using staff from a company’s primary location, be sure you specify this when talking to them to ensure that they can accommodate your request.
The biggest benefit to outsourcing will undoubtedly be the cost and the availability of a 24-hour work cycle. However, this can be a fragile process and some of the disadvantages to outsourcing app development include the time difference, potential language barrier, speed of work and the overall quality.
If time is a constraint, going with a full service company will increase the speed and likelihood of finishing on time. This will come at a cost and depends on the scope of the project, but these companies have the luxury of utilizing multiple resources in order to get the job done based on your timeline.
Companies will also be able to manage user engagement better than one or multiple contractors. They will be more likely to steer your product in a direction that allows for easier long-term support and development transition. A company is more inclined to treat you as a partner and the product as their own. They will want to question your feature requirements in order to make the best decision for the product.
When working with a company, you don’t have to worry about cracking the whip. You also won’t have to face all of the difficult questions and problems by yourself. Instead, the company will have resources that can guide and support you in your decision making process.
More often than not, a company will be more honest with you. If they don’t feel that an app will help you solve your problem, they will probably tell you. It’s far more beneficial to them to take on a project that will end in success rather than taking on a project solely for monetary gain. A company is a great choice if you need help thinking through, developing, and refining your idea.
The “unknown” is the difficulty with an independent contractor. If you intend to take this route I’d suggest doing an interview of the candidate as well as talking to any available references. A video or face-to-face interview can be very beneficial because you get a feel for the potential relationship and whether or not it will be a good fit.
Costs for independent contractors will vary greatly; As will results. With an independent contractor you will need to spend a significant amount of time managing them. Because of this, if you need someone to really explore your idea and give you feedback, then a contractor may not be the right choice.
If you know you have already chosen a good developer or designer, then this can be a great option because they are aligned with you and only need to perform one task. However, if you need end-to-end staffing then hiring independent contractors for design, engineering, testing, etc. can consume a lot of time and money.
Another concern with a contractor is that they will often follow instructions without hesitation. For example, a feature may be implemented as instructed, but not work out as planned. Had a team reviewed the feature they would have had a better opportunity to ask questions or recommend an alternative approach. A really good contractor may give unsolicited advice and feedback, but many will just take what you give them and go.
If you only want a developer then be prepared to provide them with a design to follow. Having a set of requirements is good, but a sketch or visual design will go a long way toward reducing multiple iterations on a screen.
More often than not, a contractor isn’t incentivized to deliver long-term value. As long as the product they provide works then they don’t need to be concerned with its sustainability.
If the application you are building is a core piece of your business then hiring a development team might be the best route for you. Companies and contractors can certainly do the work, but you will need to start viewing them as more of a long term partner. You can also hire a developer/designer/tester as an employee, but with this you’ll need to account for managing them, among other things.
This can be a good option if you are certain that you will be able to supply your employee with consistent work. If they finish building something and then have nothing to work on, you’re losing money where as with a contractor or company, you are simply done with the contract and no longer have an obligation to stay in business. This can also be difficult because you are hiring someone that has an expertise that no one at your company may have. As a result, it will be harder to judge the person’s capabilities when hiring.
By hiring a team you reap the benefits of group work, especially if the product is long term. They will be able to work with you to fix and improve your product even after its launch. However, it should be noted that this option has the most long-term risk as employees are expensive when you take pay and benefits into account. In addition, small teams and individuals have a very specific skill set, while companies can fill any need you will have.
While you may find one of the above options best fits your company’s strategy, blended approaches are always a great option. Many times, non-technical founders will find that utilizing a full service shop to build their product’s foundation and utilizing their team of experts to help vet and transition to an internal team is a great option. This way, you get all the benefits and agility of a full service shop while slowly bringing in the right people that will help iterate and optimize as your rollout efforts start taking effect. Most full service shops even tend to have a group on contractors at their disposal that specialize in niche areas of software engineering that can be pulled into projects to help get necessary features up and running quickly and without the risk of the unknown that outside contractors typically bring with them.
Overall, there are lots of options when considering exactly how you want to make your idea a reality. Choosing the right partner to help you guide your decisions early will allow you to deliver a product with rock solid functionality on time and, most importantly, on budget. If you’d like to learn more about early stage strategies for your mobile app, Enola Lab’s app development checklist guide is available for download here.