preloader

Best Frameworks for Building an IDP in 2024

Integrating a good Internal Developer Platform (IDP) is arguably the most valuable decision you can make when it comes to DevEx. We’re looking at a few of the tools available to help you build one that suits your team’s needs.

/images/blog/cover-images/IDP-guide.png
Building an IDP with tools and frameworks

by on

Whether you’re browsing all-in-one developer platforms or trying to strategize and build one from scratch, you’ve probably quickly realized that there are an overwhelming amount of offerings available with a wide scope of use cases (eg. IDPs, PaaS, DIY, EaaS, etc). There’s no general “right or wrong” solution out there, rather there are certain tools and services that will be more optimal for your org. You might want to check out whether an offering aligns with your team’s needs, including:

  • Your organization/team type: does your org fit this offering’s intended user profile? Can it solve your pain points?
  • Your organization’s maturity stage: what does your existing infrastructure look like? How about your platform team? Are you starting from scratch?
  • Price of offering: how much does the offering itself cost?
  • Total cost of offering: what are the other costs, on top of the subscription fee? Do you need to pay for cloud costs, hosting? Does this product need a dedicated maintenance team?

Why invest in platform? IDPs == DevEx and Developer Velocity

Platform is obviously a major undertaking – it can take from several months to even a couple of years to build the infrastructure your organization needs to develop, test, and deliver quality software. So why uproot your DevOps/platform team to start building something at great expense when you already have middling infrastructure that’s “good enough” to get the job done?

The truth of the matter is that while you’re saving costs on platform development, you’re losing tens of thousands of dollars per week to developer unproductivity. It’s one thing for devs to wait for their features to get tested, reviewed, and deployed, but the biggest loss in developer productivity stems from context switching. Your developers deliver the best quality code at the fastest rate when they’re able to achieve a flow state. The best way to guarantee they’re free of blocks and interruptions is by providing them with platform infrastructure that enables continuous delivery.

For this reason, it’s easy to understand the high ROI of good platform, in terms of development costs, velocity, and overall developer experience (DevEx).

Platform solutions to consider in 2024

It’ll take some time to evaluate what you’re looking for in a managed pre-production solution. For some orgs, a pre-packaged IDP might be the right choice, but others might need some more customizability. A fully-managed solution is costly and has an ecosystem-exclusive learning curve (this often doesn’t translate well to migrating platforms!), but can also offer features that are a pain to build out. This will be a question for you and your platform team: how much are you willing to build yourself, and how much are you willing to spend?

We’re looking at a few suitable well-loved tools and offerings in the platform engineering space. Remember, the perfect solution for one org might not make sense for your org. For this reason, we’re not exclusively looking at pre-packaged Internal Developer Platforms – we’re taking a wider approach.

Backstage: an Internal Developer Portal

Backstage is an IDP, but of a different kind; it’s an Internal Developer Portal. As far as customizable developer portals go, Backstage takes the cake. Created by the Spotify team to simplify and standardize infrastructure, and later open sourced, it’s quickly becoming the most popular way for enterprise platform teams to build their platform with. As explained by its docs: “Our idea was to centralize and simplify end-to-end software development with an abstraction layer that sits on top of all of our infrastructure and developer tooling.” Backstage has a wealth of plugins so you can hook in to the tools you’re already using for your internal developer platform.

Backstage as an internal developer portal

Who it’s for: Backstage is best-suited for organizations who have an internal developer platform strategy in place and want to make self-service a reality for their developers.

Maturity stage: Already have an internal developer platform, looking to make it easier to use for developers.

Price: Free (Open Source)

Cost: Backstage itself is free. You must self-host and it requires some ongoing development and maintenance. If handling all of this internally sounds prohibitive, see also Roadie for a managed Backstage provider to lighten the lift (Roadie, no surprise, has a price tag attached.)

Shipyard: Environment Management for your IDP

Also not an internal developer platform, Shipyard might still be the right solution for your team, depending on your needs. Shipyard is a self-service ephemeral environment platform. You can use it within your existing workflow, and it’s modular enough to adapt to any infrastructure, from simple to complex.

Shipyard data snapshot management

Who it’s for: Shipyard is best for organizations who don’t yet have an environment management solution. These teams typically are early on in their approach to building an internal developer platform, or are just getting started with the most important element of unblocking your developer workflow: environments. Teams range in size from startup to enterprise.

