Day job
IT Manager, then IT Director · National food brokerage
Oct 2022 – Present · Charlotte, NC · Hybrid
Hired as IT Manager in October 2022, promoted to IT Director effective May 2024. The business scaled from roughly 650 users across 40 offices to more than 1,000 employees across 80+ sites by 2026, driven by acquisitions and the State of IT plan's MSP-to-internal transition.
The title says IT Director. The day-to-day is principal systems engineer: write the scripts, draw the architecture, run the migrations, build the platforms. The engineering and automation below is what I'm most proud of. Operational and strategy responsibilities come with the title and are real, but they're not what I want to lead with.
Responsibilities
- Hybrid Azure + Microsoft 365 architecture and administration for more than 1,000 employees across 80+ sites
- ITIL service management on Freshservice: incident, problem, change, request, asset, knowledge, and service catalog
- Identity and endpoint security: Conditional Access, Defender for Endpoint/Identity/Cloud Apps, Intune, Purview, PIM
- Cisco Meraki network estate (MX/MR/MDM) and site-to-site VPN topology across all locations
- M&A IT integration for acquired companies: tenant discovery, migration, coexistence patterns, and cutover
- Enterprise AI strategy: Claude Enterprise, GitHub Copilot Pro+, and Copilot Studio agent builds
- IT cost allocation across regional P&Ls; vendor management and board-level strategy presentation
Accomplishments
Selected and rolled out Freshservice to replace a spreadsheet-based asset inventory and ad-hoc ticketing. Now: 14,168 lifetime tickets, 4,000+ assets in live inventory, 242 KB knowledge base across 25+ folders.
Read write-up →25+ structured service-catalog items with forms, approvals, and routing. HR Onboarding Teams App + Power Automate flows propagating new-hire records automatically. 1,089 onboarding and 469 offboarding tickets processed.
Read write-up →13 Cisco Meraki MX appliances right-sized per site, installed personally on a two-week road trip across every Northeast office. Replaced inherited mixed-vendor firewalls and established the site-to-site VPN mesh all downstream initiatives build on.
Read write-up →Region-by-region migration of per-office internet (individually contracted Comcast, Spectrum, AT&T, Cox) onto CommandLink managed SD-WAN. First region: 14 offices / 15 circuits, overlap-first dual-WAN cutovers sequenced to contract terms to avoid early-termination fees, static IPs feeding Conditional Access, LAN re-IP riding each cutover.
Read write-up →State of IT plan identified six-figure annual savings from MSP elimination. Board approved Fabric F64 (replaced 100+ Power BI Pro licenses) and EMS E5 (unlocked full Defender suite, Azure AD P2, PIM, and Conditional Access).
External assessments on three production properties under written authorization. 7 critical, 40 medium/low. Unauthenticated RCE demonstrated, GCP service-account RSA key exposure confirmed, supply-chain attack chain identified.
Read write-up →Reusable cross-tenant migration toolkit with PowerShell runners. 26-page operating playbook generated from a Node.js + docx document builder. 293-task work inventory across nine domains. Five completed acquisitions.
Read write-up →Projects
Internal platform tying the IT team's source systems (Freshservice, Microsoft Graph, ScreenConnect, Meraki, Bitdefender, Action1) into one Supabase Postgres store. Governed Cowork plugins for the team plus a conversational @claude ticket-note agent — whole-ticket reasoning, a Haiku→Sonnet→Opus confidence cascade, confirm-gated actions. Live in production.
Selected and rolled out Freshservice in December 2022. 14,168 lifetime tickets, 4,000+ assets, 242 KB knowledge base. Two reporting tracks: Fabric/Power BI for executives, SQLite + Claude skill for ad-hoc IT queries.
Fabric F64 for executive audiences; local SQLite cache refreshed daily exposed via a Claude skill plugin for ad-hoc IT-team queries. Same source of truth, audience-appropriate surfaces.
25+ structured service-catalog items. HR Onboarding Teams App + Power Automate flows propagating new-hire records to Freshservice, the MSP, and the CRM. Provisioning time from 2 hours to 15 minutes. 1,089 onboarding + 469 offboarding tickets.
SCIM-based integration via the Microsoft Entra SCIM connector, making Darwinbox the system of record for employee lifecycle events. Targets 1,500+ annual tickets converted from baseline work to exception-handling.
76-script library for monthly compliance reviews. Licensing, mailbox sizing, external forwarding, audit logs, MFA status, privileged roles, Conditional Access inventory, Defender reporting, Cloud App Security, Power Platform DLP, and more.
Snowflake-native Python stored procedure: 15 extension attributes, manager resolution, MERGE for incremental updates, soft-delete tracking. Runs entirely inside Snowflake via EXTERNAL ACCESS INTEGRATION: no external server, scheduler, or credential store.
CRM nightly dump into SharePoint, Power Automate CSV staging via on-premises data gateway, scheduled PowerShell applying the full-state Exchange Online replace. Designed around Power Automate's limitation that DL membership isn't natively supported.
MS Forms + Power Automate + Microsoft Graph + Twilio with Teams approval routing. Dynamic Entra ID group targeting; Twilio toll-free A2P compliant. ~$8 per blast for 1,000 employees.
PowerShell + Graph pipeline replacing manual monthly vendor reporting for 11 manufacturer vendors. Static-IP whitelisted; supports single-vendor, multi-vendor, multi-day, and backfill run modes.
52 files, 29,174 words, Python-generated. Covers AD, Group Policy, network, servers, RDS, naming standards, procedures, and troubleshooting. Regenerable from a Python script; documentation as code applied to enterprise IT infrastructure.
13 Cisco Meraki MX appliances (MX85/MX75/MX67 right-sized per site) installed personally on a two-week road trip across every Northeast office (October 2023). Replaced inherited mixed-vendor firewalls; established the site-to-site VPN mesh all downstream initiatives depend on.
Reusable cross-tenant migration toolkit with PowerShell runners for tenant discovery, mailbox + OneDrive migration, SharePoint, and device export. 26-page operating playbook generated from a Node.js + docx builder. 293-task work inventory. Five completed acquisitions.