What are platform engineering tools?

Copy URL

Platform engineering tools help development teams (internal and external) improve their productivity by getting access to what they need when they need it using a self-service approach. Platform engineering tools support capabilities including continuous integration and continuous delivery or deployment (CI/CD), Infrastructure as Code (IaC), containerization, observability, security, developer self-service, and more.

A platform engineering team (sometimes just called a platform team) is responsible for supporting a developer portal, which provides self-service access to resources, documentation, and tools developers need to interact with various services and APIs. Going beyond that, platform teams can maintain an internal developer platform (IDP), which serves as the underlying infrastructure for developers to build, deploy and manage their applications.

Though related, platform engineering technologies are not the same category as developer tools. Platform engineering technologies and the platform itself, the IDP, help establish consistent processes for developers to do their work efficiently. Developer tools build from that foundation to help developers enhance their IDP experience and accomplish specific projects.

Below we’ll look closely at what platform engineering aims to accomplish, and what kinds of technologies and services are available to support those goals.

Platform engineering seeks to make sense of the sheer amount of existing technologies in the cloud-native era. Platform engineers design and build toolchains and workflows to enable self-service capabilities for software engineering organizations. Development teams can get the capabilities they need in minutes, certain the solutions provided are supported internally, are observable, and follow their organization’s security practices.

Platform engineering is a multidisciplinary approach that weaves together work culture, business operations, team collaborations, and more in service of more efficient software development. It recognizes the cognitive load placed on software developers and seeks to identify and mitigate the pain points developers feel.

What does this look like in practice? Platform engineers assemble a collection of content, tools, documentation,  templates, and workflows that provide flexibility while maintaining organizational consistency. Platform engineers provide common, reusable tools and capabilities to help developers work effectively and to promote developer productivity.

State of platform engineering in the age of AI

An IDP is a standardized set of self-service tools and technologies that developers can use to create and deploy code. By consolidating and simplifying elements of the development process, IDPs make a development team’s work more manageable, efficient and collaborative.

IDPs are an expression of platform engineering choices. An IDP is a foundation of self-service APIs, tools and services, knowledge and support which are arranged as a compelling internal product. While development teams are the primary users of an IDP, platform engineers handle the initial configuration, maintenance and support. This ensures the whole organization is using a cohesive set of technologies and resources, regardless of who created it in the past. Providing an IDP can be a way to enable and maintain DevOps best practices, which promote a more efficient working relationship between development and operations teams.

The terms internal developer portal and internal developer platform are sometimes confused; the distinction is that a developer portal can serve as a front end for an internal developer platform, which adds an application platform for functional depth and scalability.

One of the best known open source projects for developer platforms is Backstage, which was created by engineers at Spotify and later donated to the Cloud Native Computing Foundation (CNCF). Backstage forms the foundation of Red Hat® Developer Hub. Red Hat Developer Hub offers a supported and opinionated framework for building developer platforms, with integrations and support for enterprise customers.

Learn more about internal developer platforms

CI/CD tools can help a team automate their development, deployment, and testing. Some tools specifically handle the integration (CI) side, some manage development and deployment (CD), while others specialize in continuous testing or related functions. Many of these tools can be integrated into an IDP as part of a platform engineering approach.

There are a variety of well known open source CI/CD tools, and this list is not exhaustive.

  • Argo CD is a declarative continuous delivery tool for Kubernetes that aligns with GitOps practices. It can be used as a standalone tool or as a part of a CI/CD workflow to deliver needed resources to clusters.
  • Red Hat OpenShift® GitOps is built on a foundation of Argo CD.
  • Tekton is a CI/CD framework for Kubernetes platforms that provides a standard cloud-native CI/CD experience with containers.
  • Red Hat OpenShift Pipelines is built on the Tekton framework.
  • Jenkins is an automation tool that can handle CI and CD processes at small and large scales.
  • Spinnaker is a CD platform designed for multicloud environments.
  • GoCD is a CI/CD server with an emphasis on modeling and visualization.
  • Concourse is an automation tool suitable for continuous processes.
  • Screwdriver is a build platform designed for CD.

Teams may also want to consider managed CI/CD tools, which are available from a variety of vendors. The right choice of CI/CD tools can help teams automate building, testing, and deployment of an application across platforms. 

Learn more about CI/CD

IaC is an approach to infrastructure management. It lets administrators automate the managing and provisioning of infrastructure, including servers and virtual machines. This support of automated, self-service infrastructure aligns with the goals of platform engineering.

