Member post originally published on Facets.cloud’s blog by Anshul Sao
Explore the build vs. buy dilemma for Internal Developer Platforms (IDP) with clear insights and practical examples from companies like Treebo Hotels and GGX, shedding light on its impact on developer productivity and innovation.
Building software is complex. Engineering teams face immense pressure to churn out quality code at breakneck speeds while ensuring legacy systems don’t break. Many companies now rely on Internal Developer Platforms (IDPs)—inhouse built toolchains that help developers deliver faster to stay ahead of the curve.
But that leads to a critical question: Should you build your IDP from scratch or buy one off-the-shelf? This is a common dilemma facing engineering leaders, and the decision carries significant implications for developer productivity, costs, and more.
This article will help you decide whether to build or buy an IDP. We’ll look at companies that started with homegrown IDPs and eventually switched to a third-party IDP and how that shift impacted business.
First, What is an IDP?
An internal developer platform (IDP) is a customized system created in-house or by a third party to improve efficiency for an organization’s Dev and Ops teams. IDPs provide a central interface where developers can access all the tools and services they need for coding, building, testing, and deploying applications.
They aim to remove friction during deployment by standardizing tools and best practices. This standardized approach allows developers to focus on writing code rather than configuring tooling and processes.
At their core, IDPs enable engineers to build, test, integrate, and deploy applications faster and with higher quality.
What are the Components of an IDP?
Developers use many different tools to build and deploy software. This can make operations complicated and disjointed. There are isolated systems that don’t connect well, and IDPs solve this by linking together essential tools like:
- Source code repositories
- Continuous integration/continuous delivery (CI/CD) pipelines
- Infrastructure provisioning tools
- Monitoring and logging dashboards
- Documentation platforms
- Ticketing systems
But what are the benefits of implementing an IDP in your Dev workflows?
Benefits of IDPs
Engineering teams can realize several advantages with an IDP. Here are some of the major ones:
- Improved developer productivity due to streamlined workflows
- Increased release velocity, allowing more features to be released
- Higher code quality through enhanced debugging and collaboration
- Standard processes and tools across all product teams
- Scalable platform for onboarding more engineers
As software complexity increases in modern technology stacks, IDPs have become indispensable infrastructure for high-performing engineering organizations. With a robust IDP, companies can accelerate innovation and maintain a competitive advantage.
Should You Build or Buy an IDP—Quick Overview
But when it comes to IDPs, you’re met with two choices—spending resources and developer time to build an IDP or buying an IDP that allows similar flexibility. Let’s look at a quick comparison.
Buy an IDP | Build an IDP | |
---|---|---|
Implementation Time | ✅ Quick and easy implementation—ready-to-use platform available immediately | ❌ Requires significant time from skilled developers to build from scratch |
Cost | ✅ Cost-effective with potential savings—pre-integrated tools and APIs reduce the resources required to build from scratch | ❌ High initial investment in development, infrastructure, and ongoing maintenance |
Productivity and Efficiency | ✅ Streamlined workflows and automation enhance productivity and feature delivery speed. | 🟡 Risk of delays can offset the potential productivity benefits |
Scalability | ✅ If one goes with the right solution, the solution scales to grow with the org—supports easy onboarding for new teams | ❌ Scalability dependent on in-house capabilities—may require ongoing adjustments |
Collaboration | ✅ Facilitates collaboration through a shared platform—improves communication across teams | ❌ Custom-built collaboration tools may lack standardization across teams |
Security and Compliance | ✅ The best IDPs offer compliant solutions | ✅ Full control over security but requires continuous monitoring and updates |
Integration | ✅ Simplified connections with pre-integrated tools and services ensure a consistent experience | 🟡 Seamless integration of favorite tools but may involve complex setup |
Onboarding and Self-service | ✅ Efficient onboarding process—reduces time for new developers to become productive | 🟡 Custom onboarding may be time-consuming and challenging for new developers |
Customisation | 🟡 Limited to the features and extensibility offered by the platform | ✅ Full control and extensibility |
Ownership and Control | 🟡 Dependence on external support—Your experience may depend on the business | ✅ Complete ownership and control |
Maintenance and Support | ✅ Access to external support for critical bug fixes—reduces the burden on internal resources | ❌ Requires ongoing maintenance and care—full-time internal resource commitment |
Build vs. Buy an Internal Developer Platform—A Detailed Look
Let’s dive deeper into the debate and see if it makes more sense for you to build your IDP or buy one that integrates with your toolchain.
The Build Approach for Internal Developer Platforms (IDP)
Going custom with your Internal Developer Platform is like designing your dream house – you get the creative freedom to build something tailored to your team’s needs. I can see why that appeals to some teams!
Advantages of the build approach:
- You can fully customize it for your unique workflows and specialized needs. For instance, if your team is building a custom data platform that requires specialized applications, building an IDP lets you bake all that in from the start.
- You can seamlessly integrate your toolchain. It’s like designing your ideal kitchen with all the must-have appliances and gadgets. You can only add the integrations you need in your IDP instead of spending time and resources building integrations for all tools.
- You maintain full ownership and control. You can add features to your IDP on your timeline—no reliance on an external team where you request and wait for the components to be prioritized.
However, building a custom Internal Developer Platform is more complex than throwing features together.
Disadvantages of the build approach:
- It takes significant time and engineering resources to build something robust from scratch. You need skilled developers and lots of bandwidth. It’s not a quick weekend project. And every hour not spent on your core product offering, your crown jewel, is not focusing on your competitive advantage.
- Once built, it needs ongoing maintenance and care to handle upgrades, security, scaling needs, etc. You’re signing up to be a full-time gardener.
- The costs add up fast. Between Dev time, infrastructure, maintenance, etc., it’s a serious investment, like buying a luxury car. Budget accordingly. It can be an added distraction.
Building a custom Internal Developer Platform can be a compelling approach for the right team with advanced needs and resources to invest. But take into account the commitment and complexity involved.
The Buy Approach for Internal Developer Platforms (IDP)
Buying an off-the-shelf Internal Developer Platform (IDP) is like moving into a fully furnished home, ready to go. You skip the headache of building everything yourself from the ground up.
There are some convincing reasons why getting a ready-made IDP could be the way for your organization:
- It brings standardization. Everyone uses identical versions of tools and services throughout the organization. This also helps you avoid infrastructure drift, helping bring everyone on the same page.
- It boosts developer productivity. An IDP makes things like environment provisioning, building pipelines, and deploying apps ridiculously easy. This leaves your developers free to focus on writing code and shipping features faster.
- Collaboration between teams improves. A single pane of glass gets dev teams, Ops, security, and others on the same page.
- It’s faster to onboard new developers since everything’s pre-configured and ready to roll. Less ramp-up time means developers can get to production quickly.
- A quality IDP is designed to scale with your organization as you add more teams.
- Governance frameworks for security, compliance, monitoring, and more are baked right in. This means your Cloud is optimized from Day 1
Going the buy route isn’t without some potential downsides to consider:
- Some pre-packaged IDPs may be challenging to customize. Though you may see IDPs designed to be standardized, many modern IDPs are fully customizable based on your workflows. For example, Facets is built from the ground up to be extensible by design, giving you complete control over how your organizational workflows are stitched together.
- There’s dependence on the vendor’s timeline for critical updates, fixes, new features, etc.
Build vs. Buy an IDP: Real-World Business Impact
Let’s look at real-world examples to see the build vs. buy decision and its impact on business. These case studies are from companies that have implemented IDPs and provide tangible lessons on the pros and cons of each approach.
Treebo Hotels built its custom platform at first. But soon, the company faced challenges maintaining and managing multiple environments. That’s when they decided to buy an IDP.
They picked Facets—a self-hosted, self-serve IDP that simplified their manual processes with logging, monitoring, and alerting workflows. With this change, Treebo could onboard developers faster, with dedicated resources spun up automatically, thus saving hours of wasted resources and improving dev productivity.
Another example is from the gaming industry, which is highly code-heavy and has many disparate processes—including code, graphics, design, modeling, and more. There are multiple layers of complexities involved.
When GGX decided to migrate its cloud solution from AWS to Google Cloud, it faced many issues arising from these complexities. Due to this, they expected the migration to be completed in 3 months. Running sandbox environments for external game developers was also tough using the homegrown tools.
That’s when they decided to try a third-party IDP. Facets accelerated GGX’s cloud migration from three months to just two weeks!
It also smoothened release management for faster deployments. With drift-free sandboxes and 100% automation, GGX achieved a faster setup with minimal effort and resource wastage.
The takeaways?
- IDPs provide pre-built tools and workflows that automate the redundant tasks involved in cloud deployment, freeing up developer time and energy for innovation. However, building a custom IDP requires significant upfront effort.
- IDPs standardize environments and processes, reducing unexpected issues down the line. Some off-the-shelf solutions offer better support and extensibility, helping you design the IDP to fit your current workflows.
- Adapting and scaling efficiently as needs change requires flexible infrastructure. Homegrown platforms often involve more overhead, making it challenging to modify and upgrade.
- Balance is key between control/customization and maintenance burden. Building an IDP allows more customization but requires more upkeep, while some standardized IDPs may limit flexibility.
Build or Buy..the verdict?
It feels safe to stick to what works. Your team may side with building a custom IDP to fit their workflows and process requirements.
But it isn’t about the technology itself—it’s the productivity and innovation an IDP enables for your developers. You need to weigh the benefits and drawbacks of building vs. buying an IDP that fits your needs.
An effective IDP helps create the best environment for your engineers and adds value to the organization. It enhances their experience, not hinders it.
If building one from scratch works for your team, take that idea for a spin. And if you’re considering buying an IDP, try Facets—an off-the-shelf IDP purpose-built for engineering teams. It is built by experts in developer-centric design, making Facets the one third-party IDP that balances extensibility and configurability while providing you complete peace of mind regarding updates and security.
Want to see how Facets can help optimize your existing dev workflows? Book a 1:1 demo today.