Realtime digital experiences are in high demand. They keep users engaged, informed, and entertained in a fast-paced digital world, and they allow businesses to better serve their customers, provide more efficient and effective services, and gain the upper hand over competitors.
This is the second post in a series that looks at what it takes to build and deliver realtime experiences for end-users. The first part covers the main types of realtime experiences you can engineer, and the core capabilities (building blocks) you need to deliver them.
In this second post, we will look at the costs and difficulties of building the underlying infrastructure that supports realtime digital experiences. Note that we surveyed over 500 engineering leaders to understand the challenges they faced when building realtime infrastructure in-house; this blog post uncovers and analyzes the survey data.
Future posts in the series will focus on:
- How to reduce the risk of delivering realtime experiences
- How to reduce the cost of delivering realtime experiences
- How to launch realtime features to market faster
What is realtime infrastructure?
In a nutshell, infrastructure is an umbrella term for all the components that are needed to develop, deliver, monitor, and control IT services. Infrastructure may include different types of components, such as:
- Hardware components - servers, storage systems, network routers, and client devices like computers and mobile devices.
- Software components - operating systems, specialized applications, and various utilities.
- Network components - these include the communication channels, networks, and protocols that allow devices to connect and exchange data.
For infrastructure to be considered realtime, it must allow you to process data and respond to events as soon as they are generated, with minimal or no delay between the occurrence of an event and the system's response to it. Realtime infrastructure is often built using event-driven technologies like WebSockets.
Having a dependable realtime infrastructure layer is essential, as the infrastructure is the underlying foundation for the capabilities (building blocks) required to deliver realtime experiences.
Realtime infrastructure expectations
In our "always-on" and fast-paced world, internet users increasingly expect their digital experiences to be realtime by default. On a typical day, an individual might attend a virtual event with polls and Q&A, collaborate with colleagues on shared documents, monitor the location of their takeaway, and chat with friends via messaging apps.
As the frequency of use of such features increases, issues such as increased latency or messages being delivered out of order can become a significant source of frustration for users. Therefore, businesses that focus on providing fast, highly reliable realtime experiences like feature-rich live chat, seamless multiplayer collaboration, and accurate realtime location tracking can effectively establish customer loyalty.
Businesses that fail to offer realtime experiences risk losing market share, as competitors leverage realtime features to gain a competitive advantage. Whether you are in B2B or B2C, realtime is no longer a nice to have; it's a necessity.
To provide realtime experiences that satisfy end-users, the underlying realtime infrastructure should display robust properties, such as consistently low latencies, data integrity (ordering and guaranteed delivery), fault tolerance, and high availability and scalability.
Critical success factors for realtime infrastructure
In 2022, Ably surveyed over 500 engineering leaders to understand the challenges they faced when building realtime infrastructure. The survey respondents have identified the following factors as being the most critical to having an infrastructure you know you can rely on:
The criticality of realtime infrastructure is that it underpins the services users depend on. An outage or other serious issues with the underlying infrastructure can completely undermine the realtime experiences provided to users, leading to a bad UX, low adoption, and customer churn.
Despite survey respondents identifying reliability and availability as critical factors, almost two-thirds (65%) of those who have built their realtime infrastrucutre have experienced outages in the past 12-18 months. This disconnect between the importance of reliability and an organization’s ability to deliver it exposes a growing challenge in the market.
What it takes to build and maintain realtime infrastructure
The realtime data that underpins realtime experiences provides lucrative opportunities for organizations, but it also ramps up technical challenges, particularly for those who choose to develop the underlying infrastructure in-house.
Realtime experiences require complex architectures and infrastructures that need to be reliable, available, low-latency, and high-performance. But building the infrastructure and capabilities required to deliver realtime experiences at internet scale is often risky, complex, costly, and time-consuming.
Building realtime infrastructure requires substantial time and resources
Engineering a dependable infrastructure to deliver realtime experiences to end-users is complex. It involves deep knowledge of computer science problems and distributed systems expertise. On top of that, it requires a significant amount of time and resources.
We spoke to engineers at companies like LinkedIn, Slack, and Box who'd already built realtime infrastructure themselves. They told us it would take non-trivial upfront engineering with significant operating costs.
Pato Echagüe, CTO and co-founder, Split
The vast majority of respondents in our survey with 500+ engineering leaders reported costs that were relatively consistent throughout development. The survey data shows that 21% of realtime infrastructure projects lasted more than six months.
Roughly 93% of realtime infrastructure projects had 4-10+ engineers working on them.
The survey data shows that nearly 70% of realtime infrastructure projects lasted more than three months and over 90% of projects had 4+ engineers working on them.
Detailed analysis provides further insight into how operations are balancing time and resources. On average, we discovered that 93% of projects required at least 4 engineers to build realtime infrastructure in-house.
In addition, 69% of projects took over 3 months to build, and 20% took over 6 months to build. For 4% of projects, more than 10 engineers were required to keep the timeline under 3 months, and for 5%, more than 10 engineers were required to keep the project between 3-6 months in duration.
Estimating the resource required to build realtime infrastructure is difficult
Businesses and planners tend to underestimate what is required to build reliable infrastructure to support realtime experiences; they not only miss deadlines, but also require extra resources. Of the respondents in our survey on the challenges of building realtime infrastructure, 52% said projects required more engineers than anticipated.
Similarly, 53% of realtime infrastructure projects required more time to complete than originally expected.
Only 47% of planners estimated the appropriate number of resources and were able to stick to their timeline. An experienced 2% of planners were able to spend less time on their projects without adding any engineers. The remaining 51% of miscalculated projects includes 16% of projects that required at least an additional 3-6 more months and 2-3 more engineers to complete.
High costs and missed deadlines are clearly problematic: 46% of survey respondents reported the cost of the overall project as a major challenge, and 41% reported missed deadlines and extended timelines. Only 9% of respondents reported no problems in building infrastructure to enable realtime experiences.
Once built, realtime infrastructure is costly to maintain
The infrastructure to support realtime experiences can be costly to build and very expensive to maintain.
As shown in the graph above, half of all self-built realtime infrastructure requires $100K-$200K a year in upkeep, according to survey respondents.
The opportunity costs of building realtime infrastructure
Not only does the realtime infrastructure require significant resources to build and maintain in-house, but it can drain resources from other areas of your business.
In contrast, by using a third-party provider instead of building it yourself, the infrastructure that enables realtime experiences is taken care of, so you can continue to put resources behind developing your core product.
Offloading realtime infrastructure to a PaaS provider
Building realtime infrastructure in-house is a complex affair. Underestimating the time and resources required for DIY realtime infrastructure can impact the performance of your system and, ultimately, your competitiveness in the marketplace.
Many businesses don’t realize there are easy-to-integrate platform-as-a-service solutions available to power realtime experiences. Others mistakenly believe they can only get the flexibility and customization they require by building their own realtime infrastructure in-house.
However, by offloading this type of infrastructure project to a realtime PaaS provider, organizations can save time and money, reduce development and operational complexity, and benefit from known, predictable scalability and reliability parameters. In turn, engineers are freed up to focus on their company’s core product, enabling them to innovate, stay relevant to customers, and gain a competitive advantage.
Ably is a realtime experience infrastructure provider. Our realtime APIs and SDKs help developers power multiplayer collaboration, chat, data synchronization, data broadcast, notifications, and realtime location tracking at internet scale, without having to worry about the underlying infrastructure.
Find out more about Ably and how we can help with your realtime use case:
- Explore customer stories and discover how organizations like HubSpot, Mentimeter, and Genius Sports benefit from trusting Aby with their realtime needs.
- Read our product documentation.
- See what kind of realtime experiences you can build with Ably and check out our chat apps reference guide.
- Learn about our globally-distributed network of datacenters and edge acceleration points of presence.
- Get started with a free Ably account and give our APIs a try.
In case you haven’t read it yet, check out the first article of this blog series, where we talk about the different types of realtime experience use cases, and the capabilities needed to deliver them.
Coming soon: Part three, where we will see how to reduce the risk of delivering realtime experiences.