Working with IaC means using configuration files to define your infrastructure specifications. This makes it easier to provision environments consistently. IaC makes it possible to edit and distribute configurations across an organization, and discourages undocumented, ad-hoc changes.

IaC relies on server automation and configuration management tools. Some common IT automation tools that align with the IaC approach include Red Hat Ansible® Automation Platform, Terraform, Chef, Puppet, and Salt.

Learn more about IaC

Container tools are an important part of a platform engineer’s toolbox.

Containers package and isolate applications with their entire runtime environment—all of the files necessary to run. As a result, containerized applications will run consistently wherever they are deployed, across different environments and infrastructure. Containers are foundational to cloud-native development, a method that breaks large applications into collections of small, independent, and loosely coupled microservices.

There are a variety of open source tools that make working with containers easier. To build and deploy containers, developers can use tools such as Docker and Podman, both of which support Open Container Initiative (OCI) standards.

To manage containers at scale, operations teams rely on container orchestration platforms, such as the open source Kubernetes project. Container orchestration automates the deployment, management, scaling, and networking of containers throughout their lifecycle.

Kubernetes platforms are available through a variety of different providers. Red Hat OpenShift is an enterprise application platform built on a Kubernetes foundation. Platform engineers can integrate Red Hat OpenShift with an IDP such as Red Hat OpenShift Developer Hub to deliver a developer platform.

Monitoring and observability are important to platform engineering, enabling teams to examine outputs, logs, and performance metrics in order to better understand the state of a system or application. This visibility helps developers and administrators improve reliability, performance, and security of complex applications and infrastructure.

Observability extends the concept of monitoring to include identifying root causes of issues, as well as forecasts and predictions. There are many choices of observability tools and technologies, and teams can set up their own observability systems in ways that work best for them.

Some open source tools commonly used in observability include Grafana, Jaeger, OpenTelemetry, and Prometheus. Red Hat OpenShift Observability is a set of observability tools built to work with Red Hat OpenShift using OpenTelemetry standards.

Learn more about observability

As security concerns rise, modern software development has embraced a “shift left” strategy to address security at each phase of the software development lifecycle (SDLC). Rather than a last check before deployment, security now begins at the start of a project.

Platform engineers help developers follow security guardrails throughout the SDLC. These steps can include automated checks and testing in the CI/CD pipeline, which protect code, prevent data leaks, enforce policy compliance, and ensure quality assurance.

Other platform engineering security tools help with secrets management (managing passwords, client configuration files, repository credentials, and so on) and API security, including management of API keys.

Red Hat offers a series of tools and services that support software security.

Red Hat Trusted Software Supply Chain brings together a suite of solutions that can help reduce vulnerabilities and enforce security policies, including Red Hat Trusted Profile Analyzer, Red Hat Trusted Application Pipeline, and Red Hat Trusted Artifact Signer.

For Kubernetes deployments, Red Hat Advanced Cluster Security for Kubernetes protects containerized workloads across platforms, helping teams identify and address vulnerabilities and enforce security policies.

Learn more about CI/CD security

Platform engineers can find a variety of solutions from Red Hat that are aligned to their goals. Red Hat products and services work together to improve team productivity while increasing self-service, accelerating onboarding, and reducing repetitive tasks.

Red Hat OpenShift is an enterprise application platform that lets developers use the tools they rely on across a variety of applications, wherever they are deployed—on premise, in the cloud, or at the edge.

Red Hat Developer Hub promotes efficiency and collaboration throughout the software development process. It delivers a unified and open platform while reducing cognitive load and frustration for the development team. With Red Hat Developer Hub, organizations can use IDPs to consolidate development process elements, streamline workflows, and foster internal collaboration.

Red Hat Trusted Software Supply Chain helps teams build security into the components, processes, and practices in their software factory from the start.

Hub

Red Hat Developer Hub business solutions

A Backstage-based open enterprise platform for building developer portals that visually consolidates elements of the development process.

Red Hat OpenShift for platform engineers

Red Hat OpenShift provides platform engineering teams with the tools they need to effectively build and manage internal developer platforms.

Keep reading

What is a Golden Path for software development?

A Golden Path refers to an opinionated, well-documented, and supported way of building and deploying software within an organization.

Platform engineering vs. DevOps

Find out how platform engineering differs from DevOps to identify an approach that supports your goals.

Red Hat OpenShift for platform engineers

Red Hat OpenShift provides platform engineering teams with the tools they need to effectively build and manage internal developer platforms.

Platform engineering resources