Project

Information architecture, evolved

Information architecture is rarely a single decision. This project spans multiple years and four iterations of the navigation in the UI — each one balancing user needs, organizational constraints, and a long-term vision for a product that could tell its own technical story through structure alone.

The work required more than reorganizing navigation. It meant advocating for users across engineering, product, and design teams; building a shared vocabulary for a complex DNS platform; and maintaining a north star ambitious enough to be aspirational but grounded enough to drive real, incremental progress. The result became an internal reference point for how the product works — a structure clear enough that it onboarded employees as effectively as it oriented users.

This is what information architecture can do at its best: make a complex system feel genuinely knowable.

New Modified Relocated Removed
v1 The original architecture

The product's navigation had a hidden logic. It made perfect sense internally but was invisible to users. Features were organized around development team ownership and API structure, not around what users were actually trying to accomplish. The result: similar functionality scattered across disconnected areas, inconsistent terminology for the same concepts, and a navigation model that quietly undermined user confidence at every turn.

Fixing it wasn't just an IA problem. It required building a shared understanding of users across engineering, product, and design — and shifting the way the organization thought about how features should be grouped, named, and presented. That meant research, facilitation, and a lot of patient advocacy for the user's perspective.

DNS
Zones
Zone settings
Records
Zone transfers
Nameservers
URL forwards
Versions
Views
ACLs
Redirects
DNS Insights
Reports
Activity log
Scheduled reports
Data sets
Pulsar
Analysis
Decisions
RUM data
Resources
Monitors
Monitors
Monitor details
Uptime
History
Notifications
Integrations
Data sources
Feeds
Additional integrations
Account
Admin account
Users & teams
Users
Teams
API keys
Activity log
Notifier lists
Settings
Security
Account login
Global IP allow lists
Usage
Plan usage & limits
Usage alerts
Payment methods
Invoices
Your profile
Logout
v2 Meaningful progress, minimal disruption

The first iteration was intentionally bounded. Wholesale reorganization risked disorienting existing users, so the scope was limited to changes that improved the structure without forcing a re-onboarding experience — enough to demonstrate progress, small enough to earn stakeholder confidence for future iterations.

Within those constraints, the changes followed a clear principle: group features by what users are trying to do, not by where they happened to live in the system. A new Observability section brought together analytics and reporting capabilities that had been split across unrelated areas. The Monitors section was expanded to consolidate third-party integrations that serve the same role in a shared workflow. And a restructured Pulsar section used new feature additions as an opportunity to introduce a more coherent sub-navigation.

DNS
Zones
Zone details
Records
Nameservers
XFR
Settings
Versions
Activity
Views
ACLs
Networks
Redirects
Source & target URLs
SSL/TLS certificates
Monitors
Monitors
Monitor details
Uptime
History
Notifications
Integrations
Data sources
Data feeds
Observability
Data sets
Scheduled reports
Activity log
DNS Insights
Pulsar
RUM metrics
Routing decisions
Measurement volume
Job configuration
Route maps
Alerts
Alerts
Notifier lists
Account
Identity & access
Users
Teams
API keys
Security
Two-factor authentication
Global IP allow lists
Usage
Activity log
Profile
Preferences
Light/dark mode
v3 Details that signal enterprise quality

Enterprise users bring high expectations for precision, for consistency, and for a product that communicates competence through its structure. The third iteration focused on the details that shape that perception: sub-page organization that accurately reflects different data types and configurations, cleaner separation of distinct entity types, and terminology that is consistent and confident across sections.

These weren't dramatic structural changes. But they represent the beginning of a deliberate design voice — one where the architecture itself signals that this is a serious tool for serious use cases.

DNS
Zones
Zone details
Records
Networks
XFR
Settings
Queries
Activity
Versions
Networks
DNS networks
Backup networks
Redirects
Source & target URLs
SSL/TLS certificates
Monitors
Uptime monitors
Monitor job details
Status
Configuration
Feeds
Notifications
Event log
Integrations
Connections
Credentials
Feeds (connection)
Feeds (all)
Observability
Basic DNS data
Queries
Responses
DNS Insights
Scheduled reports
Report details
Data set
Schedule
Notifications
Event log
Pulsar
RUM metrics
Routing decisions
Measurement volume
Job configuration
Route maps
Alerts
Alerts
Notifier lists
Account
Identity & access
Users
Teams
API keys
Security
Two-factor authentication
Global IP allow lists
Usage
Activity log
Profile
Preferences
Light/dark mode
v4 A north star

The fourth iteration commits to a structure built entirely around the DNS configuration process itself. Four categories, each representing a distinct phase of work: establishing a DNS foundation, automating data collection from DNS resources, configuring traffic steering to optimize availability and performance, and analyzing the results. Users can move left to right through a workflow that mirrors how the work actually unfolds.

This version has never been implemented — and may never be. But it represents something important: an architecture where the technical story told through the UI is fully comprehensible. Each layer builds on the last, and the product stops feeling like a system to navigate and starts feeling like a process to follow.

DNS
Zones
Zone details
Records
Networks
XFR
Settings
Queries
Activity
Networks
DNS networks
Backup networks
Data collection
Uptime monitors
Monitor job details
Status
Configuration
Feeds
Notifications
Event log
RUM monitors
RUM job details
Status
Configuration
Feeds
Notifications
Event log
Integrations
Connections
Credentials
Feeds (connection)
Feeds (all)
Traffic steering
Filter chains
Configurations
Templates
Redirects
Source & target URLs
SSL/TLS certificates
Route maps
Observability
Basic DNS data
Queries
Responses
Real user monitoring (RUM) data
Performance and availability
Routing decisions
Measurement volume
DNS Insights
Connections
Queries and responses
Network behavior
Scheduled reports
Report details
Data set
Schedule
Notifications
Event log
Alerts
Alerts
Alert details
Configuration
Event log
Alert groups
Groups
Recipients
Integrations
Connection details
Credentials
Account
Identity & access
Users
Teams
API keys
Security
Two-factor authentication
Global IP allow lists
Manage plan
Usage and limits
Billing
Upgrade
Activity log
Profile
Preferences
Light/dark mode

This project reinforced something I now treat as a foundation for any IA engagement: establish guiding principles early, even when full commitment isn't on the table yet. A clear north star — even an aspirational one — gives every incremental decision something to orient toward.

Working in a highly technical domain also sharpened how I approach credibility. When you're not a developer or a longtime domain expert, you earn trust by listening carefully, learning the language, and finding shared goals before proposing change. But credibility isn't the same as deference. Advocating for users sometimes means challenging assumptions that have calcified over years — and knowing the difference between when to stand firm and when to adapt is, ultimately, the work.

Interested in working together? Drop a line.

Next
Next

Model: Mapping content roles across the PDLC