What is an internal developer portal homepage?

January 30, 2025

Ready to start?

What is an internal developer portal homepage?

Introduction

As software development becomes more complex, and the demands of a “you build it, you own it” culture rise, developers face two competing challenges. First, we have to build better, faster; and second, to achieve the first challenge, we must become experts in what feels like a million different tools to fully own our deployment pipelines. 

As a result, companies are increasingly focused on improving their developer experience (DevEx). Why? Because enhancing DevEx doesn’t just lead to happier employees—it directly impacts your bottom line.

Below, we’ll discuss why developer experience is important and how building a high-quality developer homepage in your internal developer portal actually improves DevEx.

The importance of the flow state

Developers often talk about “getting into the flow,” entering “focus-mode,” or “being in the zone.” These terms refer to the flow state, where devs are fully immersed in their work and experience a heightened sense of focus, fulfillment, and enjoyment.

But the flow state is not just about being efficient — it’s also about being happy. The flow state gives developers a critically improved ability to solve complex problems and produce high-quality code efficiently. This, in turn, makes developers’ work feel more fulfilling and satisfying, and increases the quality and reliability of your software.

Developers love the feeling of a full day in focus-mode — this is what they are there to do, be creative and productive! This proves out in a recent survey conducted by Microsoft, the University of Victoria, and Purdue University, which shows that developers overwhelmingly point to entering the flow state as a reason for “good days,” while challenges with “engineering system friction” and tool sprawl contribute to “bad days.”

A recent Gartner report also indicates that companies with a high-quality developer experience are 33% more likely to attain their target business outcomes​ and 31% more likely to improve delivery flow​. The same Gartner report shows that 20% of developers are also more likely to stay with a company that has and prioritizes a good developer experience. 

This is because developers in the “flow state” are significantly more efficient. They are not bogged down by boring repetitive tasks, or switching contexts between many different tools in their development pipeline, which saves the organization time and money.

But the flow state is fragile. According to the same study, “developers who had more time for deep work demonstrated a remarkable 50% increase in productivity compared to their counterparts with less uninterrupted time,” which proves that interruptions like switching between multiple tools or trying to prioritize tasks on the fly can disrupt the flow state and cost developers precious time and energy.

With this in mind, it’s clear that improving DevEx will have a significant impact on your team’s retention, productivity, and efficiency. Providing developers as many opportunities to streamline their pipelines and abstract away complexity will increase not only their satisfaction and productivity rates, but the quality of your software and talent retention rates as well.

The rise of internal developer portals

This is where developer portals, like Backstage or Port, come into play. Internal developer portals are tools that do much more for development teams than provide a service catalog. Instead, they improve workflows between human engineers and their tech stack by providing a single UI that can navigate through their entire development pipeline:

This reduces the cognitive load on developers and helps them stay in the flow state. A portal eliminates the need to switch between the multiple tool and language contexts that come with deploying software to cloud environments. 

But the differences between building a developer portal versus a software catalog don’t end there. With a portal, you gain the opportunity to design interfaces — from UIs to CLIs, or even AI-based workflows — that help developers stay happy, focused, and productive.

Enter the developer homepage

The first thing you open in the morning has an impact on the rest of your day. Just like opening Instagram in the morning can get you stuck doom-scrolling, developers that open their email first might be stuck cleaning up requests from other departments. Developers who start their day reviewing open PRs may spend a few hours in code review instead of pushing through new priorities.

Now, these are still work tasks, but they take away time from the ticket you’ve already been working on for a few days, or fixing the pipeline that broke last night. And the same thing can happen after other work interruptions, such as after a meeting, a coffee or lunch break, after a meeting, and so on.

This is where a developer homepage comes in handy:

For engineering leaders, a well-designed developer homepage is a great opportunity to boost team productivity and focus. It also gives platform engineers, who build the portal to their team’s needs, a chance to own the internal developer portal by building that homepage and designing the place where developers will start their day. 

A well-designed developer homepage helps ensure that developers have what they need to work quickly and efficiently, while the rest of the portal encourages developers to maintain priorities and standards. They can move from task to task with little distraction, deploy according to golden paths, and move on to the next task in their priority list smoothly and quickly.

What must a minimum viable developer homepage include?

Developers often juggle multiple systems to understand their priorities, such as:

  • Ticketing and task management systems: Tools like Jira, Linear, or Asana to view tasks assigned to them or their teammates.
  • Source Control Management (SCM) systems: Platforms like GitHub or GitLab for tracking pull requests (PRs), including those awaiting review or needing feedback.