Maturity stage: These teams are early on in their approach to building an internal developer platform. They may have a small DevOps team and QA team in place. They have a dev/staging/prod setup with one or a few often-blocked staging environments. They want to provide the most important piece of developer self-service first–ephemeral environments–to streamline development workflows and shifting testing and QA left in the software development life cycle.

Price: $$

Cost: Additional costs come close to $0/month. Shipyard is billed per seat, which includes cloud costs.

Qovery: a Pre-packaged IDP

Qovery is an Internal Developer Platform solution. It’s commonly referred to as “the Heroku for any cloud provider”. It connects to your existing cloud provider and runs on top of your Kubernetes cluster. Qovery aims to simplify cloud infrastructure by providing platform tooling that is particularly challenging to build out, including GitOps, environment management, and deployment.

Qovery UI

Who it’s for: Qovery is a popular option for platform teams starting from ground zero. These teams want a fully-managed solution so they don’t have to build any infrastructure from scratch.

Maturity stage: Teams who don’t have an internal developer platform.

Price: $$$

Cost: Cloud costs after the first 1000 build min/month. Expect to dedicate 1-2 platform engineers 50% to onboarding and maintenance.

Humanitec: a Platform Orchestrator for your IDP

Humanitec is not an internal developer platform, rather it’s a platform orchestrator, which can be used to define and build an internal developer platform. You’ll still want to use an internal developer portal (like Backstage) as your interface, and there are a few more elements you’ll build out to get a complete IDP.

Humanitec platform orchestrator

Who it’s for: Humanitec is for platform teams who want control over their infrastructure but prefer a managed platform orchestrator as the core of their IDP.

Maturity stage: Teams that are ready to jump all in on an internal developer platform solution to go from 0 to 1 on their platform initiative. They have committed budget (lots of it) and are ready to take a prescribed and opinionated approach to how they provide developer self-service. They’re also willing to build and configure the less complex parts of their IDP by hand.

Price: $$$

Cost: For the self-hosted plan, you’ll pay for cloud costs. Factor in one platform engineer’s salary for one month during onboarding and implementation.

Uffizzi: Environments and Clusters for your IDP

Uffizzi offers “building blocks” for IDPs, including virtual clusters and environment management. They also offer consulting services to build your IDP for you. Like other environment management platforms, you might integrate with a portal like Backstage.

Uffizzi dashboard

Who it’s for: Uffizzi is designed for platform teams who want highly-customizable infrastructure but prefer a service to handle environment and cluster management.

Maturity stage: Mature platform teams that are able to dedicate substantial engineering time to a solution.

Price: $

Cost: With self-hosted plans, you’ll save money per seat at the personal expense of cloud costs. Onboarding costs are not included in the subscription. Expect to dedicate one engineer 30% to upkeep and maintenance.

Mia-Platform: Modules for Building Your IDP

Mia-Platform is a self-described “IDP-builder”. It includes a portal, platform orchestrator, data platform, API, and plugin support. These tools can do a significant amount of the heavy lifting for your platform team, however you’ll need to take environment management into your own hands or go with a managed provider.

Mia-Platform portal

Who it’s for: Mia-Platform is a densely-packed toolkit for teams that want an almost all-in-one platform solution, but still want flexibility with some of the more critical modules. This is best-suited for enterprise orgs.

Maturity stage: Platform teams who are early on in their IDP journey, but have general knowledge on how to architect an IDP.

Price: $$$

Cost: Expect to dedicate one platform engineer full-time for upkeep and maintenance.

Conclusion

The platform space has no shortage of great offerings, although it quickly gets complex as you go down the rabbit hole of IDPortals, IDPlatforms, PaaS, Platform Orchestrators, and environment management platforms. When you’re looking at an IDP or platform solution – you’re also evaluating what type/category of platform suits your team’s needs. At the end of the day, you’ll likely be doing some combination of building and buying tooling for a complete IDPlatform.

We recommend checking out InternalDeveloperPlatform.org for more information.

Need standalone, platform-independent environment management? Talk to us today.

Try Shipyard today

Get isolated, full-stack ephemeral environments on every PR.

What is Shipyard?

Shipyard is the Ephemeral Environment Self-Service Platform.

Automated review environments on every pull request for Developers, Product, and QA teams.

Stay connected

Latest Articles

Shipyard Newsletter
Stay in the (inner) loop

Hear about the latest and greatest in cloud native, container orchestration, DevOps, and more when you sign up for our monthly newsletter.