Created by: Vidatec
Published: 2 months ago
By Tom Thirlwall, Chief Architect
Building an app is an exciting time for any business. Your idea is being brought to life and the visual representation of all your hard work is laid out in front of you. There are, however, a number of pitfalls that a company can fall into if you are not careful, especially if they fail to plan for the ongoing service management of their platform.
For apps that are business critical this is particularly important, as major outages can lead to significant disruption, dent user confidence and impact the bottom line. This guide will help you navigate around the dangers of overlooking key issues in this area and help you to build a successful and crucially sustainable app.
So what are the top five tips when looking at the ongoing service management of a mobile app?
As an app developer Vidatec has a certain amount of control over our code base. However, no matter how bullet proof we make the code base, it can be undermined if the platform underneath keeps failing. Constantly keeping your underlying infrastructure fresh can be a difficult balance of cost vs reliability. One option is to make the technical debt someone else’s problem by utilising cloud-based services. The further up the cloud stack you go, the less you need to worry about managing the underlying infrastructure. Bear in mind, however, not all cloud services are made equal and some are more resilient than others. There is no point putting critical systems on platforms with single points of failure as that risks a lengthy return to operation time. A robust base for your app to sit on is imperative for a sustained success.
Being disruptive is all well and good, however, being too far out on the bleeding edge can often spell disaster. It is possible to create new technical debt without necessarily making the tried and tested obsolete. Show casing capabilities and fast prototyping can bring forward new technologies and elegant solutions, but potentially at the cost of management, reliability and scalability in a production environment.
Knowing your user base, and the types of workload they will generate, will help you work out the right size for your system. Trying to build a system that is too small can create embarrassing performance issues. On the other hand, just putting in a system where workloads don’t touch the sides can be costly and just pushes your problem to another day. Making use of right sized solutions at the right level of the cloud stack help reduce these issues. However, making sure you understand your user base now and what it could become can help you put in place a scalable solution that grows when you do. Consider when to scale up (make bigger) and when to scale out (add more). Not all solutions lend to both methods and a rearchitected solution can come with expensive migration overheads and unavoidable downtime.
You can make things as robust and as resilient as possible but ultimately things always have the propensity to go wrong. You aren’t always going to have the answer, or maybe that one person that knows how everything is pinned together is off today. Support is your insurance for when things go wrong and you are trying to keep lights out scenarios to a minimum. If a system is critical then it needs additional support to back it up. There is no point in delivering a service 24/7 if you don’t have the support behind it.
Making bold claims about your security posture is a good sales and marketing tool but can bring unwanted attention from people who will try and put you to the test. With an ever-evolving landscape in cybercrime, security should be at the heart of what you do. It should be built into the very fabric of the solution from the infrastructure up. There are a number of different solutions that you can employ to reduce vulnerabilities. Nonetheless, the likes of Volumetric DDOS attacks just needs you to exist be a target and don’t need a back door to be effective. Consider anti-DDOS solutions to soak up the unwanted traffic before it impacts your services and also consider your audience before making bold claims.
By following these top tips, you should be able to build strong management processes as you move forward in your app development. Thinking ahead to the management stage allows you to prepare for issues down the line and be ready to deal with those issues quickly and effectively. This is a key component for any business that relies on a successful mobile app.