Network engineer validating next-generation transport platforms — and building the automation to do it faster.
Jump to a section
AI-generated (DALL·E) via Cbrasil0, CC BY-SA 4.0
The motto I go by
Validate before anything else.
When I'm troubleshooting something with a lot of unknowns, I run the same three checks before I trust that it's actually fixed — assuming it's already handled is how it fails again once it's in production.
Confirm what was actually applied to the device — not what was intended, what's actually sitting there.
Watch what's actually happening on the wire before guessing why something's behaving the way it is.
If something still doesn't add up, cross-check it against the spec before assuming it's the platform's fault, or yours.
I don't use AI tools as a novelty — I use different ones for different problems, and I check what they give me before I trust it.
Day to day, I use GitHub Copilot to build automation scripts for my test cases — turning repetitive validation steps into something that runs itself, so my time goes toward the tests that actually need judgment.
As part of the 3931-Gen2 project, I'm building an agent — starting from Copilot — trained on SAOS 6.x and 10.x documentation. The goal: a growing reference library that surfaces the right command for the right platform, and eventually helps drive test execution itself.
Scripts that Copilot helps me write get a second pass: I hand them to Claude to review the logic, the edge cases and the failure handling, then test the result against a real run before I rely on it. Two different tools catch different mistakes, and the final call stays mine.
I edit this site in VS Code and push changes to GitHub from the editor. Nothing goes live on its own: every deploy waits at a protected production gate, and only my approval lets it touch S3 and CloudFront.
I defined the structure, the security requirements, and every fact on this page — then used Claude to build and iterate on it, the same way I'd use Copilot for a scripting problem: to move faster on execution, not to hand over the decisions. Verifying the output rather than trusting it blindly is part of how I work with any of these tools.
Testing and validation work on Ciena's platforms — one still in motion, two closed out.
This is a live, multi-phase project I expect to be working through most of next year: certifying the newest cell-backhaul platform, Ciena 3931-Gen2, to replace the older Gen1 devices — including the move from SNMP to NETCONF for configuration and management.
Rather than just running the migration, I'm using it as the proving ground for reducing test cycle time going forward: building out test automation and an AI-assisted documentation agent alongside the certification work itself, so the tooling gets better as the project does.
Led the initiative to succeed legacy 39xx platforms with the 3928, authoring the deployment guidelines and configuration migration procedures used for both lab and field adoption.
D2EMUX was my introduction to Ciena's SAOS 10.x architecture — a real departure from the SAOS 6.x devices I'd worked on before. I tested and certified gNMI telemetry sensors, configuration RPCs, end-to-end traffic passing, and the migration to Ciena's Trusted Partner Licensing Model (TPLM).
The TPLM piece is the part I'd point to first: previously, a device had to check back in with a license server roughly every week to stay licensed. TPLM replaces that with a license that's verified once and then persists permanently — surviving even a factory reset. Certifying it meant proving that held up under the edge cases that actually matter in production, not just the happy path.
I also owned the documentation for it end to end: an Integration Guide for external integrators, covering everything that changed from the previous phase, and a separate production Deployment Guide — two different audiences, written from the same validation work.
This site is end-to-end my own infrastructure, not just a repo of HTML. The domain is registered and resolved through Route 53; a public ACM certificate, validated by DNS, gives it TLS; CloudFront terminates that TLS and serves the site from a private S3 bucket that isn't reachable directly. Nothing here is a tutorial copy-paste — the DNS validation records, the origin access policy limiting S3 to CloudFront only, and the certificate region requirement (ACM certs for CloudFront have to live in us-east-1 regardless of where everything else sits) all came from working through the actual failure modes.
Security testing came before making any of this public: a full-history gitleaks scan of the repo to make sure nothing had ever leaked (it hadn't), GitHub's own secret scanning and push protection turned on going forward, and an S3 bucket policy scoped so only the CloudFront distribution's origin access control can read it — the bucket itself has no public access at all.
On top of that sits the deploy pipeline: a push to main runs a GitHub Actions workflow that federates into AWS via OIDC and syncs to S3 behind CloudFront — no long-lived AWS access keys stored anywhere. I treated making the repo public as a reason to actually audit that pipeline rather than just hope it held up, rebuilding the AWS side around scoped, short-lived trust instead of static credentials.
The OIDC trust policy took a few rounds to get right — GitHub's token subject format doesn't just encode the repo and branch, it also changes shape entirely once a job references a GitHub Environment. I traced both mismatches through the actual CloudTrail AssumeRoleWithWebIdentity events rather than guessing, then split the workflow into an ungated dry-run preview and a real deploy job gated behind a production Environment that requires a manual approval click before anything touches S3 or CloudFront.
Along the way I caught a quieter problem: GitHub Environments let repo admins bypass their own required-reviewer rule by default, which would have made the new approval gate a no-op for the only account that ever triggers a deploy. Turning that off, pinning every third-party Action to a commit SHA, and tightening branch protection were the guardrails that actually made the public repo, and the pipeline behind it, something I'd stand behind.
Different vendors, different eras, different ways of thinking about the same underlying network.
Beyond Ciena, I've worked hands-on with Juniper and Cisco — and within Ciena alone, SAOS 6.x and SAOS 10.x differ enough in CLI structure and configuration architecture that they function almost like separate skill sets. Rather than specializing narrowly in one vendor's syntax, I've had to repeatedly re-orient to new command paradigms and pick them up quickly. That matters more as networks get more heterogeneous, not less.
Less a timeline, more a direction — each stage building the judgment for the next.
Customer-facing telecom support — resolving billing, technical, and service issues directly with customers, including complex corporate escalations. It's where I learned to translate a technical problem into terms the person on the other end actually needed.
Network operations and carrier troubleshooting — working in high-volume, 24x7 environments, diagnosing cell backhaul and IP network issues for major carriers, and building the habit of root-cause analysis rather than quick patches.
Systems validation engineering on the vendor side — certifying new Ciena platforms before they reach production, owning the documentation that follows them into the field, and building the automation and AI tooling to make the next certification faster than the last.
Platforms & protocols
Automation & tooling
Vendor CLIs
Everything above is where I am right now. This is what I'm building toward next.
Currently working toward CompTIA Security+ — the foundation for a cybersecurity track I'm building alongside network engineering.
Expanding into formal AI certifications — turning the hands-on Copilot and Claude work above into credentialed depth.
Taking the next step up in networking certifications — leveling up beyond where things stand now.
Open to hearing about network engineering opportunities, or just expanding my professional network.