These are the most important aspects a developer homepage should include because they represent the bulk of the work developers are responsible for. If there are other tools that your developers use on a daily basis, consider integrating them as well, with the goal of making the homepage as comprehensive as possible. The ultimate developer homepage will be the sole destination for developers — just as the ultimate internal developer portal removes the need to switch between tools.

From this starting point, you can go a layer deeper and build in specific initiatives, or business-oriented priorities that unite specific tasks, service upgrades, and scorecards for standards to drive change. Read more about Port initiatives here

Some portals make it more difficult than others to create this single source of truth. At Port, we designed the Dev Daily Plugin for Backstage to consolidate all of the information from your Backstage plugins into a single dashboard. It provides developers with a daily snapshot of their activities, including PRs, tasks, and reviews, enabling them to plan and manage their day more effectively and according to business priorities.

Monitoring AI in the developer homepage

Though generative AI is becoming more commonly used to write code faster, developers will still need to keep careful track of the code their AI produces. Developers must carefully manage AI tool outputs to avoid change failures, which means they’ll need to be involved with testing, deployments, debugging, and maintaining standards. 

This human-AI interaction represents a familiar challenge with adopting new technologies that the portal can solve. Not only can developers better manage AI-generated code from within the portal, they can also integrate additional AI tools into their developer homepage to:

  • Request additional context about tasks and services.
  • Explore and prioritize tasks for the day.
  • Customize how information is presented in preparation for sprint reviews, planning meetings, and more.
  • Communicate changes with other team members.

This flexibility allows developers to shape their workflows however they want to, while maintaining transparency via the portal and encouraging collaboration.

Engineering managers can also configure an AI-powered dashboard in their developer homepage to prioritize critical tasks, such as addressing security issues. By contrast, the homepage could also present a single, high-priority item, keeping developers focused without distractions. Once the task is completed, the next item would appear. 

This concept centers on maintaining a distraction-free workflow while giving developers the power to adapt their experience to what helps them work most effectively — whether that means tackling tasks one at a time or planning ahead. At the same time, engineering leaders and platform engineers maintain control over the broader agenda and priorities, ensuring the team’s goals remain aligned.

How to design an effective developer homepage

As an engineering manager, it’s essential that you work closely alongside your DevEx or platform engineering team to build an effective portal. Your agenda and vision are critical throughout the process, but especially for the success of your developer homepage.

Here are two examples of developer homepages that can help you get a sense for what a minimum viable developer portal can look like:

This example shows your developers their open PRs and tasks, PRs they can review for teammates, and the tasks they recently completed, which can be helpful if they are working through a multi-step project.

The next example shows similar features alongside a service catalog and panels for similar personas on their team, which can be shared by role and customized according to dynamic permissions you set:

The examples above integrate only the bare minimum of ticketing systems and source code management tools in your organization, but already they reduce context-switching between three different tools and the need to align tasks with business priorities across different platforms. 

To keep building on the developer homepage and improve its usefulness, consider using the following process:

  1. Start with research
    1. Treat your developer homepage like a product: Using a platform-as-product approach, start with curiosity — you may think you know what problems your team is facing, but not why. Investigate common problems and form open discussion groups to generate ideas about how your portal should be structured. 
    2. Talk to your users: Treat developers as clients and ask them what they need to perform their jobs effectively. Anonymous user surveys are highly effective ways of understanding your developers’ pain points in a way that promotes honesty without finger-pointing.
    3. Use analytics to identify the most-used tools and features: Once your portal is set up, you can gather a number of metrics on tool usage, cloud configurations, FinOps, and more that weren’t possible before. Use this information to identify problems and repeat the survey process to gather insights into how these improvements can be made.
  1. Set the portal agenda
    1. Decide what you want your engineers to focus on when they start their day: This can take many forms, but you want to start small and incrementally increase the value your portal provides. For instance, you can start with one of these focus areas:
      1. Security focus: Are your teams ready and equipped to address vulnerabilities and improve their security scorecards? Or should they focus on bringing all services up to standard first?
      2. Operational focus: Should your teams prioritize reviewing deployments or fixing build failures? Maybe your teams are deploying frequently, but each change comes with a failure — is that something you can improve? 
      3. Team productivity focus: Do you know where tasks block team progress, such as pending PR reviews or unresolved incidents? Or do your teams need clarity on how to prioritize work?
  1. Consider adding more features
    1. Beyond managing tasks and PRs, think about what else might benefit your developers:
      1. Deployment insights: What’s been deployed recently by their team? Were there any issues?
      2. Service ownership: Is it clear to everyone which teams own which services?
      3. Git and production status: Are your teams aware of the status of their latest commits, builds, or production environment?
      4. Documentation: Does anyone know whether the docs are updated (or if they exist)? Offer teams quick access to internal docs and troubleshooting guides.
      5. Notifications: Aggregate alerts from key systems like CI/CD pipelines or monitoring tools.

