PROJECT 01 / PRODUCTION / HEALTHCARE NETWORKING
Better tools.
Better cutovers.
Four workflows. One application. A Python toolkit built for the realities of overnight hospital network refreshes.
Configs & port maps
Baseline configuration
MAC & CDP snapshots
Live port status
Four workflows accessed through one Python GUI. The diagram describes the toolkit’s process.
01 / THE PROBLEM
A change window has a deadline.
Hospital network lifecycle refreshes happen under time pressure, often overnight and with a hard rollback deadline. Before this toolkit, validation meant connecting to switches individually, running show commands, and comparing the results against a pre-cutover snapshot.
Across a stack of switches, that is a lot of manual cross-referencing during the part of the job that needs the most attention. I built the toolkit to turn recurring migration tasks into consistent, repeatable workflows.
The refresh work behind the toolkit
As a Senior Associate Technical Consultant at AHEAD, I lead cutovers and troubleshoot healthcare network lifecycle refreshes. The broader engagement covers core, out-of-band (OOB), top-of-rack (ToR), and IDF switches across multiple hospitals.
I also serve as a Tier 2/3 escalation point for IDF teams, helping multiple teams troubleshoot issues and follow the engineering standards established for the engagement. The toolkit supports the Catalyst 9300 migration workflows within that broader work.
02 / WHAT I BUILT
Four modules. One entry point.
Config capture & port mapping
Netmiko connects to Catalyst 9300 switches over SSH to retrieve live configurations, with the option to load saved configurations from disk. The toolkit generates an Excel port map and a stack summary covering hostnames, serial numbers, switch and software versions, and member MAC addresses.
Baseline configuration generation
Captured configurations become inputs for site-standard staging output: domain names, NTP servers, syslog destinations, management IP addresses, and other parameters that need to match the existing environment.
MAC & CDP comparison
Before a cutover, I capture MAC address tables and CDP neighbor relationships. After the new switches are online, the toolkit compares fresh captures against that baseline and flags MACs or neighbors that have not returned. That gives engineers a focused list to investigate.
Live port monitoring
During the change window, the monitor brings port status, VLAN assignments, and the return of previously active MAC addresses into one view. It replaces repeated checks across individual switch CLIs.
03 / ENGINEERING DECISIONS
Built for the engineer on site.
A single Python GUI exposes all four modules. The engineer running a hospital cutover should be able to reach the right workflow without remembering script names or command-line arguments.
Netmiko handles the SSH and device interaction layer for Cisco IOS-XE. Parsing accounts for differences in whitespace and field alignment across command output, while openpyxl produces port maps and summaries that other engineers can use directly.
Device credentials are provided at runtime through the GUI rather than hard-coded into scripts or stored in flat files. The source repository is private, and the toolkit is maintained as the engagement continues.
04 / THE OUTCOME
More time for the cutover itself.
The toolkit supports an ongoing healthcare engagement spanning 10+ hospital locations and 75+ switch migrations. It saves more than three hours per cutover, and its generated port maps and stack summaries feed the engagement’s documentation workflow.
Fewer manual checks during the change window, with a structured record of the site before and after the refresh.
05 / WHAT STAYED WITH ME
Usability is part of reliability.
Building something other engineers depend on changed how I think about error handling, usability, and completeness. A tool used during a production change window needs to work for the whole team, not just its author.
KEEP EXPLORING
More connections.
More possibilities.
Have a question about the project?
Let’s talk ↗