{
  "$schema": "https://raw.githubusercontent.com/jsonresume/resume-schema/v1.0.0/schema.json",
  "basics": {
    "name": "Alexander Greimann",
    "label": "IT Systems Analyst & Project Lead · Former Director of Information Systems",
    "email": "alex@alexgreimann.com",
    "url": "https://alexgreimann.com",
    "summary": "IT leader and systems analyst with 17 years in IT (8 in healthcare, 9 in manufacturing), including five years as a hospital Director of Information Systems.  I keep ERP, Microsoft 365, and SharePoint running for a multi-site manufacturer and build the internal software that replaces its spreadsheet and email workflows; three of those apps are in production use.  I also put AI to work in production: an LLM translation feature with spending limits, and AI agents that ship scheduled releases with health checks and automatic rollback.  Open to full-time roles and consulting or contract work.",
    "location": {
      "city": "Modesto",
      "region": "CA",
      "countryCode": "US"
    },
    "profiles": [
      {
        "network": "LinkedIn",
        "username": "alexgreimann",
        "url": "https://www.linkedin.com/in/alexgreimann/"
      },
      {
        "network": "GitHub",
        "username": "alez0101",
        "url": "https://github.com/alez0101"
      }
    ]
  },
  "work": [
    {
      "name": "Pacific Southwest Container",
      "position": "Systems Analyst",
      "url": "https://alexgreimann.com",
      "startDate": "2017-01",
      "summary": "Support ERP and business-critical systems for a multi-site packaging manufacturer, and design, build, and support the internal web apps that replaced its Excel and email workflows.",
      "highlights": [
        "Lead Microsoft 365, Windows 10/11, and SharePoint upgrades and migrations across the organization",
        "Automate manual tasks to shorten cycle times",
        "Build and deploy full-stack web apps to replace Excel-based workflows",
        "Work with operations teams and vendors to improve system reliability and reporting",
        "Built a real-time raw material tracking app that replaced a shared Excel workbook, with simultaneous editing, Active Directory access control, and Server-Sent Events",
        "Built a performance review system that replaced an emailed Excel process, with role-based access, automatic notifications, and PDF export",
        "Built a self-service BI dashboard access portal that adds and removes Entra ID group members through the Microsoft Graph API"
      ]
    },
    {
      "name": "NTT Data / Doctors Hospital of Manteca",
      "position": "Director of Information Systems",
      "startDate": "2012-01",
      "endDate": "2017-01",
      "summary": "Directed IT operations, upgrades, and compliance projects for a hospital.",
      "highlights": [
        "Coordinated EHR initiatives and clinical technology rollouts",
        "Improved network reliability with minimal disruption to clinical operations",
        "Led IT compliance projects and infrastructure upgrades"
      ]
    },
    {
      "name": "Palm Beach Gardens Medical Center",
      "position": "Technical & Business Systems Analyst",
      "startDate": "2009-01",
      "endDate": "2012-01",
      "summary": "Delivered system administration, deployments, and end-user training for a medical center.",
      "highlights": [
        "Built downtime and continuity solutions for clinical areas",
        "Managed system administration and deployment projects"
      ]
    }
  ],
  "education": [
    {
      "institution": "Ball State University",
      "area": "Information Systems",
      "studyType": "Bachelor of Science",
      "startDate": "2005",
      "endDate": "2009"
    }
  ],
  "certificates": [
    {
      "name": "ITIL Certified"
    }
  ],
  "skills": [
    {
      "name": "Systems & Infrastructure",
      "keywords": [
        "ERP Systems",
        "Microsoft 365",
        "Azure AD / Entra ID",
        "SharePoint Administration",
        "Power Automate",
        "Active Directory",
        "LDAP",
        "IT Infrastructure",
        "Proxmox",
        "Docker",
        "Nginx"
      ]
    },
    {
      "name": "Full-Stack Development",
      "keywords": [
        "JavaScript",
        "React",
        "Node.js",
        "Express",
        "Python",
        "Flask",
        "HTML",
        "CSS",
        "Tailwind CSS"
      ]
    },
    {
      "name": "Databases",
      "keywords": [
        "PostgreSQL",
        "SQLite",
        "SQL Server",
        "Redis"
      ]
    },
    {
      "name": "APIs & Integration",
      "keywords": [
        "Microsoft Graph API",
        "REST APIs",
        "Server-Sent Events",
        "OAuth",
        "JWT",
        "Claude API"
      ]
    },
    {
      "name": "DevOps & Hosting",
      "keywords": [
        "Docker Compose",
        "Cloudflare Tunnel",
        "Cloudflare Workers",
        "Nginx Proxy Manager",
        "Self-hosted Infrastructure",
        "systemd timers",
        "Grafana"
      ]
    },
    {
      "name": "Leadership",
      "keywords": [
        "IT department leadership",
        "Project Management",
        "Systems Analysis",
        "Process Improvement",
        "Team Leadership",
        "Cross-functional Collaboration"
      ]
    },
    {
      "name": "AI & Automation",
      "keywords": [
        "Claude Code",
        "Claude API",
        "AI agent automation",
        "Playwright testing"
      ]
    },
    {
      "name": "Data & Mapping",
      "keywords": [
        "ArcGIS REST",
        "OpenStreetMap",
        "SVG maps"
      ]
    }
  ],
  "projects": [
    {
      "name": "OmnySSH: PuTTY-Style Copy and Paste",
      "description": "Open-source contribution to OmnySSH, a Rust SSH client with 1,200+ GitHub stars: PuTTY-style copy and paste for the desktop terminal with unit and end-to-end tests, sent upstream as pull request #162.",
      "url": "https://alexgreimann.com/projects/omnyssh-copy-paste.html",
      "startDate": "2026-10",
      "keywords": [
        "Rust",
        "Tauri",
        "Svelte",
        "TypeScript",
        "xterm.js",
        "Vitest",
        "Playwright",
        "Open source"
      ]
    },
    {
      "name": "Treadmill Console: Intervals and Video Tours",
      "description": "Ported the open-source STRIDE treadmill console app to Android 7, added interval programs and video walking tours whose incline follows the real route, with a weekly AI agent that builds new tours from Creative Commons footage.  Sent three fixes upstream as pull requests.",
      "url": "https://alexgreimann.com/projects/treadmill-console.html",
      "startDate": "2026-10",
      "keywords": [
        "Kotlin",
        "Android",
        "USB HID",
        "JavaScript",
        "Python",
        "OpenStreetMap",
        "ffmpeg",
        "Claude Code",
        "Open source"
      ]
    },
    {
      "name": "FireTime Tablet Dashboard",
      "description": "Turned an old Amazon Fire tablet into a front-room clock and weather display.  One ES5 HTML file for old tablet browsers, Open-Meteo weather with no API key, a stale-data warning, and a nightly self-reload.",
      "url": "https://alexgreimann.com/projects/firetime.html",
      "startDate": "2026-09",
      "keywords": [
        "JavaScript (ES5)",
        "HTML",
        "CSS",
        "SVG",
        "Open-Meteo",
        "Nginx",
        "Docker",
        "Cloudflare Tunnel"
      ]
    },
    {
      "name": "Scouting for Food Drive Coordinator",
      "description": "Mobile web app that replaced our Cub Scout pack's paper route binder for its food drive.  Families scan a QR code for a map of their route and check off houses, even offline.  Leaders get a live dashboard, messaging, a route editor, and printable route sheets.  Contact info is deleted automatically after the drive.  128 automated Playwright tests.",
      "url": "https://alexgreimann.com/projects/scouting-for-food.html",
      "startDate": "2026-10",
      "keywords": [
        "Vanilla JS",
        "SVG",
        "Service Worker",
        "Node.js",
        "Python",
        "ArcGIS REST",
        "OpenStreetMap",
        "Playwright",
        "Docker",
        "Cloudflare Tunnel"
      ]
    },
    {
      "name": "Scouting 51 Website & Volunteer Console",
      "description": "One site for a Cub Scout pack, Scouts BSA troop, and Venturing crew that volunteers can keep up to date.  Admin console with individual accounts and roles.  Spanish, Punjabi, and Hmong translation using Claude, saved so each sentence is translated once.",
      "url": "https://alexgreimann.com/projects/scouting-51-website.html",
      "startDate": "2026-08",
      "keywords": [
        "HTML/CSS/JS",
        "Nginx",
        "Node.js",
        "Claude API",
        "Internationalization",
        "scrypt",
        "Playwright",
        "Docker",
        "Cloudflare Tunnel"
      ]
    },
    {
      "name": "Self-Healing Homelab with AI Agents",
      "description": "Small always-on server that runs scheduled AI agent jobs (Claude Code) and maintenance for my homelab.  Recovers services after power outages, restarts things that stop, runs weekly releases with automatic rollback, and sends Grafana alerts to Telegram.",
      "url": "https://alexgreimann.com/projects/homelab-ai-operations.html",
      "startDate": "2026",
      "keywords": [
        "Claude Code",
        "Linux",
        "systemd",
        "Bash",
        "Python",
        "Docker",
        "Grafana"
      ]
    },
    {
      "name": "Raw Material Locations Tracker",
      "description": "Real-time web app that replaced a shared Excel workbook for tracking raw material across five plants.  Several people can view and edit at once, changes show up right away through Server-Sent Events, and Active Directory controls who can edit.",
      "url": "https://alexgreimann.com/projects/roll-locations.html",
      "startDate": "2026-03",
      "keywords": [
        "Node.js",
        "Express",
        "SQLite",
        "SQL Server",
        "AG Grid",
        "Server-Sent Events",
        "Active Directory",
        "Nginx Proxy Manager"
      ]
    },
    {
      "name": "Performance Review System",
      "description": "Web app that replaced an Excel-based annual review process.  Employees do their self-assessment, supervisors review it, and HR tracks progress.  Role-based access, automatic emails, revision requests, and PDF export.",
      "url": "https://alexgreimann.com/projects/performance-review-system.html",
      "startDate": "2025-12",
      "keywords": [
        "React 18",
        "Node.js",
        "Express",
        "PostgreSQL",
        "Docker",
        "Active Directory",
        "PDFKit"
      ]
    },
    {
      "name": "Self-Service Access Request System",
      "description": "Self-service portal where employees request access to BI dashboards and the request goes to the right approver.  Approvals and removals update Entra ID groups through the Microsoft Graph API.",
      "url": "https://alexgreimann.com/projects/nerve-center-access.html",
      "startDate": "2026-01",
      "keywords": [
        "React",
        "Node.js",
        "Express",
        "PostgreSQL",
        "Docker",
        "Microsoft Graph API",
        "Active Directory"
      ]
    },
    {
      "name": "Collaborative Music Queue",
      "description": "Self-hosted music queue for group listening with a 31,000-song library, voting, ratings, a public stats page, and an Auto-DJ that picks similar-sounding songs when the queue runs out.",
      "url": "https://alexgreimann.com/projects/music-queue.html",
      "keywords": [
        "React",
        "Flask",
        "PostgreSQL",
        "Redis",
        "Docker",
        "Python",
        "Cloudflare Tunnel"
      ]
    },
    {
      "name": "Cal.com Scheduling Platform",
      "description": "Self-hosted Cal.com connected to both Google Calendar and Office 365, so one booking link checks both calendars.  Replaces a paid service like Calendly.",
      "url": "https://alexgreimann.com/projects/calcom-scheduling.html",
      "startDate": "2026-03",
      "keywords": [
        "Docker",
        "PostgreSQL",
        "Cloudflare Tunnel",
        "Cal.com",
        "Microsoft Graph API"
      ]
    },
    {
      "name": "Brush Quest Brushing Game",
      "description": "Camera-powered tooth brushing game for kids (originally Space Blasters).  Motion tracking turns the toothbrush into the controller.  29 themes and a 24-hour leaderboard in Cloudflare KV.  A scheduled AI agent (Claude Code) adds a new theme every week, and each release rolls back on its own if the health check fails.",
      "url": "https://alexgreimann.com/projects/space-blasters.html",
      "startDate": "2026-03",
      "keywords": [
        "Automated releases",
        "Canvas",
        "Claude Code",
        "Cloudflare KV",
        "Cloudflare Workers",
        "getUserMedia API",
        "React",
        "Vite"
      ]
    },
    {
      "name": "Porchfest Day Planner",
      "description": "Self-hosted web app (PWA) for friends at Modesto Porchfest 2026.  Personal day plan with overlap warnings and a planner, live friend check-ins, comments on acts, push reminders 10 minutes before each act, and a nearest-restroom finder.",
      "url": "https://alexgreimann.com/projects/porchfest.html",
      "startDate": "2026-05",
      "keywords": [
        "Vanilla JS",
        "Progressive Web App",
        "Service Worker",
        "Web Push",
        "VAPID",
        "Node.js",
        "Express",
        "SQLite",
        "Docker Compose",
        "Cloudflare Tunnel",
        "Geolocation API"
      ]
    }
  ],
  "meta": {
    "canonical": "https://alexgreimann.com/resume.json",
    "version": "v1.0.0",
    "lastModified": "2026-10-29"
  }
}
