🗄️ WIP

Asset Dashboard

The Problem

Asset inventory lived in disconnected spreadsheets across multiple teams. No reliable source of truth for hardware lifecycle, software assignments, or device location - common in healthcare IT environments that grew organically.

What Was Built

A queryable platform that aggregates asset data from AD, MDM, and manual inputs into a single normalized store. Lightweight web interface for search and reporting, with PowerShell ingestion pipelines running on a schedule.

Key Engineering Decisions

SQL backend with normalized schema - devices, assignments, locations, lifecycle stages PowerShell ingestion modules pull from AD, SCCM, and REST endpoints on schedule Static frontend queries a read-only API layer - no direct DB exposure
Python SQL PowerShell REST API
Active

GoTo Voice & Device Automation Platform

The Problem

Managing and maintaining GoTo voice devices across multiple locations required repetitive manual updates to paging configurations, emergency settings, callback routing, and device compliance. Device inconsistencies between sites created operational issues including failed paging behavior, incorrect support routing, and increased troubleshooting overhead for the helpdesk team.

What Was Built

Developed a centralized automation platform integrating with the GoTo Admin and Device APIs to automatically audit, standardize, and update device configurations across locations. The tooling dynamically mapped devices to site-specific extensions and paging profiles, validated compliance requirements, and pushed configuration updates to ensure devices remained operationally aligned with organizational standards.

Impact

Automated large-scale configuration management for GoTo voice devices across multiple facilities Standardized paging profiles and emergency callback routing based on site extension mappings Reduced manual device remediation and configuration drift through automated compliance checks Improved operational reliability for helpdesk paging, support escalation, and internal communication workflows Built reusable API-driven tooling capable of performing ongoing device audits and future configuration rollouts
Python REST API Automation GoTo API Infrastructure Tooling
🐳 Running

Docker + Traefik Homelab Stack

Architecture

Production-like container platform running on a Proxmox VM. Traefik handles TLS termination and routing via Docker label discovery. Docker Compose manages service definitions. Watchtower handles image updates with Slack notifications.

Running Services

Traefik v3 - reverse proxy with automatic Let's Encrypt TLS via DNS challenge Grafana + Prometheus + Loki - full observability stack with alerting rules Portainer - container management UI with RBAC Internal tooling: asset API, automation dashboards, test deployments
Docker Traefik Proxmox Linux TLS
📡 Active

PRTG Monitoring Infrastructure

The Problem

Infrastructure monitoring in healthcare IT is often reactive - nobody knows a server is degraded until a clinician calls in. Building a proactive monitoring layer with meaningful alerting means catching problems before they become incidents.

What Was Built

PRTG deployment with 200+ sensors covering servers, network devices, UPS systems, and services across multiple sites Custom EXE/Script sensors in PowerShell - monitoring application health endpoints, AD replication status, and backup job outcomes that PRTG's built-in sensors don't cover Tiered alert escalation: email on warning, SMS + on-call page on critical, with maintenance windows to suppress noise during patching PRTG Maps for NOC-style dashboards showing site health at a glance for clinical leadership visibility PRTG REST API integration with PowerShell reporting scripts - weekly sensor health summaries delivered to Teams channel
PRTG PowerShell SNMP WMI REST API
☁️ WIP

Azure Cloud Engineering Lab

Focus

Hands-on Azure engineering - moving beyond portal clicks into real IaC, hybrid identity management with Entra ID, and production-pattern infrastructure deployments. Building toward AZ-104 and beyond.

Current Work

Bicep modules for repeatable resource group and VNet deployments Hybrid identity: on-prem AD sync to Entra ID via Azure AD Connect Azure Static Web Apps deployment for this portfolio - production reference Policy-as-code experiments: Azure Policy + tagging enforcement
Azure Bicep Entra ID Azure CLI
🤖 Lab

RAG Pipeline - IT Ops Knowledge Base

The Idea

Internal IT operations accumulate enormous amounts of undiscoverable knowledge - runbooks, incident notes, config documentation, old tickets. A retrieval-augmented generation pipeline makes this queryable in natural language.

Architecture

Document ingestion pipeline - Markdown, Word docs, PDF runbooks → chunked + embedded Local vector store (ChromaDB) running in Docker on the homelab Local LLM serving via Ollama - no data leaving the environment Simple query API with Python FastAPI wrapper - Teams bot integration planned
Python RAG Docker Ollama ChromaDB