Custom Web and mobile apps, once the exclusive purview of large companies with vast resources, have become a common hallmark of successful small and midsized businesses. Externally, apps can offer deeper engagement with customers through online and mobile access to useful tools and information. Internally, they can help workers communicate more effectively with highly customized real-time data on their desktop and mobile screens. But reaching the promised land of apps and money can be daunting, and not every app development adventure ends in success.
If you want to put a custom app to work for your business, you'll first need to make one critical decision: Should you outsource it, or try coding it in-house? This decision is so fundamental that many people overlook it entirely without even realizing they have options here. And failing to consider it carefully can cost your company dearly in both opportunities and money. We'll examine some of the most significant factors to help you make the best decision for your business, and give you a sense of what you'll experience if you decide to go the DIY route.
Assess your business's app needs
Does your business really need a completely new app, or will you get more benefit from an existing package that can be tweaked to meet your needs? The answer to this question depends largely on what you're looking to accomplish. If, for instance, you just want to add blogging or social media feeds to your website, you can get the job done with any number of free, easy-to-configure options. Or if your goal is to improve internal communication about customer accounts, you'd almost certainly be better served by a proven customer relationship management (CRM) package than by a homegrown database app.
If, however, your idea is more novel, like, oh, let's say you wanted to crank up customer engagement at your landscaping business with an app that lets customers submit sketches and pictures of their yards, then you'll probably have to go totally custom (or at least build your solution out of a variety of existing components).
Do you need your app to work on a specific platform, such as iOS, Android, or Windows? Do you need cross-platform functionality? The question of whether to create a native app that runs on a specific platform or a responsive Web app that can run on any device with a browser shouldn't be taken lightly. The answer will depend on how the app will be used, as well as your budget and development time. Native apps typically require more development time than Web apps, and if you need the app to work on multiple platforms, going the native route can double or triple your up-front costs and add considerable expense and complexity to the maintenance of your apps.
Naturally, the importance of the app and the data it will manage are essential considerations, too. Regardless of whether your app is totally original or built from an off-the-shelf platform, apps that will handle sensitive data or that are critical to the functioning of the business can demand a different level of investment and diligence than apps that are merely nice to have. For sensitive, business-critical apps, it's usually advisable to put development in the hands of the most proven, experienced dev team you can get to ensure the data is handled securely and the app is optimized for performance and reliability -- for the overwhelming majority small and mid-sized companies, that means an outsourced team.