When talking about building web applications for growth, the conversation often devolves into a technical debate over whether to scale up or out or which specific technologies will suit an application.
These debates forget one of the most important rules of enterprise technology: business goals should drive the tech, not the other way around. Leaders should start by clarifying what is needed from the app as it grows before nailing down the tools.
There are three key concepts which all scaling technology should support in order for an app to be considered “built for growth”.
Application performance can be measured many ways, but for public-facing apps the focus should usually be on user-centric metrics. “User-centric” refers to traits which directly affect the user’s experience. For example:
- Load times
- Reaction times to button clicks
- Fast and reliable return of updated information
Applications are highly sensitive to user perception. More than half of users will abandon a web app entirely if it seems too slow. It damages their overall perception of the sponsoring business’ modernity, as well.
On the flip side, better performance leads to higher revenue and better ROI on advertising campaigns. Apps that load in 5 seconds or less see 25% more ad visibility and 70% longer session duration on average. They’re also enjoy higher user retention rates than slower applications.
When deciding between two technologies, choose the one that reduces the user-perceived delay the most. Determine how much of the delay is caused by each step of the data retrieval and presentation process, then prioritize tools that target the problem areas.
Web apps shouldn’t have a bigger cost to grow than to build in the first place, but that’s what can happen when growth isn’t considered from the start. Companies sometimes make design choices that are less investment during development but require complex, expensive scaling techniques.
An app can’t be called fully scalable unless it has a fixed marginal cost to grow. Adding users or capacity should be predictably priced and simple to implement. “Predictable” is a big part of being scalable. There’s no way to tell exactly how quickly an application will grow, but it is possible to create a scaling plan that shows leaders how much they can expect that growth to cost at each stage.
Surprises when scaling generally mean the original plan wasn’t thorough enough. Be sure to take into account vendor stability and projected rate increases. Also, don’t leave out any higher costs for maintenance at scale.
Security At Scale
Application security is one of the top concerns for CIOs in 2018. 45% of companies plan to spend more this year than they did in 2017. Despite the interest, 90% of web applications have at least one avoidable vulnerability. Common weak areas include encryption, authentication, and access control.
Hard-coded passwords are another serious risk. A full tenth of applications still use them for administrator-level privileges despite general discouragement by the security industry.
The risks from these vulnerabilities increase exponentially as an app grows into an appealing target for malicious actors. When planning for scalability, focus on growing securely as well as quickly. Don’t take risks with customer data that could lead to breaches, legal issues, and loss of reputation.
On a hopeful note, the problem does seem to be shrinking. In 2016 the average number of vulnerabilities per application was four, and that fell to three per app in 2017. That average may fall even more if the emphasis on security continues to drive safer design practices.
The True Measure of Scalability
Scalability isn’t only about whether applications do or don’t crash under unpredictable workloads. Availability is part of the puzzle, but not all. The true measure of scalability is whether a system is flexible enough to efficiently meet a company’s needs within an acceptable range of quality regardless of workload. Make that the focus of technology decisions and an highly scalable app will always be the result.
Concepta has more than ten years experience designing web applications that maintain high performance and security at scale. To learn more about the technologies we use and how they can benefit your business, set up a free consultation with one of our skilled developers.