What is a developer iPaaS and why you should be looking for one?

Chanaka Fernando
5 min readApr 26, 2023

What is changing in the world of integration software and how you can get ready for it

Introduction

The term “Integration” is used in the enterprise software world with the idea of connecting systems, applications, and data using a set of technologies that are either open standards (HTTP/REST/SOAP/FHIR) or proprietary (Kafka/IDOC/AS400). These systems can reside anywhere from the on-premise data centers to cloud platforms (IaaS, PaaS, and SaaS). With time, these integration tools have evolved from point-to-point integrations, ESBs, HIP (Hybrid Integration Platforms), and iPaaS to the latest which is developer iPaaS. The idea of this article is to discuss the needs of modern integration use cases and how the concept of a developer iPaaS can cater to these requirements in the time to come.

What is an iPaaS?

It is an integration platform that is offered as a cloud-hosted service by a vendor. The users of iPaaS can use it to connect systems and share data without worrying about installing, configuring, and maintaining the underlying infrastructure and software components on top of it. Rather, they can focus on creating the required integrations and automation which would increase the productivity of the organization and offers their customers a better experience. Most of these iPaaS platforms that are out there provide easy-to-use user interfaces to design, implement and deploy these integrations. As an example, if you need to create a GitHub issue for every feature request that is recorded in the ServiceNow platform, the iPaaS platform will make it easier to build this integration by providing a template so that the developer can quickly build this integration and deploy it to the runtimes by configuring the necessary parameters (credentials) on connections.

The added benefits of an iPaaS include

  • Less overhead to getting started (no installation, configuration)
  • Fewer resources to manage (available as a cloud-hosted service)
  • Faster time to market (UI-based, low-code development with templates)
  • Pay-as-you-go pricing

These benefits made the iPaaS platforms the primary choice for enterprises who were looking to purchase integration platforms.

What is missing in iPaaS?

While these iPaaS platforms were offering great benefits to the users, there has been challenges when developers within an organization started adopting these platforms. The concept of a “Citizen developer”, who is a developer with great domain knowledge who prefers low-code or no-code approaches to building applications has started to fade away with the resurgence of concepts such as 12-factor application development and modern development tools. What development teams realized with the improvements in IDEs, automation tools, and container-based platforms is that the concepts such as 12-factor apps that are followed by certain teams are beneficial for all the development teams within the organization.

Most of the existing iPaaS solutions work great when developing certain integrations such as moving data from one system to another system. The pre-built templates and the low-code/no-code approaches significantly improve the productivity of developers and reduce the time to market. At the same time, there are other integration use cases that require a certain level of programming to manipulate data, execute logical operations, call multiple services, and handle different responses to name a few. Implementing these kinds of complex integrations requires falling back into a programming language such as Java, Javascript, or Python and plugging that into the iPaaS as an extension. If you have more of these use cases, you really need to think if the iPaaS is the correct solution.

Another problem with the iPaaS platform is the behavior of the platform is highly opinionated and the flexibility of bringing your own processes is limited. As an example, if you are following the 12-factor application development approach and use a set of best practices on which tools to use for certain functionalities, you can’t bring those same concepts to the iPaaS since it has its own ways of doing things. This will create friction amongst teams and interaction between teams can be highly challenging.

Figure: Image of a lazy developer created by Dall-E

What is a developer iPaaS?

A developer iPaaS is an iPaaS that allows developers to choose the right tools to implement the use cases without restricting them to certain schools of thought such as low-code vs pro-code and Spring vs Camel. At the same time, it allows developers to use their preferred tools to develop, test, and host the code without tying them tightly into a limited set of options. At the same time, it provides all the underlying infrastructure and automation to release their software faster by providing pre-built environments (dev and prod), CICD pipelines, Observability, and statistical insights.

In addition to these core capabilities that will increase the developer productivity, a developer iPaaS also provides additional features such as reusable marketplaces, development governance, and integrated metrics on the performance and the usage of integrations that are running on the platform.

Why you should care?

Similar to how iPaaS became mainstream with the increased usage of cloud-based systems in enterprises, more and more enterprise teams are moving into automated deployments, decentralized architectures, and developer-powered processes to release enterprise software faster and with better quality. The line between the citizen developer, frontend developer, and backend developer has started to get blurred and with the increased usage of GPT-4 and Co-Pilot, writing code has become a skill that every developer should possess. This means that instead of getting stuck in a less flexible, low-code platform, developers will need the flexibility to use whatever is correct for the given use case and if the underlying iPaaS platform can offer the required infrastructure-level plumbing and observability, it would help them immensely to produce great software.

Where can I find one?

In theory, most of the iPaaS platforms available in the market may say that they have a developer iPaaS. But in reality, they don’t have some of the main features that differentiate a typical iPaaS from a developer iPaaS. You can find one which is closer to a good developer iPaaS in the likes of Choreo by WSO2.

It is an iPaaS designed from scratch to offer greater flexibility to the developers while providing all the required plumbing and automation to release quality software more frequently.

--

--

Chanaka Fernando

Writes about Microservices, APIs, and Integration. Author of “Designing Microservices Platforms with NATS” and "Solution Architecture Patterns for Enterprise"