Every mobile or web application, consumer or enterprise, is built with the goal of providing value to its users — whether it’s booking a car, making a restaurant reservation, teaching them how to complete a task, or providing a fun and challenging gaming experience. Whatever the purpose of the application, making that experience exceptional should be the primary focus of its creators. The infrastructure that powers those experiences is an enabler. It’s unrealistic to expect app creators to be experts in every bit of infrastructure. For this reason, building blocks that focus on specific parts of the infrastructure have emerged, solving hard problems for all applications that use them like maps, payments, and analytics. Layer does this for communications. Building blocks streamline the development process and help app creators ship better products faster.

In house vs. building blocks

Effort and speed

Application creators always have limited resources when developing products. Constraints in time, people, and budget are common — and often all three are in play. Using a building block technology, developers can get to a fully functional experience faster than if they were to develop the infrastructure from scratch or try to combine several services together. Consider what is easier/faster — setting up an entire messaging service including connectivity, network handling, routing, push notifications etc. or just authenticating users, defining a conversation, sending/receiving a message? Layer enables application creators to get fully functional communications in their products extremely fast with no infrastructure work, enabling them to focus on the product experience.

A better product experience

When developers leverage a building block technology instead of building their own infrastructure from scratch, engineering resources can be refocused on building a better experience. Rather than spending 80% of your development time building infrastructure and the final 20% refining UI and UX, imagine having the vast majority of your time to spend on experience and interface — truly the things that define a product!? Having completely functional communications features out of the box enables developers to focus and innovate on the differentiating factors of their product — the content, experiences, connections, and transactions that no other product enables.

Constant improvement and evolution

Companies that provide building blocks have the luxury to focus on the constant improvement of their specialized functionality. That’s a luxury a developer can’t afford if that functionality is not the absolute core focus and key differentiator of the product. In-house solutions are often built for today’s needs, as a quick project to solve an immediate need. Through time, requirements and expected features change. A communications platform such as Layer has the luxury of focusing on delivering all the features at the quality level of a horizontal communications product — and always pushing the bar higher. At Layer our focus is always on providing a simple to use SDK, with clean APIs, powered by scalable and reliable infrastructure that keep evolving to meet the changing needs of developers’ products and businesses.

Community and Support

Because building blocks are used by large numbers of developers and are not one-off solutions, it is fairly easy to find additional support in the community. On top of that, the companies behind these build block products typically provide great documentation and long-term support to ensure their customers are successfully using their products. That’s hard to say for one-off, home-brewed solutions built by teams that have mostly moved onto other, equally important internal projects or have even left the company. We are proud to provide developers using Layer with great support with 100% satisfaction rates.

Reliability, maintenance and scale

Most projects start as a proof-of-concept, and then later evolve into viable, shippable products. Infrastructure built to support a proof-of-concept will usually require a substantial amount of time and resource to reach a production-ready state — not to mention the ongoing cost of maintenance, operations burden, and scaling to support a product’s success. Often scaling up means reworking the entire architecture several times. Operating large scale communications infrastructure is expensive and requires a lot of highly specific domain expertise. Layer’s communications service was built to support scale from day one and is maintained by a dedicated team of experts with highly relevant domain expertise.

We love to power great experiences. Get started with Layer and enable the power of communications in your product.