3 hidden costs about maintaining a mobile app in 2018 – and how to avoid them
Are you aware of all the costs involved in maintaining your web or mobile app after it has been delivered? Did you know simple mistakes or poor decisions will make the difference on the bottom line? Keep reading to find out what these hidden costs are and how to mitigate them.
Your app is finally done and ready for the beta or main launch. You know exactly what to expect and every detail of architecting an application has been carefully thought out and explained to you. This is true if you worked with an experienced development team. But if you “outsourced” your project to a freelancer with a neat looking portfolio or a marketing agency, you may not be as informed as you should. ((For more on “Do you need a marketing agency to build a mobile app click here“).
After you get your web or mobile app, the real work begins. From marketing to maintenance and everything in between. To make this point clear, imagine you purchased a retail store. The builder gives you the keys and drives away into the horizon. Now what? Is the store living “om the cloud” rent free? No pipeline is ever going to crack and need repairs? Updated city regulations force you to place new signs? Who is going to do all this work?
5 Hidden Costs Of Maintaining a Mobile App
So let’s go over the top costs so you won’t be caught off-guard on your next project.
Cloud Services (Rent)
For those of you fans of “Silicone Valley” the HBO series, you will recall the AWS episode (Amazon Web Services). The plot is about the ridiculously expensive charges for hosting and storage and how their startup almost goes under because of it.
Unless your application lives on your own computer and never gets used by anyone, you will most likely have to host a part or all of it on the cloud. The most common places are Amazon Web Services, Google Cloud Services, Microsoft Azure or DigitalOcean. Please, if you are over 12 and serious about your application don’t do GoDaddy for crying out loud!
Any of those alternatives will serve your purpose and they are priced relatively the same for some services. Of course based on your individual needs this may not be true, however, the “Cloud” charges are the most important to keep an eye on.
If your app needs a lot of hard-drive like to store millions of images you will need a proper STORAGE service. In the world of cloud services, STORAGE services are as low as $0.007 per GB if you don’t access your data too often but it can get very expensive if your app is poorly engineered. Here is where experience comes in.
If your app uses a lot of storage but lets’ say, only the last 30 days of images are used frequently and the rest is seldomly accessed, your app could be engineered to use two type of storage therefor minimizing costs and avoiding a hefty bill every month.
Broken Pipe (Maintenance)
Once again, unless your app does nothing interesting or useful, it will most likely connect to other places. Social media, image processing services, search and indexing services, etc. And very frequently the plumbing needs to be maintained otherwise it leaks or breaks. Meaning your users can’t log in or your cool image recognition feature stops working.
Most application nowadays connects to 3rd parties and since you don’t own the 3rd parties they may change, update or discontinue services. Also, due to security and compliance, they may make changes which require you to make changes to your own app.
Your application needs to be built in a way that can be easily updated so that when these changes happen, any decent developer should be able to update the code. There are several ways to do this, most commonly is to implement whats called microservice architecture. This way every component of your application used mini-services and if one needs to be updated it doesn’t require untangling thousands of lines of code.
Another way to mitigate this cost is to ensure your project is done with TDD or Test Driven Development methodologies. This means the developers create automated tests for every component they build. So when its time for an update, you can easily make the change and confirm nothing else broke in the process. At the very least request to have some sort of automated testing for sanity checks or smoke testing.
3rd Party Services
When you use an app, in most cases, they all use some 3rd party service, for example, to print PDF’s, draw nice pie charts, recognize images or analyze some data. Hopefully, your development team did not offer to re-invent the wheel and in the process expand the scope of the project unnecessarily. In many cases, these external services already do what you need them to do at a reasonable price compared to developing the same functionality from scratch.
But be aware, misusing those services can cost you. For example, if your app sends data to be analyzed by a 3rd party service that charges $50 for every million rows of data and you keep sending the old data over and over without being smart about it, you may be hit with a overage charge and jump to their enterprise package, which is a fancy word for “we’ll charge you a lot”.
Be on the lookout for small and innocent looking services your development team offers to use. Ask about what strategies are being applied to ensure the app will gracefully scale without costing you dearly.