In this piece, we dive into:
- What a custom app is – a quick definition
- Why custom apps are on the rise
- Their unique needs in terms of hosting
- Some core themes and examples of where a good, cloud-native MSP (such as yours truly) can meet those needs and add extra value
And with a splash – we’re in.
What is a custom app?
What exactly is or isn’t a custom app is a matter of some debate.
From a web development company’s point of view, a sprinkle of JavaScript on top of of Shopify theme may be one more notch on the bed bedpost – one more conquest in an illustrious career of custom app development.
From a software resellers POV, a custom app may be an off-the-shelf product like QuickBooks, decked out with a few Azure functions and repacked as a saleable custom application.
Insofar as “custom app” is a branding/sales tool, it is broadly misused.
A custom app is one that’s been customised (significantly) under the hood
For today’s purposes, a custom app is neither of the above. It is in fact a software application either created from scratch or with significant customisation at the:
- Code level
- Data level
- Or the logic level (although this is veering somewhat into the space of a customised app)
In case you were wondering, significant here means ‘not replicable simply by altering settings or configurations.’
So what are a custom software application’s unique hosting needs?
Where developers have built specific requirements for runtime, data and/or logic execution, a flexible and dedicated cloud environment can be a bonus or, in some cases, a prerequisite.
These needs and wants break down roughly into the below categories:
- Environment & runtime control
- Data protection & lifecycle
- Integration & networking flexibility
- Observability & rapid support
Let’s take a closer look.
Environment and runtime control
Why this matter for custom software applications
Bespoke software often needs exact languages/OS combos to work. In many cases, stock images won’t contain these.
For example
The standard AWS Ubuntu 22.04 LTS AMI (Amazon Machine Image) does not come equipped with Python 3.12 – it ships with Python 3.10.
A custom hosting solution provider…
Builds a container with Python 3.12 + CUDA + PostGIS and keeps all three patched without breaking the app.
In general
Your MSP pal takes care of hardened, version-controlled images, automating security patches and rollbacks, and monitors these images as part of their overall monitoring strategy – all things your product team would rather not be doing.
Data protection & lifecycle
Why this matters for custom software applications
Custom tables and data structures need custom back-up policies. Your standard RDS, et al. instance may not be configured for your bells and whistles.
For example
PostGIS is not covered by many standard tables. So the back-up may just skip this data. entirely
A custom hosting solution provider…
Sets up logic and volume back-ups, as well as custom alerts if dumps skip any tables or types.
In general
Your MSP pal owns backup policy and fine tunes performance – plus they set the tripwires to detect anything missed.
Integration & networking flexibility
Why this matters for custom software applications
Off-the-shelf applications integrate via off-the-shelf networks (public HTTPS endpoints, standard OAuth). Custom apps are often built around integrations with specific partner partner systems with their own specific network requirements.
For example
One of your partners may require IPSec VPN for communication, fording any public traffic.
A custom hosting solution provider
Sets up and monitors this dedicated connection, handling all ongoing whitelisting and key rotation.
In general
All custom network set-up and maintenance passes to your MSP, leaving you free to connect with the partners and system you require without having to worry about it.
Observability & rapid support
Why this matters for custom software applications
Custom logic (and custom code) can have custom failure conditions. Many standard implementations of monitoring or observability tools will allow these conditions to slip the net.
For example
CloudWatch might look only for CPU spikes or downtime. But a change to a rule causes all values in your price quotes to return a tantalising £0. This is a logic failure. From a systems POV, all is well.
A custom hosting solution provider…
Would configure a custom metric and set a threshold (all quotes must be at least X and never more than Y) in whatever tool you’re using.
In general
The MSP takes on the work of observing your app, plucking out your unique failure conditions, and setting up rules to catch them.
To sum up
An application with customisation at the code, data and logic level will often colour outside the lines imposed by standard hosting setups. An MSP used to working with custom software will be used to extending these lines and keeping the overall picture looking good.
How we can help
At Just After Midnight, our raison d’etre is making sure our customers’ mission-critical apps (many custom built or highly modified) stay delivering.
So, whether you’re looking for a 24/7 support team who can get to grips with complex product, a stable and secure cloud environment, or you just want to hear more about your options, drop us a line and we’ll get right back.