Above all else, keep in mind two important portal-building principles:

  1. Keep it simple: The homepage should surface only the most critical information. Avoid overwhelming users with too much data. You can always build additional, persona-specific dashboards as needed.
  2. Personalize everything: Each team lead and, eventually, even developers, should be able to tailor their dashboards to fit their specific workflows and preferences.

Looking to the future

As developer portals evolve, the possibilities for improving DevEx are endless. From AI-powered recommendations to predictive analytics, the developer homepage can become a training ground for internal AI tools, allowing them to become smarter and more intuitive over time.

Improving DevEx is just the beginning. There are many additional ways to enhance developer experience with an internal developer portal that can empower engineers to do their best work.

Port is an open internal developer portal that can help you achieve your desired developer experience and improve your team’s productivity. Check out our live demo, where you can play around with our Plan My Day dashboard for yourself and see just how easy it is to get into your flow state.

Working with Backstage? We’ve got you covered with a full Port-Backstage plugin designed to make development easier. Check it out here.

{{cta_1}}

Check out Port's pre-populated demo and see what it's all about.

Check live demo

No email required

{{cta_2}}

Contact sales for a technical product walkthrough

Let’s start
{{cta_3}}

Open a free Port account. No credit card required

Let’s start
{{cta_4}}

Watch Port live coding videos - setting up an internal developer portal & platform

{{cta_5}}

Check out Port's pre-populated demo and see what it's all about.

(no email required)

Let’s start
{{cta_6}}

Contact sales for a technical walkthrough of Port

Let’s start
{{cta_7}}

Open a free Port account. No credit card required

Let’s start
{{cta_8}}

Watch Port live coding videos - setting up an internal developer portal & platform

{{cta-demo}}
{{reading-box-backstage-vs-port}}
{{cta-backstage-docs-button}}

Example JSON block

{
  "foo": "bar"
}

Order Domain

{
  "properties": {},
  "relations": {},
  "title": "Orders",
  "identifier": "Orders"
}

Cart System

{
  "properties": {},
  "relations": {
    "domain": "Orders"
  },
  "identifier": "Cart",
  "title": "Cart"
}

Products System

{
  "properties": {},
  "relations": {
    "domain": "Orders"
  },
  "identifier": "Products",
  "title": "Products"
}

Cart Resource

{
  "properties": {
    "type": "postgress"
  },
  "relations": {},
  "icon": "GPU",
  "title": "Cart SQL database",
  "identifier": "cart-sql-sb"
}

Cart API

{
 "identifier": "CartAPI",
 "title": "Cart API",
 "blueprint": "API",
 "properties": {
   "type": "Open API"
 },
 "relations": {
   "provider": "CartService"
 },
 "icon": "Link"
}

Core Kafka Library

{
  "properties": {
    "type": "library"
  },
  "relations": {
    "system": "Cart"
  },
  "title": "Core Kafka Library",
  "identifier": "CoreKafkaLibrary"
}

Core Payment Library

{
  "properties": {
    "type": "library"
  },
  "relations": {
    "system": "Cart"
  },
  "title": "Core Payment Library",
  "identifier": "CorePaymentLibrary"
}

Cart Service JSON

{
 "identifier": "CartService",
 "title": "Cart Service",
 "blueprint": "Component",
 "properties": {
   "type": "service"
 },
 "relations": {
   "system": "Cart",
   "resources": [
     "cart-sql-sb"
   ],
   "consumesApi": [],
   "components": [
     "CorePaymentLibrary",
     "CoreKafkaLibrary"
   ]
 },
 "icon": "Cloud"
}

Products Service JSON

