// Grouped capability matrix - NO percentage bars / ratings / logo walls. // Driven entirely by this file; the Skills section renders whatever is here. export type SkillGroup = { title: string; // Short framing line for the group. blurb: string; /** Proof-point lines rendered between the blurb and the chips - fills the * tall tiles (hero / full) so the tile reads as substance, not whitespace. */ points?: string[]; items: string[]; /** Bento tile size - "hero" = 2×2 flagship · "wide" = 2×1 · "full" = whole row · default 1×1. */ span?: "hero" | "wide" | "full"; /** Accent flavour - "magenta" marks security-flavoured tiles. */ flavor?: "magenta"; /** Eyebrow label rendered on the hero tile. */ flag?: string; }; export const skills: SkillGroup[] = [ { title: "Edge AI & GPU", span: "hero", flag: "FLAGSHIP", blurb: "Serving vision and language models on real hardware at the edge.", points: [ "Fail-closed computer vision on single-node OpenShift - probes that catch a silently dead model, not just a dead pod.", "One GPU, two workloads - a single card time-sliced between LLM serving and video transcode instead of reserving separate hardware.", "Vendor video-analytics stacks re-platformed as first-class Kubernetes workloads, not appliances.", "Local models behind an OpenAI-compatible gateway - swap the backend, keep every client.", ], items: [ "NVIDIA GPU Operator", "GPU passthrough (ESXi, as code)", "GPU readiness probing & watchdogs", "Pod lifecycle management", "YOLO / computer-vision inference", "Local LLM serving (llama.cpp)", "Edge Kubernetes", ], }, { title: "Platform & Virtualization", span: "wide", blurb: "Kubernetes platforms designed to be reasoned about and recovered.", items: [ "Kubernetes", "OpenShift", "Talos Linux", "vSphere / VMware ESXi", "Proxmox", "containerd", "Argo CD / GitOps", "Helm & Kustomize", ], }, { title: "Automation & IaC", blurb: "Single-touch deployments - removing the manual step, not documenting it.", items: [ "Ansible / AWX", "PowerShell (PowerCLI)", "Python", "Bash / Shell", "Terraform", "Image pre-pull & air-gapped registries (ACR / NVCR)", "Secrets management", ], }, { title: "Networking & Security", flavor: "magenta", blurb: "Default-deny, segmentation, and a small attack surface.", items: [ "SD-WAN", "802.1Q VLAN segmentation", "ACLs / IPSec / RADIUS", "Aruba ClearPass", "Palo Alto / FortiGate", "Firewall policy governance", "RBAC · 2FA / SSO", ], }, { title: "Cloud & Identity", blurb: "Hybrid estates across the major clouds, with identity done properly.", items: [ "Azure", "Entra ID", "Intune", "AWS", "GCP", "Microsoft 365", "Azure Blob / S3", ], }, { title: "Observability & Ops", span: "full", blurb: "Knowing the system is healthy - and the GPUs with it.", points: [ "Fleet metrics by remote-write - every cluster ships to one Prometheus, GPUs included (DCGM / Intel Xe).", "Alerts that reach a phone and mean it - tuned until silence means healthy, not unmonitored.", "A backup is a rumour until a restore drill proves it - drills are scheduled, not aspirational.", ], items: [ "Prometheus", "Grafana", "DCGM Exporter", "PRTG / LibreNMS", "AWX job reporting", "Veeam backup", "ITIL processes", ], }, ];