{
  "identifier": "ProductsService",
  "title": "Products Service",
  "blueprint": "Component",
  "properties": {
    "type": "service"
  },
  "relations": {
    "system": "Products",
    "consumesApi": [
      "CartAPI"
    ],
    "components": []
  }
}

Component Blueprint

{
 "identifier": "Component",
 "title": "Component",
 "icon": "Cloud",
 "schema": {
   "properties": {
     "type": {
       "enum": [
         "service",
         "library"
       ],
       "icon": "Docs",
       "type": "string",
       "enumColors": {
         "service": "blue",
         "library": "green"
       }
     }
   },
   "required": []
 },
 "mirrorProperties": {},
 "formulaProperties": {},
 "calculationProperties": {},
 "relations": {
   "system": {
     "target": "System",
     "required": false,
     "many": false
   },
   "resources": {
     "target": "Resource",
     "required": false,
     "many": true
   },
   "consumesApi": {
     "target": "API",
     "required": false,
     "many": true
   },
   "components": {
     "target": "Component",
     "required": false,
     "many": true
   },
   "providesApi": {
     "target": "API",
     "required": false,
     "many": false
   }
 }
}

Resource Blueprint

{
 “identifier”: “Resource”,
 “title”: “Resource”,
 “icon”: “DevopsTool”,
 “schema”: {
   “properties”: {
     “type”: {
       “enum”: [
         “postgress”,
         “kafka-topic”,
         “rabbit-queue”,
         “s3-bucket”
       ],
       “icon”: “Docs”,
       “type”: “string”
     }
   },
   “required”: []
 },
 “mirrorProperties”: {},
 “formulaProperties”: {},
 “calculationProperties”: {},
 “relations”: {}
}

API Blueprint

{
 "identifier": "API",
 "title": "API",
 "icon": "Link",
 "schema": {
   "properties": {
     "type": {
       "type": "string",
       "enum": [
         "Open API",
         "grpc"
       ]
     }
   },
   "required": []
 },
 "mirrorProperties": {},
 "formulaProperties": {},
 "calculationProperties": {},
 "relations": {
   "provider": {
     "target": "Component",
     "required": true,
     "many": false
   }
 }
}

Domain Blueprint

{
 "identifier": "Domain",
 "title": "Domain",
 "icon": "Server",
 "schema": {
   "properties": {},
   "required": []
 },
 "mirrorProperties": {},
 "formulaProperties": {},
 "calculationProperties": {},
 "relations": {}
}

System Blueprint

{
 "identifier": "System",
 "title": "System",
 "icon": "DevopsTool",
 "schema": {
   "properties": {},
   "required": []
 },
 "mirrorProperties": {},
 "formulaProperties": {},
 "calculationProperties": {},
 "relations": {
   "domain": {
     "target": "Domain",
     "required": true,
     "many": false
   }
 }
}
{{tabel-1}}

Microservices SDLC

  • Scaffold a new microservice

  • Deploy (canary or blue-green)

  • Feature flagging

  • Revert

  • Lock deployments

  • Add Secret

  • Force merge pull request (skip tests on crises)

  • Add environment variable to service

  • Add IaC to the service

  • Upgrade package version

Development environments

  • Spin up a developer environment for 5 days

  • ETL mock data to environment

  • Invite developer to the environment

  • Extend TTL by 3 days

Cloud resources

  • Provision a cloud resource

  • Modify a cloud resource

  • Get permissions to access cloud resource

SRE actions

  • Update pod count

  • Update auto-scaling group

  • Execute incident response runbook automation

Data Engineering

  • Add / Remove / Update Column to table

  • Run Airflow DAG

  • Duplicate table

Backoffice

  • Change customer configuration

  • Update customer software version

  • Upgrade - Downgrade plan tier

  • Create - Delete customer

Machine learning actions

  • Train model

  • Pre-process dataset

  • Deploy

  • A/B testing traffic route

  • Revert

  • Spin up remote Jupyter notebook

{{tabel-2}}

Engineering tools

  • Observability

  • Tasks management

  • CI/CD

  • On-Call management

  • Troubleshooting tools

  • DevSecOps

  • Runbooks

Infrastructure

  • Cloud Resources

  • K8S

  • Containers & Serverless

  • IaC

  • Databases

  • Environments

  • Regions

Software and more

  • Microservices

  • Docker Images

  • Docs

  • APIs

  • 3rd parties

  • Runbooks

  • Cron jobs

Starting with Port is simple, fast and free.

Let’s start