{"document":{"schemaVersion":1,"globals":{"name":"Miguel Rodriguez","origin":"https://miguel.systems","email":"HireMe@miguel.systems","copyright":"Miguel Rodriguez","navigation":[{"label":"Home","href":"/"},{"label":"About","href":"/about"},{"label":"Work","href":"/work"},{"label":"Contact","href":"/contact"}],"footer":[{"label":"Résumé","href":"/resume"},{"label":"Browser Lab","href":"https://lab.miguel.systems/"},{"label":"GitHub","href":"https://github.com/MRodriguez2010"},{"label":"LinkedIn","href":"https://www.linkedin.com/in/miguel-rodriguez-3573b485/"},{"label":"Privacy","href":"/privacy"}],"resumeLinks":[{"label":"View résumé","href":"/resume"}],"theme":{"accent":"#80b8ff","background":"#0f1115","foreground":"#fafafb","font":"\"Geist\", Arial, sans-serif"},"analytics":{"ga4MeasurementId":"","enabled":false}},"pages":[{"id":"home","path":"/","title":"Miguel Rodriguez — Data, AI & Design","description":"Complexity, made clear. Miguel Rodriguez connects data, AI, design and human direction to build useful tools and clearer decisions.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/","component":"portfolio-page","settings":{"path":"/"}},"displayName":"/","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"websites","path":"/websites","title":"Websites | Miguel Rodriguez","description":"Explore business websites and brand experiences by Miguel Rodriguez: U1 Mechanical, Ultimate Lawncare, Seren’s Fades, Templo de Cristo, and Dino’s Subs.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/websites","component":"portfolio-page","settings":{"path":"/websites"}},"displayName":"/websites","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"systems","path":"/systems","title":"Systems | Miguel Rodriguez","description":"Explore Miguel Rodriguez’s automation and AI systems: local orchestration, retained context, research workflows, and agent reliability.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/systems","component":"portfolio-page","settings":{"path":"/systems"}},"displayName":"/systems","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"solutions","path":"/solutions","title":"Solutions | Miguel Rodriguez","description":"Analytics, automation, websites, and visual design shaped around the people using them. Explore how Miguel Rodriguez can help with your next project.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/solutions","component":"portfolio-page","settings":{"path":"/solutions"}},"displayName":"/solutions","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"about","path":"/about","title":"About Miguel | Miguel Rodriguez","description":"Meet Miguel Rodriguez, a Dallas–Fort Worth analyst, automation builder, and designer connecting operations, evidence, software, and useful experiences.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/about","component":"portfolio-page","settings":{"path":"/about"}},"displayName":"/about","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"contact","path":"/contact","title":"Contact Miguel | Miguel Rodriguez","description":"Employ Miguel Rodriguez or discuss a freelance analytics, automation, website, or design project.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/contact","component":"portfolio-page","settings":{"path":"/contact"}},"displayName":"/contact","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work","path":"/work","title":"All work | Miguel Rodriguez","description":"Explore Miguel Rodriguez’s websites, analytics, AI systems, desktop tools, and creative experiments. Search the complete project library.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work","component":"portfolio-page","settings":{"path":"/work"}},"displayName":"/work","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"gallery","path":"/gallery","title":"Gallery | Miguel Rodriguez","description":"Interactive explorations of Miguel’s media, product, web, identity and creative work.","socialImage":"https://miguel.systems/brand/gallery-share.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/gallery","component":"portfolio-page","settings":{"path":"/gallery"}},"displayName":"/gallery","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"resume","path":"/resume","title":"Résumé | Miguel Rodriguez","description":"Explore Miguel Rodriguez’s experience in analytics, automation, AI orchestration, and current project work. Choose a résumé for your role and download the PDF.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/resume","component":"portfolio-page","settings":{"path":"/resume"}},"displayName":"/resume","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"lab-faultline","path":"/lab/faultline","title":"FAULTLINE — Interactive systems lab | Miguel Rodriguez","description":"Replay real local failures, compare runbook and local model repairs, and inspect independently verified PostgreSQL records.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/lab/faultline","component":"portfolio-page","settings":{"path":"/lab/faultline"}},"displayName":"/lab/faultline","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"lab-stories","path":"/lab/stories","title":"Interactive project stories | Miguel Rodriguez","description":"Follow an invoice, compare employee research ratings, and trace a claim through an AI workflow. Interactive demonstrations use fictional data.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/lab/stories","component":"portfolio-page","settings":{"path":"/lab/stories"}},"displayName":"/lab/stories","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-u1-mechanical","path":"/work/u1-mechanical","title":"U1 Mechanical | Miguel Rodriguez","description":"From a clearer customer journey to a connected website, owner dashboard, and field app. A story of research, implementation, failed attempts, and a verified hosted owner-review rollout.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"U1 Mechanical","component":"portfolio-page","settings":{"path":"/work/u1-mechanical"}},"displayName":"U1 Mechanical","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-faultline","path":"/work/faultline","title":"FAULTLINE — Evidence behind the system | Miguel Rodriguez","description":"Architecture, reproducible source, tests, and all 30 local model recovery attempts from the FAULTLINE systems lab.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"FAULTLINE","component":"portfolio-page","settings":{"path":"/work/faultline"}},"displayName":"FAULTLINE","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-billing-automation","path":"/work/billing-automation","title":"MetLife · benefits billing automation | Miguel Rodriguez","description":"Power Query reduced one monthly MetLife billing workflow from about nine hours to twenty minutes, with source-preserving preparation and exceptions that still required human judgment.","socialImage":"https://miguel.systems/brand/projects/billing-automation.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"MetLife · benefits billing automation","component":"portfolio-page","settings":{"path":"/work/billing-automation"}},"displayName":"MetLife · benefits billing automation","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-employee-sentiment-intelligence","path":"/work/employee-sentiment-intelligence","title":"Employee Sentiment Intelligence | Miguel Rodriguez","description":"Python tooling, a connected data layer, industry-to-topic dashboards and Full ESA reports turned employee feedback into practical client conversations.","socialImage":"https://miguel.systems/brand/projects/employee-sentiment-intelligence.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Employee Sentiment Intelligence","component":"portfolio-page","settings":{"path":"/work/employee-sentiment-intelligence"}},"displayName":"Employee Sentiment Intelligence","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-tradelab","path":"/work/tradelab","title":"TradeLab | Miguel Rodriguez","description":"A research workbench that connects hypotheses, source evidence, critique and simulated decisions.","socialImage":"https://miguel.systems/brand/projects/tradelab.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"TradeLab","component":"portfolio-page","settings":{"path":"/work/tradelab"}},"displayName":"TradeLab","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-local-ai-orchestration","path":"/work/local-ai-orchestration","title":"Local AI Orchestration | Miguel Rodriguez","description":"A local AI platform that gives planning, focused execution and independent review explicit jobs and visible receipts.","socialImage":"https://miguel.systems/brand/projects/local-ai-orchestration.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Local AI Orchestration","component":"portfolio-page","settings":{"path":"/work/local-ai-orchestration"}},"displayName":"Local AI Orchestration","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-dinos-subs","path":"/work/dinos-subs","title":"Dino’s Subs | Miguel Rodriguez","description":"A heritage-led, multi-route redesign that turns a dense single-page restaurant site into a focused, mobile-friendly journey for menu discovery, party subs, story, gear, careers, and visits.","socialImage":"https://miguel.systems/brand/projects/dinos-subs.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Dino’s Subs","component":"portfolio-page","settings":{"path":"/work/dinos-subs"}},"displayName":"Dino’s Subs","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-blackbox","path":"/work/blackbox","title":"_Blackbox | Miguel Rodriguez","description":"Recorded work becomes a searchable history, with timestamps that take you back to the moment behind an answer.","socialImage":"https://miguel.systems/brand/projects/blackbox.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"_Blackbox","component":"portfolio-page","settings":{"path":"/work/blackbox"}},"displayName":"_Blackbox","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-tdc-design-review","path":"/work/tdc-design-review","title":"Templo de Cristo · website & review | Miguel Rodriguez","description":"Bilingual web and media work, plus a contextual review tool that lets a stakeholder point to the exact part of a page.","socialImage":"https://miguel.systems/brand/projects/tdc-design-review.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Templo de Cristo · website & review","component":"portfolio-page","settings":{"path":"/work/tdc-design-review"}},"displayName":"Templo de Cristo · website & review","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-ultimate-lawncare","path":"/work/ultimate-lawncare","title":"Ultimate Lawncare | Miguel Rodriguez","description":"Three archived lawn-care website tiers, from a focused one-page experience to multi-page service journeys and interactive quotes.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Ultimate Lawncare","component":"portfolio-page","settings":{"path":"/work/ultimate-lawncare"}},"displayName":"Ultimate Lawncare","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-serens-fades","path":"/work/serens-fades","title":"Seren’s Fades | Miguel Rodriguez","description":"A barber identity translated into a distinctive website with service choices, travel details, and a clear contact path.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Seren’s Fades","component":"portfolio-page","settings":{"path":"/work/serens-fades"}},"displayName":"Seren’s Fades","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-pptx-template-update","path":"/work/pptx-template-update","title":"PPTX Template Update | Miguel Rodriguez","description":"Carry analysis into editable, branded client presentations: preserve template design, map chart inputs and shape the explanation around the audience.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"PPTX Template Update","component":"portfolio-page","settings":{"path":"/work/pptx-template-update"}},"displayName":"PPTX Template Update","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-voice-lab","path":"/work/voice-lab","title":"Voice Lab | Miguel Rodriguez","description":"From owned Python collection to a configurable desktop reporting workbench: reusable PowerPoint templates, slide bindings, versioned LLM prompts and business context, packaged for the next analyst.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Voice Lab","component":"portfolio-page","settings":{"path":"/work/voice-lab"}},"displayName":"Voice Lab","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-total-rewards-analytics","path":"/work/total-rewards-analytics","title":"Total Rewards analytics | Miguel Rodriguez","description":"Turn inconsistent survey exports into connected views of what employees value, how satisfied they are, and where benefits priorities diverge.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Total Rewards analytics","component":"portfolio-page","settings":{"path":"/work/total-rewards-analytics"}},"displayName":"Total Rewards analytics","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-naics-finder","path":"/work/naics-finder","title":"NAICS Finder & peer benchmarks | Miguel Rodriguez","description":"Build more useful employer comparisons by connecting company research, industry classifications and reviewed peer groups.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"NAICS Finder & peer benchmarks","component":"portfolio-page","settings":{"path":"/work/naics-finder"}},"displayName":"NAICS Finder & peer benchmarks","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-culture-taxonomy","path":"/work/culture-taxonomy","title":"Culture & sentiment taxonomy | Miguel Rodriguez","description":"Define the themes behind employee feedback: culture, belonging, empowerment, purpose and the language people actually use.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Culture & sentiment taxonomy","component":"portfolio-page","settings":{"path":"/work/culture-taxonomy"}},"displayName":"Culture & sentiment taxonomy","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-esa-data-reliability","path":"/work/esa-data-reliability","title":"Reliable ratings & Smartsheet write-back | Miguel Rodriguez","description":"Trace missing ratings to the output layer, then write results to the right rows without erasing existing values when new data is absent.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Reliable ratings & Smartsheet write-back","component":"portfolio-page","settings":{"path":"/work/esa-data-reliability"}},"displayName":"Reliable ratings & Smartsheet write-back","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-scoreforge","path":"/work/scoreforge","title":"ScoreForge | Miguel Rodriguez","description":"Connect instrument extraction, notation and rehearsal in a private music workspace, with heavier processing handled on a local server.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"ScoreForge","component":"portfolio-page","settings":{"path":"/work/scoreforge"}},"displayName":"ScoreForge","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-signalboard","path":"/work/signalboard","title":"MySpace 2026 / Signalboard | Miguel Rodriguez","description":"Explore a social space where a profile feels personal, editing is expressive, and privacy choices are understandable.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"MySpace 2026 / Signalboard","component":"portfolio-page","settings":{"path":"/work/signalboard"}},"displayName":"MySpace 2026 / Signalboard","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-nicos-adventures","path":"/work/nicos-adventures","title":"Nico’s Adventures | Miguel Rodriguez","description":"A playful room becomes a bookshelf of bilingual stories, with narration, sound exploration and controls designed for calm discovery.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Nico’s Adventures","component":"portfolio-page","settings":{"path":"/work/nicos-adventures"}},"displayName":"Nico’s Adventures","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-video-research-pipeline","path":"/work/video-research-pipeline","title":"Video-to-research pipeline | Miguel Rodriguez","description":"Turn a video into timestamped transcripts, sampled frames, extracted text and connected research context.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Video-to-research pipeline","component":"portfolio-page","settings":{"path":"/work/video-research-pipeline"}},"displayName":"Video-to-research pipeline","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-cross-machine-agentops","path":"/work/cross-machine-agentops","title":"Cross-machine AgentOps | Miguel Rodriguez","description":"Coordinate work and retained context across a desktop, laptop and NAS, with visible queues and service health.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Cross-machine AgentOps","component":"portfolio-page","settings":{"path":"/work/cross-machine-agentops"}},"displayName":"Cross-machine AgentOps","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-envato-api-bridge","path":"/work/envato-api-bridge","title":"Envato Market API bridge | Miguel Rodriguez","description":"Give creative tooling a structured connection to the Envato Market API, with validated operations and clear boundaries for reads, writes and downloads.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"SIGNAL / LOST","component":"portfolio-page","settings":{"path":"/work/envato-api-bridge"}},"displayName":"SIGNAL / LOST","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-zen-taxonomy-tools","path":"/work/zen-taxonomy-tools","title":"Zen Browser taxonomy tools | Miguel Rodriguez","description":"Organize a large browser workspace through inventory, classification and reviewable migrations with before-and-after checks.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Zen Browser taxonomy tools","component":"portfolio-page","settings":{"path":"/work/zen-taxonomy-tools"}},"displayName":"Zen Browser taxonomy tools","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-source-to-release","path":"/work/source-to-release","title":"From source to release | Miguel Rodriguez","description":"Keep source ownership, validation state, backup coverage and release readiness connected across a growing body of work.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"From source to release","component":"portfolio-page","settings":{"path":"/work/source-to-release"}},"displayName":"From source to release","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-clustertile","path":"/work/clustertile","title":"ClusterTile | Miguel Rodriguez","description":"Explore how several machines could behave like one coordinated workspace, with deliberate window placement and shared display roles.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"ClusterTile","component":"portfolio-page","settings":{"path":"/work/clustertile"}},"displayName":"ClusterTile","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-database-ingestion-toolkit","path":"/work/database-ingestion-toolkit","title":"Database Ingestion Toolkit | Miguel Rodriguez","description":"Bring files with different schemas into a local database through a desktop interface designed to make ingestion easier to inspect.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Database Ingestion Toolkit","component":"portfolio-page","settings":{"path":"/work/database-ingestion-toolkit"}},"displayName":"Database Ingestion Toolkit","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-esa-report-assets","path":"/work/esa-report-assets","title":"Report asset preparation | Miguel Rodriguez","description":"Connect client imagery, repeatable preparation and presentation templates so analysis can become a usable client deliverable.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Report asset preparation","component":"portfolio-page","settings":{"path":"/work/esa-report-assets"}},"displayName":"Report asset preparation","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-mimagery","path":"/work/mimagery","title":"MiMagery | Miguel Rodriguez","description":"A creative-practice archive spanning MiMagery identity variations, logo animation, website design files, social media, email design, and client-facing templates.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"MiMagery","component":"portfolio-page","settings":{"path":"/work/mimagery"}},"displayName":"MiMagery","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-villas","path":"/work/villas","title":"Villas | Miguel Rodriguez","description":"A hospitality visual archive with finished interior, entrance, bar, and food photography, a logo, and a WordPress media library.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Villas","component":"portfolio-page","settings":{"path":"/work/villas"}},"displayName":"Villas","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-snty","path":"/work/snty","title":"SNTY 2016 | Miguel Rodriguez","description":"An event-design archive containing logos and promotional flyers, including Yo Creo, Yo Creo Camp, and Abriendo Brechas.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"SNTY 2016","component":"portfolio-page","settings":{"path":"/work/snty"}},"displayName":"SNTY 2016","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-hilton-experiments","path":"/work/hilton-experiments","title":"Hilton Excel experiments | Miguel Rodriguez","description":"A working collection of Excel experiments covering multi-criteria lookups, visualization challenges, an email generator, and spreadsheet-based visual tools.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Hilton Excel experiments","component":"portfolio-page","settings":{"path":"/work/hilton-experiments"}},"displayName":"Hilton Excel experiments","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-aero","path":"/work/aero","title":"aerosmartliving.com | Miguel Rodriguez","description":"Early planning material and identity references for an Aero Smart Living concept, with a focus on smart-home and home-services visual directions.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"aerosmartliving.com","component":"portfolio-page","settings":{"path":"/work/aero"}},"displayName":"aerosmartliving.com","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-renewed-vision","path":"/work/renewed-vision","title":"Renewed Vision media | Miguel Rodriguez","description":"A presentation-media library organized around countdowns, foregrounds, backgrounds, images, audio, and community presentation assets.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Renewed Vision media","component":"portfolio-page","settings":{"path":"/work/renewed-vision"}},"displayName":"Renewed Vision media","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-youth-identity","path":"/work/youth-identity","title":"Youth identity explorations | Miguel Rodriguez","description":"Youth-oriented identity studies, with sample concepts, layered Photoshop files, and an Illustrator vector file for Generación Escogida.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Youth identity explorations","component":"portfolio-page","settings":{"path":"/work/youth-identity"}},"displayName":"Youth identity explorations","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-la-duni","path":"/work/la-duni","title":"La Duni | Miguel Rodriguez","description":"Bartending experience alongside a creative archive containing an editable logo-animation project, vector artwork and a finished motion render.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"La Duni","component":"portfolio-page","settings":{"path":"/work/la-duni"}},"displayName":"La Duni","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-mach-heating-air","path":"/work/mach-heating-air","title":"MACH Heating & Air | Miguel Rodriguez","description":"Identity artwork, vehicle-art source and exported service graphics connect the brand to its presence on the road.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"MACH Heating & Air","component":"portfolio-page","settings":{"path":"/work/mach-heating-air"}},"displayName":"MACH Heating & Air","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-taxes-on-the-move","path":"/work/taxes-on-the-move","title":"Taxes On The Move | Miguel Rodriguez","description":"A coordinated print archive spanning identity, business cards, door hangers, yard signs, vehicle magnets and newsletters, including English-front and Spanish-back campaign pieces.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Taxes On The Move","component":"portfolio-page","settings":{"path":"/work/taxes-on-the-move"}},"displayName":"Taxes On The Move","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-lockton-fabrication","path":"/work/lockton-fabrication","title":"Lockton · design to fabrication | Miguel Rodriguez","description":"SOC earring designs and PRIDE keychain/bag-tag work connect Illustrator and SVG artwork to front/back 3MF print models.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Lockton · design to fabrication","component":"portfolio-page","settings":{"path":"/work/lockton-fabrication"}},"displayName":"Lockton · design to fabrication","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-972-clothing","path":"/work/972-clothing","title":"972 Clothing | Miguel Rodriguez","description":"An archive spanning logo work, photoshoots, promotional materials, store content and website assets.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"972 Clothing","component":"portfolio-page","settings":{"path":"/work/972-clothing"}},"displayName":"972 Clothing","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-cloudcap","path":"/work/cloudcap","title":"CloudCap | Miguel Rodriguez","description":"Product and display models in STL and 3MF, supported by cost calculators and branding exploration for a smoking accessory.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"CloudCap","component":"portfolio-page","settings":{"path":"/work/cloudcap"}},"displayName":"CloudCap","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-hud-motion","path":"/work/hud-motion","title":"HUD motion study | Miguel Rodriguez","description":"An After Effects project and rendered driving sequence explore a heads-up-display visual treatment.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"HUD motion study","component":"portfolio-page","settings":{"path":"/work/hud-motion"}},"displayName":"HUD motion study","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-sephora-team-media","path":"/work/sephora-team-media","title":"Sephora · team media | Miguel Rodriguez","description":"A retained video edit, title renders and layered “We Miss You” artwork document creative work around team communication.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Sephora · team media","component":"portfolio-page","settings":{"path":"/work/sephora-team-media"}},"displayName":"Sephora · team media","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-gipsy-lime","path":"/work/gipsy-lime","title":"Gipsy Lime | Miguel Rodriguez","description":"Retained menu documents, a menu PDF and a supporting identity folder connect hospitality experience with practical information design.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Gipsy Lime","component":"portfolio-page","settings":{"path":"/work/gipsy-lime"}},"displayName":"Gipsy Lime","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-project-lit","path":"/work/project-lit","title":"Project Lit | Miguel Rodriguez","description":"Layered poster studies, variations and rendered pieces document an archive of visual experimentation.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Project Lit","component":"portfolio-page","settings":{"path":"/work/project-lit"}},"displayName":"Project Lit","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-photography-practice","path":"/work/photography-practice","title":"Photography practice | Miguel Rodriguez","description":"A curated photography archive organized by subject supports a broader practice of image-making alongside hospitality and brand work.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Photography practice","component":"portfolio-page","settings":{"path":"/work/photography-practice"}},"displayName":"Photography practice","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-lead-management-ux","path":"/work/lead-management-ux","title":"Lead Management UX | Miguel Rodriguez","description":"A layered interface draft and an External Lead Controller prototype explore how a lead-management workspace could be organized.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Lead Management UX","component":"portfolio-page","settings":{"path":"/work/lead-management-ux"}},"displayName":"Lead Management UX","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-microgive","path":"/work/microgive","title":"microGIVE | Miguel Rodriguez","description":"A retained Adobe XD prototype preserves interface exploration under the microGIVE name.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"microGIVE","component":"portfolio-page","settings":{"path":"/work/microgive"}},"displayName":"microGIVE","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"privacy","path":"/privacy","title":"Privacy | Miguel Rodriguez","description":"How this portfolio uses browser preferences, optional analytics, and private owner administration.","socialImage":"/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"Privacy notice","component":"portfolio-page","settings":{"path":"/"}},"displayName":"/","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-miguel-systems-studio","path":"/work/miguel-systems-studio","title":"miguel.systems Studio","description":"An owner workspace for editing a living portfolio: pages, project stories, media, node collections, previews, and controlled publication in one place.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/miguel-systems-studio","component":"portfolio-page","settings":{"path":"/work/miguel-systems-studio"}},"displayName":"/work/miguel-systems-studio","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-react-visual-editor","path":"/work/react-visual-editor","title":"Reusable React Visual Editor","description":"A component-aware visual editor that combines a layers panel, canvas, and properties controls while preserving the behavior of existing React experiences.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/react-visual-editor","component":"portfolio-page","settings":{"path":"/work/react-visual-editor"}},"displayName":"/work/react-visual-editor","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-website-archive-toolkit","path":"/work/website-archive-toolkit","title":"Website Archive & Migration Toolkit","description":"A repeatable process for preserving complete websites as lightweight, browsable demonstrations, with verified source backups and continuity for their original addresses.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/website-archive-toolkit","component":"portfolio-page","settings":{"path":"/work/website-archive-toolkit"}},"displayName":"/work/website-archive-toolkit","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-content-media-recovery","path":"/work/content-media-recovery","title":"Content & Media Recovery Toolkit","description":"A portable recovery format for website content, revision history, and media, with integrity checks and staged restoration before anything becomes public.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/content-media-recovery","component":"portfolio-page","settings":{"path":"/work/content-media-recovery"}},"displayName":"/work/content-media-recovery","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-corner-press","path":"/work/corner-press","title":"Corner Press","description":"A warm neighborhood sandwich-shop identity with a playful menu, category filters, and a clear ordering journey.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/corner-press","component":"portfolio-page","settings":{"path":"/work/corner-press"}},"displayName":"/work/corner-press","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-ginos-subs","path":"/work/ginos-subs","title":"Gino’s Subs","description":"A heritage-inspired sandwich-shop experience with an illustrated identity, searchable menu, and generous food photography.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/ginos-subs","component":"portfolio-page","settings":{"path":"/work/ginos-subs"}},"displayName":"/work/ginos-subs","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-miguel-themes","path":"/work/miguel-themes","title":"Miguel · design archive","description":"A browsable collection of portfolio design directions, each with its own typography, composition, and interaction language.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/miguel-themes","component":"portfolio-page","settings":{"path":"/work/miguel-themes"}},"displayName":"/work/miguel-themes","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}},{"id":"work-mergeflow","path":"/work/mergeflow","title":"MergeFlow","description":"One spreadsheet. Different messages, documents and decisions for every row. MergeFlow makes conditional Outlook mail merge visual, explainable and draft-first.","socialImage":"https://miguel.systems/brand/miguel-systems-share-v1.png","indexable":true,"enabled":true,"canvas":{"ROOT":{"type":{"resolvedName":"Box"},"isCanvas":true,"props":{"label":"Page","style":{"minHeight":"100vh"}},"displayName":"Page","parent":null,"hidden":false,"nodes":["main"],"linkedNodes":{}},"main":{"type":{"resolvedName":"Native"},"isCanvas":false,"props":{"label":"/work/mergeflow","component":"portfolio-page","settings":{"path":"/work/mergeflow"}},"displayName":"/work/mergeflow","parent":"ROOT","hidden":false,"nodes":[],"linkedNodes":{}}}}],"projects":[{"slug":"u1-mechanical","title":"U1 Mechanical","kind":"Website redesign · full-stack webapp rollout","status":"Ongoing","categories":["Websites","Product","Infrastructure"],"technologies":["Mobbin","Next.js","React","TypeScript","Tailwind CSS","Prisma","Neon PostgreSQL","NextAuth","GoDaddy Node.js","Playwright"],"summary":"From a clearer customer journey to a connected website, owner dashboard, and field app. A story of research, implementation, failed attempts, and a verified hosted owner-review rollout.","context":"This is a deployed owner-review preview, not a completed production launch. AI output is synthetic; live AI, payments, accounting actions, and provider sends remain disabled. Actual hosted uploads, field-host sign-in, wider role coverage, and physical-device/Safari/Firefox acceptance remain open. Business content, prices, and imagery remain subject to owner approval. No customer records or private operational screens are published here.","image":"/media/websites/u1-mechanical.png","href":"/work/u1-mechanical","linkLabel":"Read project story","caseStudy":{"role":"Product direction · UX research · full-stack delivery · AI-assisted implementation and verification","timeframe":"September 2026 · owner-review rollout","outcomes":[{"label":"Three connected surfaces","detail":"The website, dashboard, and field entry point were published over HTTPS using the same qualified application and shared data services."},{"label":"Real hosted owner login","detail":"The owner created their account and signed in to the hosted dashboard. The review catalog contained 16 approved examples."},{"label":"A repeatable release method","detail":"Host diagnostics, migration rehearsal, package integrity checks, and live read-back became a reusable GoDaddy + Neon workflow."}],"evidenceSource":"Based on retained UX research, hosting diagnostics, packaged-runtime tests, deployment receipts, and hosted owner-login verification from September 20, 2026.","publicationSafety":"public-sanitized","challengeTitle":"A better front door. A working system behind it.","challenge":"An HVAC customer needs to understand their options and take the next step. The team behind that website needs a dependable way to review requests, manage work, and support technicians. The redesign had to improve the public journey while preserving the operational applications—and prove that the whole application could run on the intended host.","approach":"I shaped the work around three connected experiences: customer discovery and quote requests, an owner and office dashboard, and a field webapp. Mobbin informed the public UX; React and Next.js delivered the interfaces and server routes; Prisma and Neon carried the data; GoDaddy Node.js hosting carried the rollout. Each failure fed a smaller diagnostic, a targeted correction, and another test.","sections":[{"title":"The success was observable","body":"The release record confirmed all 14 linked public pages, shared build identity across three HTTPS addresses, protected-route denial, loaded homepage imagery, and an authenticated OWNER dashboard. That is a concrete delivery milestone; it does not imply increased sales or completed production acceptance."},{"title":"Testing stayed honest","body":"The earlier local certification passed 288 required results. The later framework and hosting adaptation needed its own evidence. All eight migration journeys eventually had passing evidence across runs; they did not pass as one sealed matrix. Packaged-runtime checks then covered sessions, CSRF, host routing, static assets, and database transport on disposable local fixtures."},{"title":"The work became reusable","body":"The launch informed the godaddy-neon-webapps workflow: establish the hosting contract, prove the database path, rehearse migrations, preserve auth, package exact bytes, verify the deployed routes, and finish with a human sign-in. Each new app still needs its own roles, data model, and acceptance checks."}]}},{"slug":"faultline","title":"FAULTLINE","kind":"Applied AI · systems engineering","status":"Completed","categories":["AI Systems","Infrastructure","Analytics"],"technologies":["Python","PostgreSQL","Ollama","React","TypeScript"],"summary":"A real PostgreSQL failure lab: break an order workflow, compare conventional and local model repairs, and verify every resulting record.","context":"The public lab replays real local executions on fictional data. It cannot operate private services. Orchestrated by Miguel; the recorded model is a bounded action selector.","image":null,"href":"/work/faultline","linkLabel":"Read project story","caseStudy":{"role":"Miguel-led project · AI-assisted implementation and verification","timeframe":"September 2026 · v1","outcomes":[{"label":"Real faults, inspectable evidence","detail":"Process exits, repeated deliveries, and incompatible units reproduced against PostgreSQL."},{"label":"Runbook and model compared","detail":"Equivalent database branches and an independent record-level evaluator."}],"evidenceSource":"Retained local execution records, frozen evaluation protocol, source revision, and automated tests.","publicationSafety":"public-sanitized","challenge":"A process can report success while producing incorrect business records. An agent can select an allowed action that fails to repair them.","approach":"Capture a real incident, fork identical database states, execute bounded recovery actions, and check the complete records against independently generated truth.","sections":[]}},{"slug":"billing-automation","title":"MetLife · benefits billing automation","kind":"Lockton · benefits operations","status":"Completed","categories":["Analytics"],"technologies":["Alteryx","Power Query","Excel","Power BI"],"summary":"Power Query reduced one monthly MetLife billing workflow from about nine hours to twenty minutes, with source-preserving preparation and exceptions that still required human judgment.","context":"This is an illustrated explanation of a real Lockton / MetLife project. The original workbooks, employee records, client identifiers, query code, rates, and billing values are not distributed. Interactions explore the workflow; they do not execute the original automation or connect to client systems.","image":"/brand/projects/billing-automation.png","href":"/work/billing-automation","linkLabel":"Read project story","caseStudy":{"role":"Automation design · analyst team leadership · reporting","timeframe":"Delivered at Lockton","outcomes":[{"label":"Nine hours to twenty minutes","detail":"Power Query delivered the reported improvement for one monthly MetLife workflow. This is my firsthand result; it is separate from later Alteryx adoption."},{"label":"Review beyond reconciliation","detail":"Coverage checks surfaced hundreds of flags. Investigation separated valid acquired-group eligibility exceptions from duplicate HR profiles that required source correction."},{"label":"Reusable work across the practice","detail":"A two-week Alteryx cohort challenge produced a client- and vendor-agnostic analytic app. Months later, I project-managed a small analyst team supporting manager opt-in adoption."}],"evidenceSource":"Original Power Query workbook structure, with my corrected October 2026 account of timing, SOC chronology, billing exceptions, Alteryx adoption and reporting.","publicationSafety":"public-abstracted","challengeTitle":"A bill must be correct beyond its total.","challenge":"The client’s MetLife self-bill depended on more than an enrollment count. Coverage, compensation, age, location, and plan rules had to agree. Missing details and manual reconciliation could turn into costly adjustments the following month.","approach":"I first automated self-billing and list-bill reconciliation in Power Query. Presenting that HRO approach at State of the Companies opened the Alteryx opportunity. At the following year’s SOC, a cohort and I presented a reusable analytic app built in two weeks; a small analyst team and wider manager opt-in adoption followed months later. Power BI connected the billing outputs to analytical review.","sections":[{"title":"What the original Power Query files demonstrate","body":"The supplied template contains 52 query definitions, including parameters and helper queries. A month-based source selection feeds demographic and benefit transformations, joins to location and rate reference tables, benefit-specific itemized outputs, and separate Missing Location Class and Missing ER Benefit queues. This describes the saved structure, not a new calculation or desktop Excel acceptance test."},{"title":"Power Query first, then the Alteryx opportunity","body":"The approximately nine-hour-to-twenty-minute MetLife result came from Power Query. I presented my HRO automation approach at State of the Companies and trained analysts. That work opened an opportunity to participate in the Alteryx rollout. MetLife was a candidate for Alteryx; the timing result does not establish that it migrated."},{"title":"Two weeks to build something reusable","body":"At the following year’s SOC, a cohort and I selected an impactful HRO billing use case, learned Alteryx Designer, built the solution and presented it to executives within two weeks. A simple analytic-app interface exposed reusable client- and vendor-agnostic processing while keeping the denser node logic underneath. A few months later I project-managed a small analyst team. Managers opted selected workflows into this level of automation; larger datasets processed faster in Alteryx in my experience."},{"title":"A reconciled bill was not the end of validation","body":"The error tabs flagged hundreds of employees missing basic life or other employer-paid coverage. Investigation showed that an acquired group did not qualify, so those records became documented eligibility exceptions. Other flags revealed duplicate HR profiles left in the source system. I separated business exceptions from data errors and gave the client an explanation and correction path; I did not silently rewrite the original data."},{"title":"Carry business rules and reporting forward","body":"Later, I used ChatGPT and Microsoft Copilot to translate established Power Query M logic into preconfigured Alteryx nodes through XML. I also organized census and billing folders so Power BI could reference them dynamically without changing source files. The reporting grew from an analyst view into a leadership view across the practice."},{"title":"Where the automation stops","body":"Client HR and payroll owned source corrections where our platform access was limited. A generated bill still needed review. Broader Alteryx background runs were manually initiated. Exact SOC years, practice-wide migration and automatic orchestration are not inferred from the retained workbook."},{"title":"What you can explore here","body":"The diagrams use actual workflow relationships with abstract visual marks. They contain no employee-level examples, proprietary calculation formulas, live rates, or downloadable workbooks. No interaction sends data to Lockton, MetLife, or a benefits platform."}]}},{"slug":"employee-sentiment-intelligence","title":"Employee Sentiment Intelligence","kind":"Analytics product","status":"Completed","categories":["Analytics","Product"],"technologies":["Python","pandas","Smartsheet API","Power BI / DAX","PowerPoint"],"summary":"Python tooling, a connected data layer, industry-to-topic dashboards and Full ESA reports turned employee feedback into practical client conversations.","context":"The interactive example uses fictional organizations, synthetic topic counts and trends, and comments written for this demonstration. No client data, employee quotations or live Lockton connections are included.","image":"/brand/projects/employee-sentiment-intelligence.png","href":"/work/employee-sentiment-intelligence","linkLabel":"Read project story","caseStudy":{"role":"Product ownership · tooling · data architecture · visualization · automation · UI / UX","timeframe":"Multi-year product evolution","outcomes":[{"label":"Connected research","detail":"Source-specific Python tooling and Smartsheet write-back supported a shared analytical workflow."},{"label":"Industry to employee voice","detail":"ESA Dashboard 3.0 connected industry benchmarks, employer comparisons, taxonomy trends and comments."},{"label":"Reports and a handoff","detail":"A complimentary benchmark led into deeper Full ESA analysis. Voice Lab later brought delivery into a desktop app, installed with team training."}],"evidenceSource":"Original Full ESA decks, ESA Dashboard 3.0 report layout, recovered tooling archives, and the owner's firsthand installation and training account.","publicationSafety":"public-sanitized","challengeTitle":"Understand the whole picture—and the experience beneath it.","challenge":"An overall score can hide different employee experiences. The system needed to connect industry context, employer sentiment, individual themes and the next useful client conversation.","approach":"I built collection tools, connected an interim Smartsheet database through its API, designed Power BI views and translated the analysis into Full ESA reports. The later Voice Lab desktop app was installed and handed over with team training.","sections":[{"title":"Research and data architecture","body":"Configurable Python tools normalized source-specific research. Smartsheet served as the interim database, with API write-back while the longer-term database approach was being worked through."},{"title":"Full ESA depth","body":"The older Full ESA reports combined benchmarks, historical sentiment, engagement factors, employee voice and practice-aligned recommendations. ESA Dashboard 3.0 supported industry-to-taxonomy exploration."},{"title":"Voice Lab delivery","body":"The later desktop application brought capture and reporting into one workflow. I installed Voice Lab and trained the team. Its reports were less granular than the older Full ESAs."},{"title":"Demand across divisions","body":"Producers and liaisons in other divisions used the ESA interface and visualizations in client acquisition and retention conversations. Demand expanded beyond individual requests into books of business, and one dashboard was sold internally for $19,000. This is my firsthand account of an internal transaction, not a measured revenue uplift for clients."}]}},{"slug":"tradelab","title":"TradeLab","kind":"AI research system","status":"Ongoing","categories":["AI Systems","Product"],"technologies":["Python","FastAPI","React","PostgreSQL","Temporal"],"summary":"A research workbench that connects hypotheses, source evidence, critique and simulated decisions.","context":"The demonstration uses fictional research subjects, holdings, and evidence. It has no brokerage connection and cannot place trades.","image":"/brand/projects/tradelab.png","href":"/work/tradelab","linkLabel":"Read project story","caseStudy":{"role":"System design · agent orchestration · evidence boundaries","timeframe":"Iterative research platform","outcomes":[{"label":"Eight bounded roles","detail":"Separated planning, evidence collection, challenge, synthesis, and presentation responsibilities."},{"label":"Evidence-first output","detail":"Designed a ledger that keeps research artifacts attributable and reviewable."},{"label":"Fail-closed boundary","detail":"Kept the public and research experience read-only with no execution capability."}],"evidenceSource":"Sanitized architecture and workflow artifacts from the TradeLab development workspace.","publicationSafety":"public-sanitized","challengeTitle":"More agents should not mean more unverified claims.","challenge":"Multi-agent research can produce volume without trust. The design problem was to make delegation legible, preserve provenance, and prevent unsupported conclusions from silently becoming recommendations.","approach":"The workflow assigns distinct responsibilities to eight roles, records evidence as structured artifacts, and makes review states visible. The replay is deterministic and represents a prerecorded synthetic session.","sections":[{"title":"Make the hypothesis explicit","body":"A research objective becomes a tracked hypothesis with evidence and review states. Structured contracts keep the UI and workflow in agreement."},{"title":"Keep the source with the claim","body":"An evidence ledger records where a finding came from and whether it survived critique. Stale or contradictory material remains visible rather than disappearing into a confident summary."},{"title":"Research scope","body":"TradeLab v2 is shadow-only with no broker-write capability. Product acceptance remains open. The public replay demonstrates a fictional session, not investment performance."}]}},{"slug":"local-ai-orchestration","title":"Local AI Orchestration","kind":"Infrastructure system","status":"Ongoing","categories":["AI Systems","Infrastructure"],"technologies":["Python","LangGraph","OpenClaw","Ollama","Typed state"],"summary":"A local AI platform that gives planning, focused execution and independent review explicit jobs and visible receipts.","context":"This explorer abstracts machine topology and model inventory. It distinguishes implemented capabilities from experimental and planned work.","image":"/brand/projects/local-ai-orchestration.png","href":"/work/local-ai-orchestration","linkLabel":"Read project story","caseStudy":{"role":"Platform architecture · workflow design · operational evidence","timeframe":"Phased platform program","outcomes":[{"label":"Typed handoffs","detail":"Designed explicit state and capability boundaries between planning, execution, and review."},{"label":"Evidence and replay","detail":"Captured receipts and QA artifacts so runs can be inspected after completion."},{"label":"Local-first routing","detail":"Separated task intent from provider choice to support private, swappable runtimes."}],"evidenceSource":"Sanitized architecture, capability-ledger, routing, and QA artifacts from the local AI platform workspace. Related PC and NAS sources document AgentOps and the video-to-research pipeline.","publicationSafety":"public-abstracted","challengeTitle":"Make a multi-tool workflow inspectable.","challenge":"Local AI systems often accumulate models and scripts faster than operational trust. The goal was to make capability, routing, evidence, and safety explicit across a modular platform.","approach":"Miguel used typed state, deterministic selection rules, an action boundary, and receipt-oriented QA to make multi-step work observable. The public replay is sanitized and does not connect to the private platform.","sections":[{"title":"Choose the job before the model","body":"Typed workflow contracts describe what a task needs before choosing a compatible provider or runtime. This separates product intent from model inventory."},{"title":"Prove what actually ran","body":"Action receipts and review artifacts connect requests to results. A listed capability is different from an activated tool, and the interface keeps that distinction visible."},{"title":"Current scope","body":"The retained platform checkpoint qualified an earlier runtime phase. Office, audio and media host surfaces remain activation-disabled, and full natural-language specialist routing is still in progress."},{"title":"Cross-machine operations","body":"Related AgentOps work connects queues, shared context and visible worker health across the desktop, laptop and NAS. A running memory dashboard and coordination source were inspected. This integration work is distinct from the capabilities of installed upstream agents."},{"title":"Video as research material","body":"A separate video-processing pipeline retains timestamps across transcripts, sampled frames, OCR and optional visual captions. It connects media preparation to searchable context while keeping the source moment available for review."}]}},{"slug":"dinos-subs","title":"Dino’s Subs","kind":"Local business website","status":"Prototype","categories":["Product","Websites"],"technologies":["Next.js","React","TypeScript","Vinext","Responsive design"],"summary":"A heritage-led, multi-route redesign that turns a dense single-page restaurant site into a focused, mobile-friendly journey for menu discovery, party subs, story, gear, careers, and visits.","context":"Owner-review website prototype. The personal case study is styled here; the separate Dino’s demo retains its client identity. Final business content and launch remain owner-controlled.","image":"/media/websites/dinos-subs.webp","href":"/work/dinos-subs","linkLabel":"Read project story","caseStudy":{"role":"Product strategy · information architecture · UX/UI · frontend implementation · brand restoration","timeframe":"2026 owner-review redesign","outcomes":[{"label":"27 numbered subs","detail":"Made the full numbered menu searchable and filterable on a dedicated customer route."},{"label":"Seven focused routes","detail":"Separated menu, party-sub, story, gear, visit, and careers tasks from the homepage."},{"label":"Launch-aware controls","detail":"Centralized indexing, canonical, review-route, and careers controls for owner approval."}],"evidenceSource":"Verified current repository, asset-provenance ledger, owner launch worksheet, and desktop/mobile before-and-after evidence.","publicationSafety":"public-sanitized","challengeTitle":"Find the menu without searching the whole website.","challenge":"Dino’s Subs has decades of family history, a large menu, and a loyal local identity, but the original single-page site asks visitors to scan nearly every concern in one long document. The redesign needed to improve task finding without inventing prices, availability, ordering capabilities, or owner-approved facts.","approach":"Miguel reorganized the experience around seven customer-focused routes, rebuilt the visual identity from approved source artwork, and implemented the site with React, TypeScript, and progressive motion. Menu discovery, visit planning, party-sub guidance, sharing metadata, and launch controls are explicit while production decisions remain owner-controlled.","sections":[{"title":"One long page became clear journeys","body":"The information architecture separates menu discovery, family history, party-sub planning, merchandise, careers, and visit details so visitors can go directly to the task they came to complete.","bullets":["Home, Menu, Party Subs, Our Story, Gear, Visit, and Careers routes","Search and category filters across all 27 numbered subs","Clear phone, directions, hours, social, and in-person ordering paths"]},{"title":"The physical brand shaped the interface","body":"The classic skyline mark, checkerboard cues, heritage typography, shop photography, and restrained cream, red, and green palette connect the digital experience to the South Collins restaurant."},{"title":"Production truth stayed visible","body":"Unknown prices, allergen guidance, availability, brand approval, image permissions, canonical domain timing, and desktop/mobile acceptance remain explicit owner gates rather than being filled with assumptions."},{"title":"A browsable archive of the whole journey","body":"The maintained archive preserves the multi-route design, searchable menu, category controls, and responsive navigation. Visitors can explore the restaurant experience directly from the Websites collection. Demonstration actions are isolated from live services and do not submit orders, payments, or enquiries."},{"title":"Preserve the work and its address","body":"The original source, assets, dependency lockfile, and recovery instructions are backed up separately from the archive edition. Existing addresses forward to equivalent archive destinations where available. This preservation work keeps the design reviewable without implying an owner-approved production rollout."}]}},{"slug":"blackbox","title":"_Blackbox","kind":"Desktop product","status":"Ongoing","categories":["AI Systems","Product"],"technologies":["React","Tauri / Rust","Transcripts","OCR","MCP"],"summary":"Recorded work becomes a searchable history, with timestamps that take you back to the moment behind an answer.","context":"All session names, excerpts and times in this example are fictional. The demonstration shows implemented interaction concepts, not a fresh recording-quality certification.","image":"/brand/projects/blackbox.png","href":"/work/blackbox","linkLabel":"Read project story","caseStudy":{"role":"Product design · React/Tauri · capture and retrieval workflows","timeframe":"Active private development","outcomes":[{"label":"One review surface","detail":"Recordings, transcripts, notes, bookmarks and OCR markers share a timeline."},{"label":"Answers with timestamps","detail":"Search and source-linked answers point back to the original moment."},{"label":"Development checkpoint","detail":"Important long-recording acceptance remains open; this is an implemented private product in development."}],"evidenceSource":"Current product source, review-timeline implementation and retained development checkpoint.","publicationSafety":"public-sanitized","challengeTitle":"The answer was somewhere in a recording.","challenge":"A long recording preserves what happened, but finding one decision still means scrubbing through it. Notes, transcripts and screenshots can become another set of disconnected files.","approach":"I designed a connected capture, library and review experience. Transcript, OCR, note and decision markers retain their times; a search result or cited answer can seek back to the relevant source.","sections":[{"title":"Design around the moment","body":"Library, Capture, Session Detail and Search share a clear path from recording to a specific piece of evidence. The public example makes the timestamp links work."},{"title":"Connect storage and retrieval","body":"The desktop interface, Rust capture workflows and retained-session services connect local interaction with searchable history. Recovery and health are part of the product surface."},{"title":"What still needs proving","body":"Native motion fidelity and source-loss recovery remain under validation in the latest checkpoint. I treat long-recording acceptance as separate from a passing interface or build check."}]}},{"slug":"tdc-design-review","title":"Templo de Cristo · website & review","kind":"Web and creative systems","status":"Ongoing","categories":["Product","Websites"],"technologies":["React","TypeScript","Responsive design","Motion","Contextual annotations"],"summary":"Bilingual web and media work, plus a contextual review tool that lets a stakeholder point to the exact part of a page.","context":"This reconstructed review interface contains fictional notes. It does not expose stakeholder responses or change the separate TDC websites. The media practice and review product are related but distinct work.","image":"/media/websites/templo-de-cristo.webp","href":"/work/tdc-design-review","linkLabel":"Read project story","caseStudy":{"role":"Graphics · motion · web design · frontend · feedback tools","timeframe":"Ongoing creative and web practice","outcomes":[{"label":"A clearer first visit","detail":"Spanish-first information design and responsive navigation support a bilingual audience."},{"label":"Feedback stays attached","detail":"Pins, highlights and comments keep their section context across the review flow."},{"label":"A reviewable backlog","detail":"The owner dashboard brings section feedback, ratings and export into a usable review surface."}],"evidenceSource":"Current TDC website and stakeholder-review source, plus owner-confirmed graphics, motion and web experience. The separate WordPress salvage-comparison source records the incomplete backup and recovery assessment.","publicationSafety":"public-sanitized","challengeTitle":"“That part of the page” was not specific enough.","challenge":"A website needs to work for the first-time visitor and for the people improving it. General comments lose context when they arrive in another message, screenshot or spreadsheet.","approach":"I paired bilingual information design with a separate review experience. A stakeholder can mark a section, explain the issue and keep that context attached as the feedback moves into an owner dashboard.","sections":[{"title":"Start with the visitor","body":"Spanish-first navigation, mobile layouts and clear first-visit paths shape the website. Graphics, motion and media carry the same message across surfaces."},{"title":"Point, then explain","body":"Pins and highlights attach feedback to the page section being discussed. The example lets you select a section and watch its note remain associated."},{"title":"Turn feedback into a next step","body":"Section-level review, distributions and export support a focused design discussion. Real responses remain private; only fictional review notes appear here."},{"title":"WordPress recovery assessment","body":"I investigated a historical WordPress archive before treating it as a recoverable website. It contained the application footprint and bundled themes, but lacked the database, uploaded media and custom identity needed for a faithful restoration. The comparison work made the rebuild decision concrete. This was a recovery assessment, not a successful restoration of the former site."},{"title":"Two surfaces, one design conversation","body":"The archive retains both the bilingual website and the separate stakeholder-review tool. Visitors can follow the first-visit journey, switch language where supported, then explore how contextual feedback supports a website revision. Both demonstrations are grouped under the same Templo project family."},{"title":"Fictional feedback protects the original discussion","body":"Review interactions use resettable sample notes and browser-local state. Private stakeholder responses and original records are excluded from the public edition. The maintained archive preserves the interaction design and route structure, while the original source and any private runtime state remain separately protected."}]}},{"slug":"ultimate-lawncare","title":"Ultimate Lawncare","kind":"Service-business websites","status":"Archived","categories":["Websites","Product"],"technologies":["React","TypeScript","Responsive design","Quote workflows"],"summary":"Three archived lawn-care website tiers show a progression in scope: a focused Essentials page, a multi-page Standard site, and a Premium experience with care plans and guided quotes. A separate dashboard demo explores the owner experience.","context":"Archived website and dashboard demonstrations with illustrative business content. Sample requests, quotes, and dashboard changes use resettable fictional state in the browser. The public demonstrations are separate from private operational records.","image":"/media/websites/ultimate-lawncare.webp","href":"/work/ultimate-lawncare","linkLabel":"Read project story","caseStudy":{"role":"Website design · frontend implementation · service and quote journeys","timeframe":"2026 · archived demonstrations","outcomes":[{"label":"Three levels of website scope","detail":"Essentials keeps the experience on one page. Standard adds dedicated service and information pages. Premium adds care plans and a guided estimate."},{"label":"Working interactions to explore","detail":"Navigation, project photography, sample requests, and the quote builder let visitors compare the scope of each tier."}],"evidenceSource":"Preserved project sources, maintained archive builds, and October 2026 public route, asset, and browser-workflow verification.","publicationSafety":"public-sanitized","challengeTitle":"Make lawn care easier to understand and request.","challenge":"A homeowner needs to understand which service fits, what ongoing care involves, and how to begin a useful quote conversation.","approach":"I developed three website tiers around the same core task: help visitors understand lawn-care services and take the next step. The scope grows from a focused one-page presentation to dedicated service pages, ongoing care plans, and an interactive quote experience.","sections":[{"title":"Essentials · a focused one-page experience","body":"Services, project photography, a before-and-after comparison, selected reviews, and a sample quote form share one continuous page."},{"title":"Standard · dedicated service pages","body":"A multi-page structure gives services, lawn-care guidance, the business story, contact, and sample visit requests their own space."},{"title":"Premium · plans and guided estimates","body":"Care plans and an interactive quote builder add more ways to explore property needs, service choices, and an illustrative estimate."},{"title":"Compare the three tiers","body":"Use the tier selector on each archived website to move between Essentials, Standard, and Premium. Each tier keeps its own visual direction and fully navigable experience."},{"title":"A separate owner-dashboard demonstration","body":"The dashboard explores the editing side of the website: sample content changes, drafts, publication, and restoration. It is a separate demonstration alongside the three website tiers."},{"title":"Explore with browser-only sample data","body":"Sample forms and dashboard changes stay in the browser. No enquiry or booking is sent. Reset demo clears the sample state, and placeholder contact links keep the archive separate from an operational business."},{"title":"Retained as an archive","body":"The original designs and project sources are preserved. The portfolio presents the work as archived demonstrations of website design and functionality."}]}},{"slug":"serens-fades","title":"Seren’s Fades","kind":"Brand & mobile-service website","status":"Prototype","categories":["Websites","Product"],"technologies":["React","TypeScript","Identity design","Responsive design"],"summary":"A barber identity translated into a distinctive website with service choices, travel details, and a clear contact path.","context":"Website and brand preview. Final business content, photography permissions, and launch approval remain owner-controlled. The preview does not establish a live booking system or measured business results.","image":"/media/websites/serens-fades.webp","href":"/work/serens-fades","linkLabel":"Read project story","caseStudy":{"role":"Brand direction · identity assets · website design and implementation","timeframe":"2026 · website preview","outcomes":[{"label":"A connected identity","detail":"The logo, lettering, and visual direction carry into the website and supporting creative assets."},{"label":"Mobile service, explained","detail":"A service menu, travel information, process, and contact options clarify how the experience works."}],"evidenceSource":"Public Modern Heritage website preview and retained brand-project documentation, inspected September 20, 2026.","publicationSafety":"public-sanitized","challengeTitle":"Give a mobile barber a recognizable home online.","challenge":"A traveling service needs a strong identity while making practical details such as services, location, travel, and contact easy to find.","approach":"I carried the Modern Heritage identity into a responsive website, pairing prominent typography and the barber mark with a compact service journey. Supporting logo, print, and social assets keep the brand consistent across formats.","sections":[{"title":"Identity in context","body":"The website shows how the barber identity works at the scale of a complete customer experience."},{"title":"Clear service expectations","body":"The menu, travel information, and process make the mobile-service model understandable before a visitor makes contact."},{"title":"A broader creative system","body":"Brand guides, print proofs, and social formats support the website direction. Final content and release approvals remain separate."},{"title":"Review the brand as a complete experience","body":"The archive gives the Modern Heritage direction a browsable home alongside its supporting design context. Visitors can inspect how the identity works across service information, travel expectations, and the contact journey. The portfolio cover stays lightweight; the fuller website loads only when opened."},{"title":"An isolated demonstration","body":"The maintained edition preserves presentation and browser interactions while preventing demo contact actions from sending messages. Original project source and recovery instructions remain in private backups. This archive demonstrates the website and creative system; it does not establish live booking, a business launch, or measured commercial results."}]}},{"slug":"browser-lab","title":"Browser Lab","kind":"Practical browser tools","status":"Public demo","categories":["Product"],"technologies":["JavaScript","Browser APIs","Interaction design"],"summary":"Thirteen browser instruments for practical work and creative play, including a sound studio, full-page drawing canvas, six-game arcade, pixel art, animation, and an illustrated zoom journey.","context":"A public collection of interactive tools. It is a separate experience from the portfolio’s recorded case-study demonstrations.","image":"/media/browser-lab.png","href":"https://lab.miguel.systems/","linkLabel":"Open Browser Lab","related":{"label":"Open Browser Lab","href":"https://lab.miguel.systems/"},"sources":[{"label":"Retained project source · Browser Lab","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"elsewhere","title":"Elsewhere","kind":"Illustrated zoom journey","status":"Public demo","categories":["Product"],"technologies":["Canvas","JavaScript","Interaction design"],"summary":"A continuous journey through four illustrated worlds, with scroll and touch exploration, keyboard controls, and guided playback.","context":"An original creative browser experiment using four AI-generated illustrations. The artwork is bundled; there is no live generation, account, or tracking.","image":"/media/elsewhere.webp","href":"https://lab.miguel.systems/elsewhere/","linkLabel":"Explore Elsewhere in Browser Lab","related":{"label":"Explore Elsewhere in Browser Lab","href":"https://lab.miguel.systems/elsewhere/"},"sources":[{"label":"Retained project source · Elsewhere","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"industry-showroom","title":"Industry Showroom","kind":"Twelve website directions","status":"Public demo","categories":["Websites","Product"],"technologies":["React","TypeScript","Responsive design"],"summary":"Twelve distinct service-business examples with tailored content, customer journeys, and temporary branding controls.","context":"Fictional businesses with illustrative prices, reviews, and booking demonstrations. These examples are separate from client website work.","image":"/media/showroom/industry-showroom.png","href":"https://industries.miguel.systems/","linkLabel":"Explore the showroom","related":{"label":"Explore the showroom","href":"https://industries.miguel.systems/"},"sources":[{"label":"Retained project source · Industry Showroom","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"mergeflow","title":"MergeFlow","kind":"Visual workflows for Outlook","status":"Private beta","categories":["Product"],"technologies":["TypeScript","React","React Flow","Office.js","NestJS","Prisma","PostgreSQL","Microsoft Graph","Microsoft Entra","OpenAI"],"summary":"One spreadsheet. Different messages, documents and decisions for every row. MergeFlow makes conditional Outlook mail merge visual, explainable and draft-first.","context":"An installed personal Outlook pilot has recorded conditional deliveries, attachments and saved drafts. A separate unpaid U1Mechanical practice installation is limited to its administrator’s mailbox, with sending and AI disabled. Customer acceptance and commercial-release gates remain open. The browser walkthrough is simulated; it does not send email.","image":null,"sources":[{"label":"Product brief and UX specification","detail":"The original MergeFlow planning conversation and retained build-phase specifications establish the conditional forms example, portable workflows and security-first intent."},{"label":"Operational pilot records · September–October 2026","detail":"Private acceptance records establish personal-mailbox conditional deliveries, attachment checks, draft saves, duplicate and uncertain-outcome handling, identity configuration and the scoped U1Mechanical practice installation."},{"label":"Data handling and release boundaries","detail":"Current source and runbooks distinguish OpenAI authoring assistance from the deterministic execution engine, keep reviewed AI context separate from recipient-row data, and retain customer and commercial acceptance gates. No recipient addresses, tenant identifiers, credentials or private mailbox content are published."}],"href":"/work/mergeflow","linkLabel":"Explore the MergeFlow story","story":[{"title":"When a mail merge needs to make decisions","body":"A single spreadsheet can describe several different conversations. Someone with no forms needs a complete document pack; someone missing one form needs only that document; a complete record can take a different path. MergeFlow was conceived to make those decisions visible inside Outlook, with connected steps that business users can inspect instead of maintaining separate recipient lists and repeated merge jobs."},{"title":"Build the path, then inspect each row","body":"The interface combines a workflow canvas, a configuration panel and a spreadsheet-style simulator. Users connect sender, Excel or CSV import, condition, email template, attachment and execution nodes. The shared TypeScript engine follows the configured branches, substitutes row values into templates and returns the path, resolved message, attachment references and warnings. Explain Row makes the reason for an individual outcome inspectable before execution."},{"title":"Different document packs from the same workflow","body":"Attachment rules can select a full pack or resolve a smaller set from the row data. The source supports uploaded PDF bundles and attachment readiness checks. A filename in a worksheet is not permission to read that file: an Outlook web add-in cannot browse arbitrary local folders. Available attachment content and supported URLs must be resolved and verified through the chosen execution path."},{"title":"Review first, execute deliberately","body":"The installed personal Outlook pilot produced verified conditional messages and attachments for test recipients and saved drafts for review. Durable run records guard against duplicate submissions, and uncertain delivery outcomes stop automatic retries until a person resolves the state. These are recorded pilot results; the standalone browser walkthrough remains simulated."},{"title":"Share the logic and make setup visible","body":"Portable workflow packages, version history and setup variables separate reusable logic from the mailbox and file locations that change between people. A colleague can import a workflow, see what still needs binding and supply their own configuration. The repository includes local and API-backed persistence and sharing; broader team authorization and cross-tenant behavior remain acceptance work before a commercial rollout."},{"title":"Qualify a second environment separately","body":"I configured Microsoft Entra and installed the add-in in U1Mechanical’s administrator mailbox as an unpaid practice environment. Sending and AI remain disabled there, and the recipient allowlist is limited to designated test addresses. That installation exercises deployment and identity setup; the verified sent-mail result belongs to the separate personal pilot."},{"title":"Security belongs in the product design","body":"Microsoft Entra registration, reviewed permissions, mailbox scope and the application’s own authorization rules support the pilot. Workbook rows stay in browser memory; the run ledger retains hashes rather than message content. OpenAI authoring assistance uses reviewed context and excludes recipient-row values, file bytes and mailbox contents. The deterministic engine decides which workflow path runs. Microsoft Copilot is the planned default, not an implemented component or an inherited Outlook capability."},{"title":"Built as a shared engine with an Outlook interface","body":"The TypeScript monorepo pairs React, Fluent UI, React Flow and Office.js with a NestJS API and Prisma/PostgreSQL persistence. Shared packages own schema validation, row evaluation, placeholders, setup requirements and policies. Papa Parse and SheetJS handle spreadsheet inputs; MSAL and Microsoft Graph connect identity and mailbox operations. The personal pilot established specific delivered paths while broader customer acceptance and commercial distribution remain separate work."}]},{"slug":"netdump","title":"NetDump","kind":"Browser diagnostics","status":"Prototype","categories":["Infrastructure","Analytics"],"technologies":["Python","Chrome DevTools Protocol","PyWebView"],"summary":"Inspect a web application's network activity through a local desktop interface or CLI, capture selected requests and export the results for analysis.","context":"A functional private diagnostic prototype. Capture redaction, size limits and browser recovery need further work before wider distribution. No captured traffic is published here.","image":null,"sources":[{"label":"Retained project source · NetDump","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"ram-relief","title":"RAM Relief","kind":"Ubuntu memory and storage care","status":"In development","categories":["Product","Infrastructure"],"technologies":["Python","GTK","React","Linux cgroups"],"summary":"Make memory pressure and storage use understandable, with application-aware memory reclaim, protected active work and reviewable cleanup actions.","context":"Also developed under the name Memory Relief. The gallery explores the current interface; earlier beta verification does not certify every later version or supported machine.","image":null,"href":"/gallery#memory-relief","linkLabel":"Explore the gallery study","aliases":["Memory Relief"],"related":{"label":"Explore the gallery study","href":"/gallery#memory-relief"},"sources":[{"label":"Retained project source · RAM Relief","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"parsel-tongue","title":"Parsel Tongue","kind":"Python script workspace","status":"Prototype","categories":["Product"],"technologies":["Electron","React","TypeScript","Python"],"summary":"Organize Python scripts in a library, run them in sequence and interact with their input and output through a chat-style terminal.","context":"The script library, queue and process controls are implemented. Persistent history, packaging and desktop acceptance remain open. Selected scripts run with the user's permissions; this is not a sandbox.","image":null,"sources":[{"label":"Retained project source · Parsel Tongue","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"ubuntu-airplay","title":"Ubuntu AirPlay","kind":"Native receiver controller","status":"Private beta","categories":["Product","Infrastructure"],"technologies":["Python","GTK4","Libadwaita","GStreamer","UxPlay"],"summary":"Bring an AirPlay receiver into a native Ubuntu window, with embedded video and clear waiting, pairing, connected and error states.","context":"A private desktop beta built around UxPlay. Physical-device pairing, reconnect, suspend and clean-install acceptance remain separate from the source and interface checks.","image":null,"sources":[{"label":"Retained project source · Ubuntu AirPlay","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"mermaid-local","title":"Mermaid Local","kind":"Diagram editor","status":"Private alpha","categories":["Product","AI Systems"],"technologies":["Tauri","Rust","React","Monaco","Mermaid"],"summary":"Move between Mermaid source and a visual canvas, edit flowcharts, keep local history and optionally ask AI for help with a diagram.","context":"The original swimlane editor grew into a broader desktop diagram workspace. File workflows and editing foundations are implemented; native validation and release work continue.","image":null,"href":"/gallery#mermaid-local","linkLabel":"Explore the diagram study","aliases":["Mermaid Swimlanes Editor"],"related":{"label":"Explore the diagram study","href":"/gallery#mermaid-local"},"sources":[{"label":"Retained project source · Mermaid Local","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"llm-recommender","title":"LLM Hardware Advisor","kind":"Local model selection","status":"Open source","categories":["AI Systems","Infrastructure"],"technologies":["Go","Hardware detection","Model metadata"],"summary":"Match local language, vision and embedding models to a machine's CPU, memory and GPU, then rank the options around the user's task.","context":"MIT-licensed public source with a localhost web interface, CLI, JSON output and regression tests. Hardware fit and responsiveness are heuristic estimates; model metadata can be refreshed from public sources.","image":null,"aliases":["LLM Recommender"],"publicSource":"https://github.com/MRodriguez2010/llm-hardware-advisor","sources":[{"label":"Public source · LLM Hardware Advisor","detail":"Public repository and project documentation."}]},{"slug":"playxls","title":"PlayXLS","kind":"Multi-stream video workspace","status":"Private alpha","categories":["Product"],"technologies":["Python","PySide6","QtWebEngine","mpv"],"summary":"Arrange local video, network media and browser sources into flexible tiled layouts, with saved sessions, playback controls and library navigation.","context":"An Ubuntu-first private application. Packaging, sustained-use checks and support beyond the validated environment remain in development.","image":null,"sources":[{"label":"Retained project source · PlayXLS","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"pptx-template-update","title":"PPTX Template Update","kind":"Presentation automation","status":"Prototype","categories":["Product","Analytics"],"technologies":["Python","Tkinter","PowerPoint"],"summary":"Carry analysis into editable, branded client presentations: preserve template design, map chart inputs and shape the explanation around the audience.","context":"The core template-migration workflow is implemented. Recovered reporting work adds audience-specific narratives and a template-onboarding specification; the specification is not proof that every proposed feature shipped.","image":null,"href":"/work/pptx-template-update","linkLabel":"Read the reporting story","related":{"label":"Read the reporting story","href":"/work/pptx-template-update"},"story":[{"title":"Preserve the design while changing the data","body":"Named anchors and explicit mappings connect the data to a presentation template. Comparison and test values make it possible to inspect the resulting deck while preserving its visual structure."},{"title":"Write for the conversation","body":"A prospect conversation, a retention discussion and an expansion opportunity require different explanations of the same evidence. The recovered reporting work emphasizes meaningful differences and practical implications rather than repeating the values already visible in a chart."},{"title":"Turn template setup into a product workflow","body":"The onboarding specification explores how analysts could introduce and map another deck template. It extends the product direction while remaining distinct from the implemented migration workflow."}],"sources":[{"label":"ChatGPT / GitHub · reporting source","detail":"Template mapping and migration implementation."},{"label":"Claude archive · deck development","detail":"Presentation iterations and insight-writing decisions."},{"label":"Abacus archive · template onboarding","detail":"Version 2 feature design and prospect, retention and expansion reporting context."}],"parent":{"label":"Explore Full ESA reporting","href":"/work/employee-sentiment-intelligence#full-esa"}},{"slug":"py2exe","title":"Py2EXE","kind":"Python packaging assistant","status":"Prototype","categories":["Product"],"technologies":["Python","Tkinter","PyInstaller"],"summary":"Configure executable-build options, select a Python interpreter, queue builds and inspect packaging logs through a graphical interface.","context":"A Windows-oriented prototype using PyInstaller. Clean Windows build and installer acceptance have not been established by the retained source checks.","image":null,"sources":[{"label":"Retained project source · Py2EXE","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"ubuntu-speech-tools","title":"Ubuntu Speech Tools","kind":"Desktop dictation and read-aloud","status":"Private alpha","categories":["Product","AI Systems"],"technologies":["Python","Speech recognition","Text to speech","Linux desktop"],"summary":"Connect microphone dictation and selected-text read-aloud to everyday desktop work, with English and Spanish workflows and local speech processing.","context":"A private desktop utility with installation and service tooling. Microphone selection, cross-app insertion, recovery and extended interactive use still need current acceptance.","image":null,"sources":[{"label":"Retained project source · Ubuntu Speech Tools","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"video-duration-catalog","title":"Video Duration Catalog","kind":"File-manager integration","status":"Private alpha","categories":["Infrastructure","Product"],"technologies":["Python","SQLite","Nautilus"],"summary":"Show video durations in the file manager from a synchronized catalog, so browsing a network media library does not repeatedly probe every file.","context":"Implemented for an owner-operated desktop and storage environment. Portable installation and support for other environments remain future work.","image":null,"sources":[{"label":"Retained project source · Video Duration Catalog","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"dasshboard","title":"DaSSHboard","kind":"Project memory workspace","status":"In development","categories":["Product","AI Systems","Infrastructure"],"technologies":["React","TypeScript","FastAPI","SQLite"],"summary":"Find projects across machines, search their evidence, capture corrections and build a useful resume brief without losing the history behind the work.","context":"A private NAS application with project identities, source-linked notes, handoffs and recovery workflows. The running service was inspected during the archive review; a complete current owner workflow was not re-tested.","image":null,"sources":[{"label":"GitHub / PC / NAS · DaSSHboard","detail":"Project-memory source and running NAS service observed during the September 2026 review."}]},{"slug":"dashboard-products","title":"Dashboard Products & GreaterThan","kind":"Analytics and sales intelligence","status":"Prototype","categories":["Analytics","AI Systems","Product"],"technologies":["Python","FastAPI","SQLite","Chart.js"],"summary":"A family of dashboards for sentiment, pricing, demand, churn and reputation, plus a broader sales-intelligence concept connecting prospects, context and reporting.","context":"The dashboard prototypes use seeded data. GreaterThan is a larger development project; production data integrations and multi-user operation are not established by the demos.","image":null,"aliases":["Dashboard Products","GreaterThan"],"sources":[{"label":"Retained project source · Dashboard Products & GreaterThan","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"context-codec","title":"Context Codec","kind":"Agent context tools","status":"Prototype","categories":["AI Systems","Infrastructure"],"technologies":["Shell","Structured digests","Validation"],"summary":"Maintain a compact, structured digest of a long-running agent conversation, with commands for validation, updates, archives and metrics.","context":"A working protocol and shell-tool experiment. Recorded token-count arithmetic does not prove independent savings or that every detail survives summarization.","image":null,"sources":[{"label":"Retained project source · Context Codec","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"local-app-infrastructure","title":"Local App Blueprint","kind":"Local application architecture","status":"Open source","categories":["Infrastructure"],"technologies":["Docker Compose","Python","SQLite","Application templates"],"summary":"A practical starting architecture for local network apps: durable storage on an always-on server, browser clients and optional workers for heavier jobs.","context":"MIT-licensed architecture and deployment templates with a runnable Python/SQLite counter. Tests cover durable data, concurrent writes and Docker recreation. The heavy-worker template leaves the app-specific job protocol to its implementer.","image":null,"aliases":["Local App Infrastructure"],"publicSource":"https://github.com/MRodriguez2010/local-app-blueprint","sources":[{"label":"Public source · Local App Blueprint","detail":"Public repository and project documentation."}]},{"slug":"local-dev-kit","title":"Local Dev Kit","kind":"Development and release practices","status":"Blueprint","categories":["Infrastructure"],"technologies":["Development standards","Release workflows","Recovery planning"],"summary":"A repeatable development approach for private apps, connecting previews, validation, diagnostics, releases, storage and recovery.","context":"Primarily an approved specification and staged implementation plan. The proposed generator, CLI and testing runtime are not yet a completed toolkit.","image":null,"sources":[{"label":"Retained project source · Local Dev Kit","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"type-and-learn","title":"Type & Learn","kind":"Bilingual learning game","status":"Public demo","categories":["Product"],"technologies":["TypeScript","Keyboard and touch","Audio interaction"],"summary":"Turn letters and numbers into calm voice, picture, counting and imitation activities for young children, in English and Spanish.","context":"Designed for guardian-supervised play without timers, scores, ads or accounts. This is a separate project from the Room Alive gallery experience.","image":null,"href":"https://press-and-play-keys.shmiggs.chatgpt.site/","linkLabel":"Try Type & Learn","aliases":["Type & Learn Keyboard Game"],"related":{"label":"Try Type & Learn","href":"https://press-and-play-keys.shmiggs.chatgpt.site/"},"sources":[{"label":"Retained project source · Type & Learn","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"agentic-market-commander","title":"Agentic Market Commander","kind":"Research command center","status":"Prototype","categories":["Analytics","AI Systems"],"technologies":["Python","FastAPI","React","TypeScript"],"summary":"Explore research, strategy controls, portfolio simulations and model-cost visibility in a local market-analysis workspace.","context":"A simulation-only research prototype with no live order endpoint. Its interface and sample workflows do not establish investment performance.","image":null,"sources":[{"label":"Retained project source · Agentic Market Commander","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"covenant-compass","title":"Covenant Compass","kind":"Guided conversation prototype","status":"Prototype","categories":["Product","Analytics"],"technologies":["TypeScript","Deterministic scoring","Information design"],"summary":"Support a pastor-guided relationship conversation with a structured assessment, clear scoring and thoughtful information design.","context":"A private, non-clinical prototype. Portfolio examples use fictional prompts and synthetic responses; no real assessment records are exposed.","image":null,"href":"/gallery#covenant-compass","linkLabel":"Explore the gallery study","related":{"label":"Explore the gallery study","href":"/gallery#covenant-compass"},"sources":[{"label":"Retained project source · Covenant Compass","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"website-pipeline","title":"Website Pipeline","kind":"Website creation tools","status":"Prototype","categories":["Product","AI Systems"],"technologies":["Web tooling","Preview workflows","Build validation"],"summary":"Explore a coordinated website-building workflow with previews, revision controls, reusable patterns and project snapshots.","context":"A collection of historical pipeline and command-center prototypes. The wider product remains in development; the gallery demonstrates a bounded interaction concept.","image":null,"href":"/gallery#website-pipeline","linkLabel":"Explore the pipeline study","related":{"label":"Explore the pipeline study","href":"/gallery#website-pipeline"},"sources":[{"label":"Retained project source · Website Pipeline","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"video-tagger","title":"Video Tagger / WatchPage","kind":"Media review workspace","status":"In development","categories":["Product","Infrastructure"],"technologies":["Python","Web interfaces","Media catalogs","Timeline tagging"],"summary":"Connect a media catalog, playback, queues and precise timeline tags in a private review workspace backed by retained media storage.","context":"An implemented private application with a storage and worker architecture. Media files, catalog contents and personal review data remain outside the portfolio.","image":null,"href":"/gallery#video-tagger","linkLabel":"Explore the media study","aliases":["Video Tagger","WatchPage"],"related":{"label":"Explore the media study","href":"/gallery#video-tagger"},"sources":[{"label":"Retained project source · Video Tagger / WatchPage","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"signal-lost","title":"SIGNAL / LOST","kind":"Creative production lab","status":"Concept","categories":["Product"],"technologies":["Creative direction","Web concepts","Asset tooling"],"summary":"A coordinated concept set and tooling baseline for exploring interactive 3D, audio, template transformation and web production.","context":"Pre-production concept and acquisition work. The finished interactive product has not been built; licensed production assets are not redistributed here. Its implemented Envato Market API bridge has its own tooling story in this collection.","image":null,"href":"/work/envato-api-bridge","linkLabel":"Explore the implemented API bridge","related":{"label":"Explore the implemented API bridge","href":"/work/envato-api-bridge"},"sources":[{"label":"Retained project source · SIGNAL / LOST","detail":"Project implementation or design documentation reviewed for the existing portfolio catalogue. The scope note distinguishes prototypes from delivered functionality."}]},{"slug":"voice-lab","title":"Voice Lab","kind":"Python automation · desktop product","status":"Delivered","categories":["Product","Analytics"],"technologies":["Python","Tkinter","PyInstaller","PyWebView","Playwright","PowerPoint"],"summary":"From owned Python collection to a configurable desktop reporting workbench: reusable PowerPoint templates, slide bindings, versioned LLM prompts and business context, packaged for the next analyst.","context":"Recovered source and matching packaged UI resources establish the template builder, prompt versions, context uploads and reporting controls. The Windows executable was not run during this review. My account establishes installation, manager training, collection savings, continued use and working per-text-box instructions that I disabled for handoff; no quantified savings or sales uplift is claimed.","image":null,"href":"/work/voice-lab","linkLabel":"Explore the Voice Lab story","related":{"label":"Explore the Voice Lab story","href":"/work/voice-lab"},"story":[{"title":"Own the collection process","body":"The earlier workflow used platform exports and manual preparation. I developed Python collection and parsing scripts for Glassdoor and Indeed, coordinating shared Excel inputs and outputs. This brought the collection work in-house and, from my firsthand experience, removed the need to pay a third party for that collection. The later Voice Lab workflow still used an external platform as a source."},{"title":"Turn utilities into an analyst toolkit","body":"Search launchers and controllers grew into the ESA Toolkit, with a three-step Tkinter interface for project setup, search, and capture/parse/export. Configuration-driven parsing and analyst-controlled browser capture made the process easier to repeat. The recovered archive includes v5.0.7 source and executable artifacts."},{"title":"Build the tool that packages the tools","body":"My Py2EXE utility was a graphical front end to PyInstaller. It brought interpreter selection, one-file and one-folder options, hidden imports, resources, icons, version metadata, queues and build logs into one interface. The goal was practical: colleagues could run Python-based tools without installing libraries or setting up an environment. The archive does not establish that this utility produced every surviving executable."},{"title":"Carry the workflow into Voice Lab","body":"Voice Lab brought analyst-controlled browser capture, project configuration and Python reporting into a PyWebView desktop interface. Benchmark and Full ESA pipelines generated editable PowerPoint text and native charts. Employer, competitor, industry and division context, together with project focus and client or prospect framing, shaped the analytical brief. Deterministic data and chart preparation remained separate from generated narrative, with validation and analyst review before client use."},{"title":"Onboard the deck a team needs","body":"The visual Template Builder let an analyst import a PowerPoint, inspect slides and elements, bind charts and text boxes to reporting slots, assign slide roles, and adjust placement. Bindings could be copied from another template, and required mappings were validated before activation. The onboarding workflow connected data definitions and narrative choices to a template, with a supported runtime required to generate the report."},{"title":"Frame the analysis around the business","body":"Voice Lab exposed editable, versioned system prompts with rollback, prompt IDs for reporting pipelines, context-file uploads, and model settings by role. Project focus, additional context, the client or prospect relationship, services provided and business impact entered the narrative generation flow. Firm-capability context connected employee sentiment to Lockton’s advisory work, while editable prompts and team context let the interpretation fit a practice or division’s needs."},{"title":"Give each text box a specific assignment","body":"Beyond binding a text box to generated narrative, I built working per-element LLM instructions so different parts of a slide could request different analysis within the same business context. I disabled these advanced controls in the handoff release because the available training time did not cover them. This working state and release decision are my firsthand account; the recovered May 8 source verifies the hint editor but still marks its LLM connection as pending."},{"title":"Put the operating controls within reach","body":"Settings brought together prompt management, model and generation parameters, branding, color themes, workspace locations and diagnostics. Reusable templates and configurable narrative context let the reporting workflow evolve without redesigning every deck. API and other integration entries in the recovered interface include preview-only work and are not evidence that every proposed integration shipped."},{"title":"Finish the Windows delivery","body":"May 8, 2026 pilot packaging notes tie the surviving release to fixes for bundled resource paths, narrative context loading, HTTP-based LLM calls, lazy scientific-library imports and the application icon. The final release is a folder bundle containing an executable and its dependencies. Matching copies were recovered on separate devices; this establishes artifact continuity, not a new runtime acceptance test."},{"title":"Hand over a capability","body":"Voice Lab was the final app I created for Lockton. I installed it and trained my former manager to take over the workflow. As of my September 2026 account, the team still uses it to add employee sentiment analysis to client acquisition pitches. The delivery included the application, practical training and continuity for the work. The retained pilot runbook and Windows packaging instructions document setup, known limits and checks for the next analyst; they do not establish the date of the later installation and training."}],"sources":[{"label":"Collection and Toolkit archive · 2024–2026","detail":"Platform setup material, dated development conversations, standalone scrapers/parsers, GUI iterations and v5.0.7 artifacts establish the progression from manual preparation to coordinated tooling."},{"label":"Py2EXE · inspected builder source","detail":"The V4 Tkinter builder wraps PyInstaller and exposes packaging configuration. Its original creation date and use for any particular later release are not independently established."},{"label":"Voice Lab · implementation and Windows release","detail":"Migration documentation, desktop source and May 8, 2026 pilot build notes connect the browser-capture and PowerPoint workflow to the surviving packaged app. Two recovered distributions contain the same 1,020 payload files after top-level renaming."},{"label":"Packaged interface and reporting code · inspected","detail":"The packaged HTML interface, settings schema, slot catalog, prompt configuration and model-parameter file match the recovered source byte for byte. Source traces confirm template bindings, versioned prompts, context loading and project-specific narrative inputs. The interface was rendered offline with synthetic configuration; no EXE or generation backend was executed."},{"label":"Author account · delivery and ongoing value","detail":"Installation, training of my former manager, avoided third-party collection fees and continued use in client acquisition were supplied firsthand in September 2026. No dollar amount or measured sales outcome is asserted."},{"label":"Author clarification · advanced instruction controls","detail":"In September 2026 I confirmed that individual text-box instructions were operational, then disabled for the handoff release because there was insufficient training time. This is an author-reported working state; the recovered May 8 notes still list LLM consumption of element hints as pending."},{"label":"Reporting and analyst handoff records · October 2026 review","detail":"Pipeline validation, editable charts, required template mappings, pilot runbook and packaged-deployment instructions. Historical development and acceptance gaps remain distinct from my later installation and training account."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"total-rewards-analytics","title":"Total Rewards analytics","kind":"Survey data architecture","status":"Prototype","categories":["Analytics","Product"],"technologies":["Alteryx","Power BI","Survey design","Data modeling"],"summary":"Turn inconsistent survey exports into connected views of what employees value, how satisfied they are, and where benefits priorities diverge.","context":"Recovered designs and partial implementations cover normalization, importance versus satisfaction and MaxDiff. A complete production rollout is not established by the archive.","image":null,"href":"/work/total-rewards-analytics","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/total-rewards-analytics"},"story":[{"title":"Preserve the question behind the column","body":"Survey exports mixed labels, question text and encoded values. The work focused on recovering the meaning of each field before building a shared model, including MaxDiff topics embedded in HTML-like headers."},{"title":"Separate survey types, connect their meaning","body":"Importance/satisfaction, preference ranking and other response types need different structures. The proposed Alteryx branches and Power BI relationships keep those distinctions while allowing comparison by topic and industry."},{"title":"Make a benefits conversation possible","body":"The intended output connects benefits priorities to employee experience rather than collapsing every answer into one score. The archive supports the analytical design and implementation work, with production acceptance still unverified."}],"sources":[{"label":"Abacus archive · survey data architecture","detail":"Cleaning strategy, Alteryx workflow and Power BI model templates."},{"label":"ChatGPT archive · Total Rewards","detail":"Recovered project context for survey analysis and benefits reporting."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"naics-finder","title":"NAICS Finder & peer benchmarks","kind":"ESA · research and classification","status":"Prototype","categories":["Analytics","Product"],"technologies":["Python","NAICS","Power Query","Benchmark research"],"summary":"Build more useful employer comparisons by connecting company research, industry classifications and reviewed peer groups.","context":"The recovered lookup application and baseline files demonstrate the workflow. Inferred industry assignments require review; the archive is not an independent certification of every code.","image":null,"href":"/work/naics-finder","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/naics-finder"},"story":[{"title":"A benchmark starts with the comparison group","body":"The work connected an industry lookup tool with company research and peer selection. Classification revisions and competitor lists explain why the comparison group mattered before a chart was drawn."},{"title":"Carry context into the data model","body":"NAICS descriptions and codes were standardized for downstream use in Smartsheet and Power BI. Multiple industries and ambiguous company profiles remain research questions rather than automatic ground truth."}],"sources":[{"label":"Dropbox / ChatGPT · NAICS Finder","detail":"Recovered lookup application in the Lockton coding archive."},{"label":"Abacus archive · NAICS Baselines","detail":"Classification revisions, mappings and peer-company research."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"culture-taxonomy","title":"Culture & sentiment taxonomy","kind":"ESA · analytical design","status":"Prototype","categories":["Analytics","AI Systems"],"technologies":["Qualtrics","Topic models","Query design","Sentiment analysis"],"summary":"Define the themes behind employee feedback: culture, belonging, empowerment, purpose and the language people actually use.","context":"Recovered topic-model JSON and query revisions support the design work. Improved classification accuracy or a complete Qualtrics deployment was not independently measured.","image":null,"href":"/work/culture-taxonomy","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/culture-taxonomy"},"story":[{"title":"Decide what the analysis should notice","body":"A sentiment score is only useful when the underlying themes fit the question. I shaped culture and values topics, refined query language and challenged missing or duplicated concepts."},{"title":"Keep interpretation connected to evidence","body":"The archive includes original and modified Qualtrics topic models alongside Spotlight query revisions. This establishes concrete taxonomy work while leaving analytical accuracy as a separate validation question."}],"sources":[{"label":"Abacus archive · Qualtrics Culture","detail":"Original and modified topic-model JSON plus culture-query transcripts."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"esa-data-reliability","title":"Reliable ratings & Smartsheet write-back","kind":"ESA · integration engineering","status":"Implemented","categories":["Analytics","Infrastructure"],"technologies":["Python","Excel","Smartsheet API","Data quality"],"summary":"Trace missing ratings to the output layer, then write results to the right rows without erasing existing values when new data is absent.","context":"The archive preserves the diagnosis, code fragments, a mapping harness and the owner’s confirmation that the ratings fix worked. It is not a fresh execution of the historical production pipeline.","image":null,"href":"/work/esa-data-reliability","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/esa-data-reliability"},"story":[{"title":"Follow the data across the boundary","body":"Indeed ratings were present after collection but blank in the workbook. The failure was in output mapping. Restoring source-specific values to a shared schema fixed the loss without inventing metrics that the source did not provide."},{"title":"Make the write-back resilient","body":"Under my direction, the update path resolved Smartsheet columns by title, targeted retained row IDs and skipped missing values so existing values were not blanked. Analysts could inspect the spreadsheet result, confirm write-back and retain a Source Date stamp. My acceptance of the ratings fix is preserved in the development conversation."},{"title":"Connect collection to the dashboard","body":"Smartsheet acted as an interim database while the longer-term database choice was being resolved. API-connected updates supported the on-premises dashboard and an expanding set of employers."},{"title":"Make later changes explicit before writing","body":"A later agent-assisted ESA pipeline prototype introduced review gates, dry runs and insert/update/unchanged plans against separate tracker copies. Those controls are documented in source and tests; they do not establish a production rollout. An older optional replacement operation deleted and rebuilt selected rating rows, so preservation claims apply to the specific controlled update path."}],"sources":[{"label":"Claude archive · March 29 ratings fix","detail":"Diagnosis, workbook patch, Smartsheet update module and mapping checks."},{"label":"Owner account · connected dashboard","detail":"Firsthand description of Smartsheet feeding the on-premises analytical view."},{"label":"ESA pipeline source and development records · October 2026 review","detail":"Recovered write-back, Source Date, confirmation and ratings-mapping evidence; later agent-assisted prototype write plans and tracker-copy tests. No private row, sheet identifier or test dataset is published."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"scoreforge","title":"ScoreForge","kind":"Music tools & local AI","status":"Private app","categories":["Product","AI Systems"],"technologies":["Local inference","Audio processing","Notation","Docker"],"summary":"Connect instrument extraction, notation and rehearsal in a private music workspace, with heavier processing handled on a local server.","context":"The NAS application and its worker/database services were observed running. Instrument-extraction documentation records capabilities and limits; this portfolio review did not certify transcription quality or the full musician workflow.","image":null,"href":"/work/scoreforge","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/scoreforge"},"story":[{"title":"Start with the musician’s next step","body":"The product brings recorded music, selected instrument parts, notation and rehearsal into a connected workflow. The goal is to make a recording something a musician can work with."},{"title":"Move demanding work to the local system","body":"The current architecture uses NAS storage and native local inference with separate application, processing and database services. Earlier cloud/browser approaches are part of the development history rather than the current architecture."},{"title":"Make quality a product question","body":"A reachable application does not establish musical accuracy. Retained extraction notes distinguish implemented processing from listening, notation and rehearsal acceptance. Those distinctions keep the case study grounded in what the product can demonstrate."}],"sources":[{"label":"PC · ScoreForge source","detail":"Application blueprint and instrument-separation documentation."},{"label":"NAS · running application","detail":"Web, worker and database service inspection; health and sign-in checks."}]},{"slug":"signalboard","title":"MySpace 2026 / Signalboard","kind":"Expressive social product design","status":"Prototype","categories":["Product"],"technologies":["Profile customization","Design systems","Interactive prototypes","Privacy UX"],"summary":"Explore a social space where a profile feels personal, editing is expressive, and privacy choices are understandable.","context":"A deployed Phase 1 prototype with synthetic content. AI, marketplace purchases, privacy relationships and connected services are simulations rather than production integrations.","image":null,"href":"/work/signalboard","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/signalboard"},"story":[{"title":"Give personal expression useful structure","body":"Profile Studio, editing studios, mods and a code-oriented workspace explore how people could shape their own presence. Revisions and a consistent renderer help the experience stay understandable as the profile changes."},{"title":"Show privacy through context","body":"Viewer scenarios make privacy decisions visible in the interface. These are designed demonstrations, not a verified access-control backend."},{"title":"Build enough to test the experience","body":"The application was observed running on the NAS and inspected in a browser. This moves the work beyond an idea folder while preserving its actual status as an interactive product prototype."}],"sources":[{"label":"NAS · MySpace 2026 source","detail":"README, routes and renderer test files."},{"label":"Browser review · deployed prototype","detail":"Observed profile/demo interface and synthetic feature boundaries."}]},{"slug":"nicos-adventures","title":"Nico’s Adventures","kind":"Bilingual interactive storytelling","status":"Playable build","categories":["Product"],"technologies":["Unity","English / Spanish","Audio interaction","Accessibility"],"summary":"A playful room becomes a bookshelf of bilingual stories, with narration, sound exploration and controls designed for calm discovery.","context":"A private playable Linux build with five sound books and an original picture book. The retained report documents rendering, input and audio checks; physical-controller, Steam Deck and family listening acceptance remain separate.","image":null,"href":"/work/nicos-adventures","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/nicos-adventures"},"story":[{"title":"Build a place to explore","body":"The room, bookshelf and story sequence turn navigation into part of the experience. Sound interactions and a consistent route back keep the activity understandable for a young child and supervising adult."},{"title":"Treat accessibility as part of play","body":"English and Spanish text, explicit sound controls and reduced motion give families more ways to use the experience. The game is separate from the browser-based Type & Learn project."},{"title":"Keep the build and the experience connected","body":"The source and retained Linux build support a playable-work claim. Hardware and listening reviews remain distinct from automated rendering and input checks."}],"sources":[{"label":"PC · Unity project","detail":"Current README and retained playable Linux build."},{"label":"PC · storybook verification","detail":"Pip storybook report with audio, interaction and remaining acceptance notes."}]},{"slug":"video-research-pipeline","title":"Video-to-research pipeline","kind":"Media processing & retrieval","status":"Implemented","categories":["AI Systems","Infrastructure"],"technologies":["Python","Transcripts","OCR","Retrieval"],"summary":"Turn a video into timestamped transcripts, sampled frames, extracted text and connected research context.","context":"Source includes single and batch processing, retained output folders and tests. Output-folder counts are not a count of independently validated successful runs.","image":null,"href":"/work/video-research-pipeline","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/video-research-pipeline"},"story":[{"title":"Keep the timestamp with the evidence","body":"Speech, screen content and optional visual captions can be combined without losing the moment each came from. This makes later retrieval useful for checking an answer against the recording."},{"title":"Build a repeatable processing path","body":"Single-video and batch scripts support transcripts, frames, OCR and merged context. It is a focused research pipeline alongside the wider local AI platform, not a claim that all platform capabilities are activated."}],"sources":[{"label":"PC · video research source","detail":"Processing scripts, tests and retained output structure."}],"parent":{"label":"Explore local AI orchestration","href":"/work/local-ai-orchestration"}},{"slug":"cross-machine-agentops","title":"Cross-machine AgentOps","kind":"Distributed work & shared context","status":"Private app","categories":["AI Systems","Infrastructure"],"technologies":["Work queues","Shared memory","Heartbeats","NAS"],"summary":"Coordinate work and retained context across a desktop, laptop and NAS, with visible queues and service health.","context":"Source, queue/heartbeat infrastructure and a running memory dashboard were inspected. Installed upstream agents are distinguished from my integration and operations work.","image":null,"href":"/work/cross-machine-agentops","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/cross-machine-agentops"},"story":[{"title":"Make a handoff survive the machine","body":"The work connects job queues, shared knowledge and retained state across three machines. It addresses the practical problem of resuming work without relying on a single computer or conversation."},{"title":"Separate coordination from capability","body":"A reachable dashboard and worker heartbeat demonstrate an operating coordination layer. They do not prove every downstream model, tool or autonomous workflow is production-ready."}],"sources":[{"label":"NAS / laptop · AgentOps","detail":"Coordination and shared-knowledge documentation."},{"label":"NAS · runtime inspection","detail":"Queue, heartbeat and memory-dashboard evidence."}],"parent":{"label":"Explore local AI orchestration","href":"/work/local-ai-orchestration"}},{"slug":"envato-api-bridge","title":"Envato Market API bridge","kind":"Creative workflow integration","status":"Implemented","categories":["AI Systems","Infrastructure"],"technologies":["MCP","JavaScript","API schemas","Credential storage"],"summary":"Give creative tooling a structured connection to the Envato Market API, with validated operations and clear boundaries for reads, writes and downloads.","context":"The bridge implementation and test source were inspected. This component exists inside SIGNAL / LOST, whose larger cinematic product remains a concept. Market access is distinct from Elements subscription licensing.","image":null,"href":"/work/envato-api-bridge","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/envato-api-bridge"},"story":[{"title":"Turn an API schema into usable tools","body":"The bridge discovers operations, validates parameters and restricts destination URLs. This reduces fragile hand-written endpoint wiring while keeping the requested action inspectable."},{"title":"Make the action boundary explicit","body":"Read operations, writes and quota-consuming downloads have separate paths. Credential storage and response redaction support local use without putting private tokens in portfolio material."}],"sources":[{"label":"GitHub · SIGNAL / LOST tooling","detail":"Bridge, credential-store and test source in the Envato Market API package."}],"parent":{"label":"Explore SIGNAL / LOST","href":"/work#signal-lost"}},{"slug":"zen-taxonomy-tools","title":"Zen Browser taxonomy tools","kind":"Personal workspace automation","status":"Implemented","categories":["Product","Infrastructure"],"technologies":["Python","JavaScript","Migration manifests","Verification"],"summary":"Organize a large browser workspace through inventory, classification and reviewable migrations with before-and-after checks.","context":"An implemented private operations toolkit. The portfolio describes its engineering; it does not publish personal browsing data or claim a finished general-purpose product.","image":null,"href":"/work/zen-taxonomy-tools","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/zen-taxonomy-tools"},"story":[{"title":"Understand before reorganizing","body":"Inventory and classification previews turn a sprawling workspace into an explicit plan. Sanitization keeps the analysis separate from the underlying private profile."},{"title":"Make changes explainable and recoverable","body":"Migration manifests, preflight checks, verification and external rollback checkpoints connect each action to its intended result. This is the core engineering story behind the personal utility."}],"sources":[{"label":"GitHub · browser taxonomy toolkit","detail":"Inventory, sanitization, migration and verification source."}]},{"slug":"source-to-release","title":"From source to release","kind":"Engineering practice","status":"Implemented","categories":["Infrastructure"],"technologies":["Source inventories","Release validation","Recovery planning"],"summary":"Keep source ownership, validation state, backup coverage and release readiness connected across a growing body of work.","context":"The roadmap repository and portfolio checkpoints document a working delivery practice. It is process infrastructure, not a separately launched end-user product.","image":null,"href":"/work/source-to-release","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/source-to-release"},"story":[{"title":"Know which copy is authoritative","body":"Project inventories distinguish source, runtime data, backups and public exports. That makes a project easier to recover and prevents an old mirror from silently becoming the release source."},{"title":"Make a handoff reproducible","body":"Validation records, scoped checkpoints and recovery notes make the next step explicit. The multi-site cinematic portfolio is one concrete application of that practice."}],"sources":[{"label":"GitHub · project-to-product roadmap","detail":"Source audit tooling, backup records and release-readiness templates."},{"label":"GitHub · cinematic portfolio checkpoint","detail":"Multi-site source manifest and handoff documentation."}]},{"slug":"clustertile","title":"ClusterTile","kind":"Multi-machine workspace concept","status":"Concept","categories":["Product","Infrastructure"],"technologies":["Workspace design","Window coordination","Architecture"],"summary":"Explore how several machines could behave like one coordinated workspace, with deliberate window placement and shared display roles.","context":"Retained architecture notes establish a concept. Cluster-wide window control and fullscreen coordination were not established as implemented.","image":null,"href":"/work/clustertile","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/clustertile"},"story":[{"title":"Start with the workspace problem","body":"The concept investigates how multiple screens and machines could be composed into a more useful working environment. The retained material documents the intended architecture and the implementation still to be done."}],"sources":[{"label":"NAS · ClusterTile","detail":"Project README and architecture concept notes."}]},{"slug":"database-ingestion-toolkit","title":"Database Ingestion Toolkit","kind":"Data preparation utility","status":"Prototype","categories":["Analytics","Product"],"technologies":["Python","Tkinter","SQLite"],"summary":"Bring files with different schemas into a local database through a desktop interface designed to make ingestion easier to inspect.","context":"Recovered source and archive discussion support a prototype. Full data-quality coverage and sustained production operation were not established.","image":null,"href":"/work/database-ingestion-toolkit","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/database-ingestion-toolkit"},"story":[{"title":"Make the destination understandable","body":"The utility responds to a practical analyst need: files from different sources need structure, and the person importing them needs to understand where the resulting database lives. The interface brings that step into the workflow."},{"title":"Let the analyst describe the file","body":"I specified a desktop workflow with configurable header and data-start rows, hierarchical headers, multiple-key selection and an automatic-key option. Output-location control made the database destination visible. Those requirements aimed to accommodate inconsistent input files without making the analyst change source spreadsheets."},{"title":"Keep the prototype’s status clear","body":"Recovered Abacus development records include the requirements, AI-assisted Python implementation and tentative local-use feedback. Accepted database outputs, comprehensive data-quality checks and sustained operational use were not recovered, so this remains a prototype."}],"sources":[{"label":"Abacus archive · Data Prep Tools","detail":"Recovered requirements and AI-assisted Tkinter/SQLite development, including key selection, header interpretation and output-location controls. Successful sustained ingestion is not established."}]},{"slug":"esa-report-assets","title":"Report asset preparation","kind":"ESA · presentation support","status":"Prototype","categories":["Product","Analytics"],"technologies":["Python","Alteryx","Excel","PowerPoint"],"summary":"Connect client imagery, repeatable preparation and presentation templates so analysis can become a usable client deliverable.","context":"Recovered image-collection tooling, an Alteryx image macro and an Excel reporting workbook support the workflow history. The archive does not establish a single fully autonomous reporting service.","image":null,"href":"/work/esa-report-assets","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/esa-report-assets"},"story":[{"title":"Reduce the work between analysis and presentation","body":"Client-site image collection, image preparation and reporting templates addressed the practical tasks around the charts. Together they show attention to the complete delivery process, from data to a coherent deck."}],"sources":[{"label":"Dropbox · Lockton reporting tools","detail":"Client Site Image Scrapper, Image Macro and AutoPPT workbook."},{"label":"Abacus archive · reporting development","detail":"Image collection and slide-insight development records."}],"parent":{"label":"Explore the ESA system","href":"/work/employee-sentiment-intelligence"}},{"slug":"mimagery","title":"MiMagery","kind":"Creative practice","status":"Archived work","categories":["Design & Media"],"technologies":["Identity","Web design","Motion","Client experience"],"summary":"A creative-practice archive spanning MiMagery identity variations, logo animation, website design files, social media, email design, and client-facing templates.","context":"Personal creative-practice work, connecting identity, motion, web design, and the experience of working with a client.","image":null,"href":"/work/mimagery","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/mimagery"},"story":[{"title":"The work","body":"A creative-practice archive spanning MiMagery identity variations, logo animation, website design files, social media, email design, and client-facing templates."},{"title":"The approach","body":"Think beyond a single mark: build a visual language that can travel across a website, a message, a proposal, and a finished piece."}],"sources":[{"label":"Dropbox · MiMagery","detail":"Identity, motion, web and client-template archive."}]},{"slug":"villas","title":"Villas","kind":"Hospitality imagery & web assets","status":"Archived work","categories":["Design & Media"],"technologies":["Photography","Image editing","Web imagery","WordPress"],"summary":"A hospitality visual archive with finished interior, entrance, bar, and food photography, a logo, and a WordPress media library.","context":"Archived hospitality photography and digital presentation work.","image":null,"href":"/work/villas","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/villas"},"story":[{"title":"The work","body":"A hospitality visual archive with finished interior, entrance, bar, and food photography, a logo, and a WordPress media library."},{"title":"The approach","body":"Build a coherent picture of the place through space, detail, and presentation, with imagery organized for a web experience."}],"sources":[{"label":"Dropbox · Villas","detail":"Hospitality photography, logo and WordPress media archive."}]},{"slug":"snty","title":"SNTY 2016","kind":"Event communications","status":"Archived work","categories":["Design & Media"],"technologies":["Event identity","Flyers","Typography","Campaign design"],"summary":"An event-design archive containing logos and promotional flyers, including Yo Creo, Yo Creo Camp, and Abriendo Brechas.","context":"Event identity and promotional work from 2016.","image":null,"href":"/work/snty","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/snty"},"story":[{"title":"The work","body":"An event-design archive containing logos and promotional flyers, including Yo Creo, Yo Creo Camp, and Abriendo Brechas."},{"title":"The approach","body":"Use hierarchy, typography, and a consistent visual direction to make an event’s message clear at a glance."}],"sources":[{"label":"Dropbox · SNTY 2016","detail":"Event logos and promotional flyer files."}]},{"slug":"hilton-experiments","title":"Hilton Excel experiments","kind":"Spreadsheet exploration","status":"Archived work","categories":["Design & Media"],"technologies":["Excel","Lookups","Data exploration","Visualization"],"summary":"A working collection of Excel experiments covering multi-criteria lookups, visualization challenges, an email generator, and spreadsheet-based visual tools.","context":"Personal experiments and learning materials from my hospitality-era archive, using practice datasets and spreadsheet challenges.","image":null,"href":"/work/hilton-experiments","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/hilton-experiments"},"story":[{"title":"The work","body":"A working collection of Excel experiments covering multi-criteria lookups, visualization challenges, an email generator, and spreadsheet-based visual tools."},{"title":"The approach","body":"Explore how formulas, structure, and visual presentation can make repetitive work easier to understand."}],"sources":[{"label":"Dropbox · Hilton / Excel","detail":"Spreadsheet exercises, lookup experiments and visual tools."}]},{"slug":"aero","title":"aerosmartliving.com","kind":"Early business & identity exploration","status":"Concept","categories":["Design & Media"],"technologies":["Concept development","Brand research","Service positioning"],"summary":"Early planning material and identity references for an Aero Smart Living concept, with a focus on smart-home and home-services visual directions.","context":"An early business concept explored through planning and third-party identity references.","image":null,"href":"/work/aero","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/aero"},"story":[{"title":"The work","body":"Early planning material and identity references for an Aero Smart Living concept, with a focus on smart-home and home-services visual directions."},{"title":"The approach","body":"Explore positioning and identity together, considering how a service can communicate what it does before a visitor reads the details."}],"sources":[{"label":"Dropbox · Aero Smart Living","detail":"Early planning and identity references."}]},{"slug":"renewed-vision","title":"Renewed Vision media","kind":"Presentation & media workflow","status":"Archived work","categories":["Design & Media"],"technologies":["ProPresenter","Media organization","Live presentation","Curation"],"summary":"A presentation-media library organized around countdowns, foregrounds, backgrounds, images, audio, and community presentation assets.","context":"Live-media preparation and curation using Renewed Vision tools and a mixed library of community and third-party assets.","image":null,"href":"/work/renewed-vision","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/renewed-vision"},"story":[{"title":"The work","body":"A presentation-media library organized around countdowns, foregrounds, backgrounds, images, audio, and community presentation assets."},{"title":"The approach","body":"Curate and organize media for live use, where timing, readability, and consistency matter as much as the individual asset."}],"sources":[{"label":"Dropbox · Renewed Vision","detail":"Presentation library and live-media preparation assets."}]},{"slug":"youth-identity","title":"Youth identity explorations","kind":"Logo concepts","status":"Archived work","categories":["Design & Media"],"technologies":["Logo design","Illustrator","Photoshop","Identity studies"],"summary":"Youth-oriented identity studies, with sample concepts, layered Photoshop files, and an Illustrator vector file for Generación Escogida.","context":"Early identity concepts and variations from the Youth Logo Ideas collection.","image":null,"href":"/work/youth-identity","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/youth-identity"},"story":[{"title":"The work","body":"Youth-oriented identity studies, with sample concepts, layered Photoshop files, and an Illustrator vector file for Generación Escogida."},{"title":"The approach","body":"Work through variations in shape and typography, keeping the identity adaptable across screen and print."}],"sources":[{"label":"Dropbox · Youth Logo Ideas","detail":"Layered Photoshop concepts and Generación Escogida vector artwork."}]},{"slug":"la-duni","title":"La Duni","kind":"Hospitality & motion design","status":"Archived work","categories":["Design & Media"],"technologies":["After Effects","Motion design","Hospitality","Customer experience"],"summary":"Bartending experience alongside a creative archive containing an editable logo-animation project, vector artwork and a finished motion render.","context":"The retained animation source and rendered video establish motion work in the archive. The existing company identity is distinguished from original logo authorship.","image":null,"href":"/work/la-duni","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/la-duni"},"story":[{"title":"The work","body":"Bartending experience alongside a creative archive containing an editable logo-animation project, vector artwork and a finished motion render."},{"title":"The approach","body":"Carry the atmosphere of a hospitality brand into motion. The animation work adds a visual-design dimension to my experience of serving people in the same setting."}],"sources":[{"label":"Dropbox · La Duni","detail":"La Duni Logo Animate.aep, rendered MOV and vector artwork; owner hospitality account."}]},{"slug":"mach-heating-air","title":"MACH Heating & Air","kind":"Identity & vehicle graphics","status":"Archived work","categories":["Design & Media"],"technologies":["Illustrator","Identity","Vehicle graphics"],"summary":"Identity artwork, vehicle-art source and exported service graphics connect the brand to its presence on the road.","context":"The archive includes authored design files and presentation exports. Licensed van mockups are presentation materials, separate from the identity and layout work.","image":null,"href":"/work/mach-heating-air","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/mach-heating-air"},"story":[{"title":"The work","body":"Identity artwork, vehicle-art source and exported service graphics connect the brand to its presence on the road."},{"title":"The approach","body":"Think about the mark at several scales: a recognizable identity, a readable vehicle layout and the practical information a customer needs."}],"sources":[{"label":"Dropbox · MACH Heating & Air","detail":"MACH.ai, Van Art_Mach Air.ai and exported vehicle graphics."}]},{"slug":"taxes-on-the-move","title":"Taxes On The Move","kind":"Bilingual campaign system","status":"Archived work","categories":["Design & Media"],"technologies":["Bilingual design","Print","Campaigns"],"summary":"A coordinated print archive spanning identity, business cards, door hangers, yard signs, vehicle magnets and newsletters, including English-front and Spanish-back campaign pieces.","context":"Ready-for-print exports and working files document campaign preparation. Distribution, conversion and commercial outcomes are not inferred from those files.","image":null,"href":"/work/taxes-on-the-move","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/taxes-on-the-move"},"story":[{"title":"The work","body":"A coordinated print archive spanning identity, business cards, door hangers, yard signs, vehicle magnets and newsletters, including English-front and Spanish-back campaign pieces."},{"title":"The approach","body":"Keep recognition and hierarchy consistent while adapting the message to language, viewing distance and the physical format."}],"sources":[{"label":"Dropbox · Taxes On The Move","detail":"Print-production folders and English/Spanish exports."}]},{"slug":"lockton-fabrication","title":"Lockton · design to fabrication","kind":"Event objects & 3D-print preparation","status":"Archived work","categories":["Design & Media"],"technologies":["Illustrator","SVG","3MF","Physical design"],"summary":"SOC earring designs and PRIDE keychain/bag-tag work connect Illustrator and SVG artwork to front/back 3MF print models.","context":"Vector and fabrication files establish design and print preparation. Finished-object photography and event distribution are not established by the inspected files.","image":null,"href":"/work/lockton-fabrication","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/lockton-fabrication"},"story":[{"title":"The work","body":"SOC earring designs and PRIDE keychain/bag-tag work connect Illustrator and SVG artwork to front/back 3MF print models."},{"title":"The approach","body":"Adapt a graphic for physical form, considering shape, scale and the transition from flat artwork to a prepared model."}],"sources":[{"label":"Dropbox · Lockton · design to fabrication","detail":"SOC 2025 earring artwork and models; PRIDE keychain/bag-tag vectors and final 3MF."}]},{"slug":"972-clothing","title":"972 Clothing","kind":"Retail creative archive","status":"Archived work","categories":["Design & Media"],"technologies":["Photography","Identity","Retail","Web assets"],"summary":"An archive spanning logo work, photoshoots, promotional materials, store content and website assets.","context":"Retained project folders establish the range of material. They do not independently establish business ownership, sales results or authorship of every reference asset.","image":null,"href":"/work/972-clothing","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/972-clothing"},"story":[{"title":"The work","body":"An archive spanning logo work, photoshoots, promotional materials, store content and website assets."},{"title":"The approach","body":"Explore how photography and identity can hold together across a retail campaign and its digital presentation."}],"sources":[{"label":"Dropbox · 972 Clothing","detail":"Logo, photoshoot, promotional, store and website project folders."}]},{"slug":"cloudcap","title":"CloudCap","kind":"Physical product exploration","status":"Prototype","categories":["Design & Media"],"technologies":["3D modeling","Prototyping","Cost modeling"],"summary":"Product and display models in STL and 3MF, supported by cost calculators and branding exploration for a smoking accessory.","context":"A product-prototyping archive. Planning and AI-assisted marketing notes are not evidence of launch, sales or product safety.","image":null,"href":"/work/cloudcap","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/cloudcap"},"story":[{"title":"The work","body":"Product and display models in STL and 3MF, supported by cost calculators and branding exploration for a smoking accessory."},{"title":"The approach","body":"Connect shape, print preparation, presentation and cost considerations while exploring how a small physical product could be made."}],"sources":[{"label":"Dropbox · CloudCap","detail":"STL/3MF product and display files, cost workbooks and planning documents."}]},{"slug":"hud-motion","title":"HUD motion study","kind":"Motion graphics & compositing","status":"Archived work","categories":["Design & Media"],"technologies":["After Effects","Compositing","Motion design"],"summary":"An After Effects project and rendered driving sequence explore a heads-up-display visual treatment.","context":"A motion and compositing study, not a working vehicle HUD or live driving-assistance system.","image":null,"href":"/work/hud-motion","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/hud-motion"},"story":[{"title":"The work","body":"An After Effects project and rendered driving sequence explore a heads-up-display visual treatment."},{"title":"The approach","body":"Use composition, timing and layered interface graphics to make an imagined information display read within moving footage."}],"sources":[{"label":"Dropbox · HUD motion study","detail":"HUD Project.aep and HUD Drive.mov."}]},{"slug":"sephora-team-media","title":"Sephora · team media","kind":"Video & internal communications","status":"Archived work","categories":["Design & Media"],"technologies":["Video editing","Typography","Compositing"],"summary":"A retained video edit, title renders and layered “We Miss You” artwork document creative work around team communication.","context":"Team-media work in the personal archive. Corporate commissioning and original authorship of licensed or stock elements are not implied.","image":null,"href":"/work/sephora-team-media","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/sephora-team-media"},"story":[{"title":"The work","body":"A retained video edit, title renders and layered “We Miss You” artwork document creative work around team communication."},{"title":"The approach","body":"Bring pacing, imagery and typography together around a message meant for people who know one another."}],"sources":[{"label":"Dropbox · Sephora · team media","detail":"Finished video, title renders, editing notes and layered artwork."}]},{"slug":"gipsy-lime","title":"Gipsy Lime","kind":"Menu & information design","status":"Archived work","categories":["Design & Media"],"technologies":["Menu design","Print","Hospitality"],"summary":"Retained menu documents, a menu PDF and a supporting identity folder connect hospitality experience with practical information design.","context":"An archived menu-design project. The retained files do not establish a current menu, current pricing or an ongoing client engagement.","image":null,"href":"/work/gipsy-lime","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/gipsy-lime"},"story":[{"title":"The work","body":"Retained menu documents, a menu PDF and a supporting identity folder connect hospitality experience with practical information design."},{"title":"The approach","body":"Use ordering, hierarchy and legibility to make a dense set of choices easier to explore."}],"sources":[{"label":"Dropbox · Gipsy Lime","detail":"2016 menu files, 2017 update document and logo folder."}]},{"slug":"project-lit","title":"Project Lit","kind":"Poster & composition studies","status":"Archived work","categories":["Design & Media"],"technologies":["Photoshop","Posters","Composition"],"summary":"Layered poster studies, variations and rendered pieces document an archive of visual experimentation.","context":"A mixture of personal studies, references and templates. Individual pieces need attribution before the original images are exhibited; the project record does not claim authorship of reference imagery.","image":null,"href":"/work/project-lit","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/project-lit"},"story":[{"title":"The work","body":"Layered poster studies, variations and rendered pieces document an archive of visual experimentation."},{"title":"The approach","body":"Explore typography, imagery and contrast through alternate compositions, keeping the working layers as part of the creative record."}],"sources":[{"label":"Dropbox · Project Lit","detail":"Layered sample PSDs, poster studies and rendered folders."}]},{"slug":"photography-practice","title":"Photography practice","kind":"A visual archive","status":"Archived work","categories":["Design & Media"],"technologies":["Photography","Selection","Image editing"],"summary":"A curated photography archive organized by subject supports a broader practice of image-making alongside hospitality and brand work.","context":"The archive contains personal and mixed-source material. This entry records the practice; it does not expose private photographs or assign blanket authorship to the entire library.","image":null,"href":"/work/photography-practice","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/photography-practice"},"story":[{"title":"The work","body":"A curated photography archive organized by subject supports a broader practice of image-making alongside hospitality and brand work."},{"title":"The approach","body":"Use selection, framing and editing to build coherent visual sequences rather than treating every photograph as an isolated asset."}],"sources":[{"label":"Dropbox · Photography practice","detail":"Subject-based photography archive and portfolio selections."}]},{"slug":"lead-management-ux","title":"Lead Management UX","kind":"Interface design study","status":"Prototype","categories":["Design & Media"],"technologies":["Adobe XD","Photoshop","UX design"],"summary":"A layered interface draft and an External Lead Controller prototype explore how a lead-management workspace could be organized.","context":"Photoshop and Adobe XD design artifacts establish an interface prototype. A deployed CRM or connected production workflow was not established.","image":null,"href":"/work/lead-management-ux","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/lead-management-ux"},"story":[{"title":"The work","body":"A layered interface draft and an External Lead Controller prototype explore how a lead-management workspace could be organized."},{"title":"The approach","body":"Use information hierarchy and screen structure to help a user move from a record to an action."}],"sources":[{"label":"Dropbox · Lead Management UX","detail":"Draft.psd and External Lead Controller.xd."}]},{"slug":"microgive","title":"microGIVE","kind":"Product interface prototype","status":"Prototype","categories":["Design & Media"],"technologies":["Adobe XD","Product design","Prototyping"],"summary":"A retained Adobe XD prototype preserves interface exploration under the microGIVE name.","context":"The inspected source establishes a design artifact. Its complete feature scope, backend implementation and launch were not established.","image":null,"href":"/work/microgive","linkLabel":"Read the project notes","related":{"label":"Read the project notes","href":"/work/microgive"},"story":[{"title":"The work","body":"A retained Adobe XD prototype preserves interface exploration under the microGIVE name."},{"title":"The approach","body":"Use the prototype as a concrete starting point for discussing hierarchy, flow and interaction rather than leaving the idea only in notes."}],"sources":[{"label":"Dropbox · microGIVE","detail":"microGIVE.xd in the retained prototype archive."}]},{"slug":"miguel-themes","title":"Miguel · design archive","kind":"Portfolio · design exploration","status":"Archived work","categories":["Websites","Design & Media"],"technologies":["React","Next.js","Responsive design"],"summary":"A browsable collection of portfolio design directions, each with its own typography, composition, and interaction language.","context":"Explore the rendered designs as complete website experiences. The archive contains finished demonstrations, without template or source downloads.","image":"/media/websites/miguel-themes.webp","href":"/work/miguel-themes","linkLabel":"Read project story","story":[{"title":"Explore several ways to tell the same story","body":"The design archive collects portfolio directions with different approaches to typography, composition, navigation, and motion. Browsing a complete rendered theme makes those choices easier to judge than a screenshot: visitors can see how a direction handles information density, reading rhythm, and transitions between sections."},{"title":"Compare experiences in context","body":"Each direction remains a navigable website experience with its own presentation. The gallery provides a common entry point so a visitor can open a design, explore its pages, and return to compare another. The collection preserves the evolution of the portfolio without replacing the current production identity."},{"title":"Keep the collection separate from the main visit","body":"Theme applications load only after a visitor opens the archive. The main portfolio shows a lightweight preview and project description. This allows a substantial collection of design experiments to remain available without including every theme’s code and imagery in an ordinary homepage visit."},{"title":"Respect the difference between a showcase and a template library","body":"The archive presents cleared rendered designs and assets. It does not distribute theme source, private downloads, or licensed template packages. Some directions build on licensed references, so the collection is described as design exploration and adaptation rather than a wholly original, redistributable component library."},{"title":"Preservation and verification","body":"The maintained edition preserves its routes independently from the original source backup. All 33 hosted theme pages were inspected at phone and desktop widths for geometry, loaded images, and expected content. The demonstrations identify their archive status and remain outside search indexing; this portfolio story supplies the public context."}],"sources":[{"label":"Maintained archive edition","detail":"Rendered website, retained source, route checks, and archive verification. Demonstration behavior is separate from live business operations."}],"parent":{"label":"Open the archived demonstration","href":"https://archive.miguel.systems/miguel-themes/"}},{"slug":"corner-press","title":"Corner Press","kind":"Sandwich shop · fictional concept","status":"Archived work","categories":["Websites","Design & Media"],"technologies":["React","Next.js","Responsive design"],"summary":"A warm neighborhood sandwich-shop identity with a playful menu, category filters, and a clear ordering journey.","context":"A fictional restaurant concept with sample menu content and browser-local demonstration actions.","image":"/media/websites/corner-press.webp","href":"/work/corner-press","linkLabel":"Read project story","story":[{"title":"A neighborhood identity with its own voice","body":"Corner Press is a fictional sandwich-shop concept built around warm typography, playful illustration, and a compact neighborhood feel. The visual direction is carried through the homepage, menu, story, and visit information. It demonstrates a coherent brand experience without borrowing the operational identity of an existing client."},{"title":"Organize around the customer’s task","body":"The site separates menu discovery, party subs, the shop story, gear, careers, and visit planning into focused routes. A visitor can move directly to the information they need instead of scanning one long page. Shared navigation connects those routes, with layouts and controls adapted for small screens."},{"title":"A menu visitors can explore","body":"The menu combines category filters with searchable items so visitors can narrow the selection and compare descriptions. The interface keeps the food and labels prominent while using the brand’s type and illustration for character. Menu content is sample material, and the demonstration does not make claims about real availability or prices."},{"title":"A complete demonstration, safely bounded","body":"The archive retains page navigation, filtering, and the customer journey. Demonstration actions use local fictional behavior, with an archive notice explaining the context. They do not place orders, send career enquiries, charge visitors, or contact a business. The original source is preserved separately from the hosted edition."},{"title":"What this concept demonstrates","body":"My contribution includes the fictional identity, route structure, responsive frontend, and archive adaptation. It shows how a restaurant website can have an individual personality while remaining useful for a quick menu or visit decision. No live restaurant launch, sales results, or conversion improvement is claimed."}],"sources":[{"label":"Maintained archive edition","detail":"Rendered website, retained source, route checks, and archive verification. Demonstration behavior is separate from live business operations."}],"parent":{"label":"Open the archived demonstration","href":"https://archive.miguel.systems/corner-press/"}},{"slug":"ginos-subs","title":"Gino’s Subs","kind":"Restaurant · heritage direction","status":"Archived work","categories":["Websites","Design & Media"],"technologies":["React","Next.js","Responsive design"],"summary":"A heritage-inspired sandwich-shop experience with an illustrated identity, searchable menu, and generous food photography.","context":"Explore menu discovery and the restaurant journey in a self-contained demonstration. Sample actions do not place orders or contact the business.","image":"/media/websites/ginos-subs.webp","href":"/work/ginos-subs","linkLabel":"Read project story","story":[{"title":"Translate a heritage direction into a usable site","body":"Gino’s Subs explores an expressive sandwich-shop identity with an illustrated mark, strong typography, generous food imagery, and a heritage-inspired presentation. The goal was to make the direction feel consistent across a complete browsing experience rather than stopping at a logo treatment or homepage mockup."},{"title":"Give the menu its own space","body":"A searchable menu and category controls make browsing a focused task. Supporting routes give the shop story, group-order guidance, merchandise, visit details, and careers their own context. Shared navigation lets a visitor move between practical information and the brand story without losing their place."},{"title":"Design the same journey for a phone","body":"The responsive layout reflows the menu and supporting content for narrow screens. The archive keeps the menu controls and navigation available as working browser interactions. Food photography supports recognition and atmosphere while readable labels explain what each section offers."},{"title":"Preserve interaction without implying live service","body":"The published archive is a self-contained demonstration. Sample actions do not place orders, make payments, or contact the business. Its separate source backup preserves the original implementation, while the demonstration edition keeps the browsable design accessible from the portfolio."},{"title":"Scope and evidence","body":"This project demonstrates a restaurant design direction and frontend implementation, not an operational ordering platform. The archive was built and checked as part of the website preservation work. Business approval, launch, measured conversion results, and physical-device acceptance are separate from that evidence."}],"sources":[{"label":"Maintained archive edition","detail":"Rendered website, retained source, route checks, and archive verification. Demonstration behavior is separate from live business operations."}],"parent":{"label":"Open the archived demonstration","href":"https://archive.miguel.systems/ginos-subs/"}},{"slug":"room-alive","title":"Room Alive","kind":"Interactive prototype","status":"Interactive prototype","categories":["Design & Media"],"technologies":["Unity","C#","Interaction"],"summary":"A small world of discovery. An interactive room built to explore play, detail, and atmosphere through 3D art and interaction.","context":"Portfolio vignette using owned artwork. Physical-device and audible-narration acceptance remain open.","image":"/media/story/room-alive.png","href":"/gallery#room-alive","linkLabel":"Explore this study"},{"slug":"miguel-systems-studio","title":"miguel.systems Studio","kind":"Private website administration","status":"In development","categories":["Product","Infrastructure"],"technologies":["React","TypeScript","Node.js","Versioned content","SEO diagnostics"],"summary":"An owner workspace for editing a living portfolio: pages, project stories, media, node collections, previews, and controlled publication in one place.","context":"The private application is deployed and its core editing workflows have been verified locally. Hosted owner acceptance and connected Google reporting remain in progress. This case study presents product design and engineering decisions; the administration service and its records are not a public demonstration.","image":null,"href":"/work/miguel-systems-studio","linkLabel":"Read project story","story":[{"title":"The problem: the website outgrew its editing workflow","body":"A portfolio with interactive stories, a movable node explorer, project galleries, and archived websites needs more than a collection of text fields. Repeated catalogs make a simple correction difficult to apply consistently. I designed Studio around the owner’s actual tasks: find a page or project, make a change, inspect it in context, and choose when visitors should see it."},{"title":"One content model across several experiences","body":"Pages, project records, website variants, node settings, and shared site content live in a versioned document. The reading pages and explorer consume the same published model. A project title or description can be edited once while each surface retains its own layout and interactions. The content remains exportable instead of being confined to a proprietary editing service."},{"title":"An editor organized around the site","body":"The workspace separates Pages, Nodes, Projects & Archives, Media, SEO, Analytics, Releases, and Settings. Global navigation, footer information, résumé links, project stories, galleries, and appearance settings have dedicated editing paths. Visual controls work alongside structured forms so the owner can choose the most appropriate way to change content."},{"title":"Node controls with a clear owner boundary","body":"The node editor manages collection membership, labels, imagery, order, authored positions, emphasis, color, scale, camera framing, motion, and interaction preferences. Owner defaults and visitor rearrangements remain separate. Collection links describe genuine membership, while Find, keyboard controls, and the phone experience provide other ways to reach the work."},{"title":"Preview, publish, and recover","body":"Draft changes remain private until publication. Revision checks identify conflicting edits, and validation happens before a complete revision becomes public. Failed publication leaves the previous release available. The local workflow covers saving, refreshing, previewing, publishing, and restoring a previous state; session expiry and concurrent edits are included in that verification."},{"title":"Measurement with honest evidence","body":"SEO tools inspect canonical routes, metadata, indexing, and dated performance diagnostics. Reporting distinguishes unavailable data from a successful result. Google reporting is a connection workflow under development, not a claim that live analytics are already populated. A technical SEO score is evidence about checks, not a promise about rankings or business outcomes."},{"title":"A reusable foundation","body":"The visual editor, renderer, content layer, and recovery format are separate packages with a portfolio-specific integration. Storage is accessed through adapters. An independent sample exercises reuse outside this site, while the portfolio retains its existing React behavior. Authentication, draft access, and publication decisions are enforced on the server."},{"title":"A production incident on iPhone","body":"After a content-loading change, the portfolio homepage sometimes flashed into view and then failed during startup on iPhone. Refreshing could trigger the failure even after a successful visit. Browser Lab still worked. The requirement was to restore the animated homepage and free exploration, not replace them with a permanently simplified phone experience."},{"title":"From a blank screen to actionable evidence","body":"The first recovery work made failure visible and kept a reading view available; it did not resolve the cause. Opt-in diagnostic reports added a build identifier, stable error code, browser capabilities, and sanitized stack locations. Mapping those locations to the exact release first pointed to navigation initialization. A targeted correction moved the failure to a React reference in the same shared header, showing that the problem extended beyond menu data. Normal browser feature probes passed. Cold loads, cached refreshes, and delayed content requests became separate test cases."},{"title":"The cause: asynchronous module initialization","body":"The evidence pointed to a startup race after published content began loading through top-level await in a shared browser module. Concurrent imports could expose module references before initialization completed on affected WebKit versions. The changing failure locations and the upstream WebKit report “Fixing top-level await in Safari” supported that diagnosis. The exact natural phone timing was not reproduced in the local browser engine, so the explanation is an evidence-backed diagnosis rather than a claim of a deterministic laboratory reproduction."},{"title":"The solution: initialize content before the application","body":"Startup now loads and validates one immutable published content snapshot before importing the React application. Shared content modules initialize synchronously. A build check rejects top-level await in browser chunks, and an entry-contract check prevents silent drift in the startup integration. Recovery can render before React starts, while server-rendered reading content remains available if enhancement fails. The existing animations, menus, and free-explore interactions were preserved."},{"title":"Verification beyond a successful first load","body":"The corrective release passed 154 automated tests, build, type, and lint checks. WebKit and Chromium checks covered initial loads and five cached reloads, delayed or failed content requests, navigation, and free-explore controls. Responsive checks covered small phones through desktop widths. These were browser tests, not a substitute for a physical device. The owner then confirmed successful use on iPhone in both Chrome and Safari and reported successful visits on other people’s phones. That real-device feedback closed this incident; broader dashboard acceptance remains separate."},{"title":"Useful diagnostics without collecting private records","body":"Diagnostics are assembled locally from a limited set of allowed fields, and the visitor chooses whether to copy a report. They exclude credentials, cookies, stored visitor content, and raw error-message payloads. The public case study explains the engineering decisions without publishing private administration routes, infrastructure identifiers, or client records. The lesson was to separate failure recovery from correction, verify startup ordering, and test refreshes as carefully as first visits."},{"title":"What this work demonstrates","body":"My contribution spans product structure, visual editing, content modeling, publishing behavior, and operational verification. The result is a working private foundation with explicit acceptance limits. Facebook Business and chatbot connections remain future extension ideas; they are not presented as active integrations."}],"sources":[{"label":"Implementation and bounded verification","detail":"Reviewed editor, application, and verification source. This story distinguishes implemented capabilities from pending integration and owner acceptance."}]},{"slug":"react-visual-editor","title":"Reusable React Visual Editor","kind":"Visual editing toolkit","status":"Implemented","categories":["Product","Infrastructure"],"technologies":["React","TypeScript","Craft.js","Responsive styles","Component registration"],"summary":"A component-aware visual editor that combines a layers panel, canvas, and properties controls while preserving the behavior of existing React experiences.","context":"Implemented as private reusable packages with an independent local sample. This is not a released public npm package or an unrestricted no-code application builder. Licensed reference designs and client assets are not redistributed as editor components.","image":null,"href":"/work/react-visual-editor","linkLabel":"Read project story","story":[{"title":"Edit the experience without flattening it","body":"A conventional page builder works well for text and images but can erase the value of an existing interactive application. I built an editor that treats native React experiences as registered components. Their behavior remains in application code while approved content and design properties become editable in context."},{"title":"Layers, canvas, and properties","body":"Craft.js provides component composition and serialized canvas state. The surrounding interface supplies a layer hierarchy, selection, inline text editing, duplication, grouping, placement, and property controls. The canvas is paired with a reusable renderer so a saved page can be displayed without loading the editor interface for ordinary visitors."},{"title":"Responsive design as authored state","body":"The properties model covers layout, spacing, typography, colors, backgrounds, borders, shadows, visibility, and breakpoint overrides. Desktop, tablet, and phone previews help the owner inspect how decisions behave across widths. Undo and redo make experimentation reversible, and saved page state can be exported and imported."},{"title":"A bridge to existing application components","body":"Stable element registration connects selected parts of the portfolio to a native design inspector. Bound text, links, and images are editable while scoped styles apply to the intended page or shared component. The editor exposes declared capabilities rather than treating arbitrary JavaScript entered by an owner as page content."},{"title":"Composition and application behavior","body":"A content author can rearrange supported components and adjust their presentation. A new calculator, integration, or application workflow still requires implementation in code. This boundary keeps the editing model understandable and makes it possible to validate a document before publication without claiming that every behavior can be created by dragging blocks."},{"title":"Proof outside the portfolio","body":"The separate Field Notes sample uses the same packages with a different set of content and components. Local browser checks exercised persistence, grouping, keyboard resizing, breakpoint behavior, and export/import handling. That sample demonstrates reuse; it is a verification fixture rather than a separate inflated portfolio project."},{"title":"Integration and current limits","body":"Studio connects the editor to private drafts, previewing, and revision-based publication. The reusable package can be integrated with another storage adapter or personal project. Native layer selection and property editing are available; direct text picking remains outside the verified feature set. Public packaging and broader browser acceptance remain separate release work."}],"sources":[{"label":"Implementation and bounded verification","detail":"Reviewed editor, application, and verification source. This story distinguishes implemented capabilities from pending integration and owner acceptance."}]},{"slug":"website-archive-toolkit","title":"Website Archive & Migration Toolkit","kind":"Website preservation system","status":"Implemented","categories":["Product","Infrastructure"],"technologies":["Static builds","Node.js","Route validation","Source recovery","Browser-local demos"],"summary":"A repeatable process for preserving complete websites as lightweight, browsable demonstrations, with verified source backups and continuity for their original addresses.","context":"Ten archive editions are published across seven website families. The tooling is maintained privately with those editions; it has not been extracted as a general public distribution. Demonstrations contain approved presentation material and fictional interactions, while original records and licensed source remain private.","image":null,"href":"/work/website-archive-toolkit","linkLabel":"Read project story","story":[{"title":"Keep the experience, not just a screenshot","body":"A screenshot cannot show navigation, a language switch, a menu filter, or a complete customer journey. The archive preserves those interactions while allowing the main portfolio to remain lightweight. Visitors load a cover and description first; a full demonstration loads only when they choose to open it."},{"title":"Preserve before transforming","body":"The preservation process records exact source versions, dependency lockfiles, assets, route maps, and recovery instructions. Original histories remain intact. Fresh checkouts and frozen dependency builds verify that a backup can be used again. Private runtime data has a separate protected backup path because a source repository alone cannot restore an application’s records."},{"title":"Build an isolated demonstration edition","body":"Each archive is built from a maintained edition separate from the original source. Pages, responsive layouts, navigation, and useful browser interactions are retained. Workflows that formerly required a service are replaced with fictional local state, so visitors can explore the interaction without sending enquiries, taking payments, or altering client records."},{"title":"Group variants without losing their identity","body":"The archive contains ten demonstrations: Seren’s Fades; the Templo website and review tool; Dino’s Subs; the Miguel design archive; ULC Standard, Premium, and Dashboard; Corner Press; and Gino’s Subs. Related variants remain one project family in the portfolio while keeping their individual destinations and visual direction."},{"title":"Make migration recoverable","body":"Small forwarding services preserve previous addresses after archive verification. Deep links are mapped where corresponding pages exist. Release records identify the exact source and deployment, along with the version to restore. Original access audiences are retained rather than making private material public as a side effect of moving it."},{"title":"Give search engines the right destination","body":"Archive editions identify themselves as demonstrations and use noindex. Substantive project stories on the portfolio provide the search destinations and explain the work in context. This separates a preserved design experience from an active client business site without publishing private business circumstances."},{"title":"Verify the user journeys","body":"Build checks are paired with route and asset read-backs, responsive inspection, and sample workflow checks. The current hosted editions passed 181 route and asset checks; original-address forwarding was checked separately. The theme collection was inspected at phone and desktop widths. These are bounded verification results, not a blanket claim about every physical device."},{"title":"Reuse without redistributing client work","body":"The reusable ideas are build adapters, isolated demo behavior, route validation, source provenance, and recovery receipts. Client source, private review material, and licensed design assets stay with their appropriate private backups. Extracting a public toolkit would require a separate clean package and fictional examples."}],"sources":[{"label":"Implementation and bounded verification","detail":"Reviewed editor, application, and verification source. This story distinguishes implemented capabilities from pending integration and owner acceptance."}],"parent":{"label":"Explore the website collection","href":"/websites"}},{"slug":"content-media-recovery","title":"Content & Media Recovery Toolkit","kind":"Portable website recovery","status":"Implemented","categories":["Product","Infrastructure"],"technologies":["Node.js","Streaming data","JSON","Content validation","Storage adapters"],"summary":"A portable recovery format for website content, revision history, and media, with integrity checks and staged restoration before anything becomes public.","context":"The reusable recovery package and portfolio adapters have passed local export, import, and exact-byte restoration checks. Browser file-selection acceptance and the hosted owner restoration exercise remain separate gates. Recovery archives are private owner data and are not offered for public download.","image":null,"href":"/work/content-media-recovery","linkLabel":"Read project story","story":[{"title":"A repository is only one part of recovery","body":"Application code, published content, drafts, revision history, and uploaded images can live in different places. Restoring only the repository may leave the website incomplete. I built a recovery path that carries the editable state and its media together while keeping the matching application source as a separate, versioned dependency."},{"title":"Stream the package","body":"The Node.js package writes a compressed sequence of structured records. It works with asynchronous streams so the complete archive does not need to be held in memory. Records describe the document, historical revisions, and media, followed by a completion receipt that lets the reader verify that the export finished."},{"title":"Validate before activation","body":"Imports check the format, record limits, counts, byte lengths, and integrity digests. The portfolio adapter also validates document structure, media inventory, image decoding, and allowed asset paths. An interrupted, malformed, or conflicting import remains staged privately instead of replacing an existing published website."},{"title":"Restore a draft, then decide","body":"A successful import restores editable draft state. Publication is a separate validated action. Historical snapshots are retained with their provenance and can be restored into a new current revision. This gives the owner a chance to inspect recovered content, images, and page behavior before visitors see any change."},{"title":"Preserve media and bundled assets","body":"The current format covers managed images and the application’s registered bundled public assets. A separate extraction command can restore bundled files into a new directory while validating their paths and bytes. Application code and runtime credentials are outside the package; a complete recovery still uses the matching source backup and owner-controlled configuration."},{"title":"Keep storage replaceable","body":"The core archive format is independent of React and the portfolio database. Adapters translate storage-specific documents, revision records, and media objects into the stream. That separation makes the package useful for another personal application without copying the entire portfolio or its administration interface."},{"title":"Test failure as well as success","body":"Verification restores content and images into fresh local storage and compares the recovered bytes. It also exercises truncation, checksum damage, media collisions, concurrent edits, and transaction failures. A full local application round trip preserved revisions and media, then restored the original baseline; exporting alone was not treated as proof of recovery."},{"title":"Know what the evidence means","body":"A generated file, a verified import, a backup copied to its destination, and a successful owner recovery exercise are different events. The tooling reports those boundaries explicitly. Exported private content requires protected storage, and the public case study describes the design without exposing recovery files or operational access details."}],"sources":[{"label":"Implementation and bounded verification","detail":"Reviewed editor, application, and verification source. This story distinguishes implemented capabilities from pending integration and owner acceptance."}]}],"websites":[{"slug":"u1-mechanical","title":"U1 Mechanical","industry":"HVAC · website & webapps","status":"Hosted owner-review preview","image":"/media/websites/u1-mechanical.png","summary":"A redesigned customer website connected to an owner dashboard and field app, with a verified GoDaddy + Neon rollout.","detail":"Mobbin-informed UX, a React and Next.js frontend, and a Prisma/Neon backend. Follow the research, failed attempts, targeted fixes, and successful hosted owner login. Production acceptance remains open.","links":[{"label":"View U1 website preview","href":"https://new.u1mechanical.com/"}],"caseStudy":"/work/u1-mechanical"},{"slug":"ultimate-lawncare","title":"Ultimate Lawncare","industry":"Lawn & garden care","status":"Archived website demonstration","image":"/media/websites/ultimate-lawncare.webp","summary":"Three archived website tiers: Essentials, Standard, and Premium, from a focused one-page site to multi-page service journeys and interactive quotes.","detail":"Compare three levels of website scope. Essentials brings services, project photography, reviews, and a sample quote form into one page. Standard adds dedicated service and lawn-care pages. Premium adds care plans and an interactive quote builder. All three are fully navigable archive demos with browser-only sample requests. The owner dashboard is a separate demonstration.","links":[{"label":"Essentials website","href":"https://archive.miguel.systems/ultimate-lawncare-essentials/"},{"label":"Standard website","href":"https://archive.miguel.systems/ultimate-lawncare-standard/"},{"label":"Premium website","href":"https://archive.miguel.systems/ultimate-lawncare-premium/"},{"label":"Dashboard demo","href":"https://archive.miguel.systems/ultimate-lawncare-dashboard/"}],"caseStudy":"/work/ultimate-lawncare","archive":true},{"slug":"serens-fades","title":"Seren’s Fades","industry":"Mobile barber · DFW","status":"Archived website demonstration","image":"/media/websites/serens-fades.webp","summary":"A bold barber identity carried into a mobile-service website, with a clear service menu, travel information, and contact path.","detail":"The Modern Heritage direction brings the brand’s typography and identity into a mobile-barber experience, alongside alternative design directions. Contact actions demonstrate the journey without sending messages.","links":[{"label":"Explore the website","href":"https://archive.miguel.systems/serens-fades/"}],"caseStudy":"/work/serens-fades","archive":true},{"slug":"templo-de-cristo","title":"Templo de Cristo","industry":"Bilingual church website","status":"Archived website demonstration","image":"/media/websites/templo-de-cristo.webp","summary":"A Spanish-first church experience with English switching, worship media, ministry information, and a welcoming first-visit journey.","detail":"Explore the Spanish-first website with English switching, then try section feedback and review insights using fictional responses. Original stakeholder records remain private.","links":[{"label":"Explore the website","href":"https://archive.miguel.systems/templo-de-cristo/"},{"label":"Try the review tool","href":"https://archive.miguel.systems/templo-de-cristo-review/"}],"caseStudy":"/work/tdc-design-review","archive":true},{"slug":"dinos-subs","title":"Dino’s Subs","industry":"Restaurant · Arlington","status":"Archived website demonstration","image":"/media/websites/dinos-subs.webp","summary":"A heritage-led restaurant redesign with searchable menu discovery, party-sub planning, and useful visit information.","detail":"Explore the heritage-led menu, restaurant story, and party-sub planning. This archived redesign is independent of the restaurant’s production website; sample actions stay in your browser.","links":[{"label":"Explore the restaurant","href":"https://archive.miguel.systems/dinos-subs/"}],"caseStudy":"/work/dinos-subs","archive":true},{"slug":"miguel-themes","title":"Miguel · design archive","industry":"Portfolio · design exploration","status":"Archived website demonstration","image":"/media/websites/miguel-themes.webp","summary":"A browsable collection of portfolio design directions, each with its own typography, composition, and interaction language.","detail":"Explore the rendered designs as complete website experiences. The archive contains finished demonstrations, without template or source downloads.","links":[{"label":"Explore the design archive","href":"https://archive.miguel.systems/miguel-themes/"}],"caseStudy":"/work/miguel-themes","archive":true},{"slug":"corner-press","title":"Corner Press","industry":"Sandwich shop · fictional concept","status":"Archived website demonstration","image":"/media/websites/corner-press.webp","summary":"A warm neighborhood sandwich-shop identity with a playful menu, category filters, and a clear ordering journey.","detail":"A fictional restaurant concept with sample menu content and browser-local demonstration actions.","links":[{"label":"Explore Corner Press","href":"https://archive.miguel.systems/corner-press/"}],"caseStudy":"/work/corner-press","archive":true},{"slug":"ginos-subs","title":"Gino’s Subs","industry":"Restaurant · heritage direction","status":"Archived website demonstration","image":"/media/websites/ginos-subs.webp","summary":"A heritage-inspired sandwich-shop experience with an illustrated identity, searchable menu, and generous food photography.","detail":"Explore menu discovery and the restaurant journey in a self-contained demonstration. Sample actions do not place orders or contact the business.","links":[{"label":"Explore Gino’s Subs","href":"https://archive.miguel.systems/ginos-subs/"}],"caseStudy":"/work/ginos-subs","archive":true},{"slug":"industry-showroom","title":"Industry Showroom","industry":"Twelve fictional businesses","status":"Interactive public demonstration","image":"/media/showroom/industry-showroom.png","summary":"Twelve distinct service-business examples with tailored content, customer journeys, and temporary branding controls.","detail":"Explore twelve fictional businesses and try their website directions with your own name, colors, and logo.","links":[{"label":"Explore the showroom","href":"https://industries.miguel.systems/"}],"caseStudy":"/work/industry-showroom"}],"nodes":{"collections":[{"id":"websites","label":"Websites","color":"#91caff","x":-4364,"y":0,"href":"/websites"},{"id":"systems","label":"Systems","color":"#b5a7ff","x":-846,"y":0,"href":"/systems"},{"id":"creative","label":"Creative","color":"#e3c497","x":3574,"y":0,"href":"/gallery"}],"items":[{"slug":"u1-mechanical","collection":"websites","x":-4487,"y":-466,"label":"U1 Mechanical","caption":"Website redesign · full-stack webapp rollout","image":"/media/websites/u1-mechanical.png","size":74,"featured":true},{"slug":"faultline","collection":"systems","x":-969,"y":-466,"label":"FAULTLINE","caption":"System · Product","image":"/art/faultline-mark.png","size":74,"featured":true},{"slug":"billing-automation","collection":"systems","x":-1534,"y":-451,"label":"MetLife · benefits billing automation","caption":"Lockton · benefits operations","image":"/brand/projects/billing-automation.png","size":74,"featured":false},{"slug":"employee-sentiment-intelligence","collection":"systems","x":-812,"y":479,"label":"Employee Sentiment Intelligence","caption":"Analytics product","image":"/brand/projects/employee-sentiment-intelligence.png","size":74,"featured":true},{"slug":"tradelab","collection":"systems","x":-220,"y":26,"label":"TradeLab","caption":"AI research system","image":"/brand/projects/tradelab.png","size":74,"featured":true},{"slug":"local-ai-orchestration","collection":"systems","x":-193,"y":640,"label":"Local AI Orchestration","caption":"Infrastructure system","image":"/brand/projects/local-ai-orchestration.png","size":74,"featured":false},{"slug":"dinos-subs","collection":"websites","x":-4330,"y":479,"label":"Dino’s Subs","caption":"Website · Brand","image":"/media/websites/dinos-subs.webp","size":74,"featured":true},{"slug":"blackbox","collection":"systems","x":-1435,"y":197,"label":"_Blackbox","caption":"System · Developer tool","image":"/brand/projects/blackbox.png","size":74,"featured":true},{"slug":"tdc-design-review","collection":"websites","x":-3738,"y":26,"label":"Templo de Cristo","caption":"Bilingual church website","image":"/media/websites/templo-de-cristo.webp","size":74,"featured":true},{"slug":"ultimate-lawncare","collection":"websites","x":-4953,"y":197,"label":"Ultimate Lawncare","caption":"Website archive","image":"/media/websites/ultimate-lawncare.webp","size":74,"featured":true},{"slug":"serens-fades","collection":"websites","x":-3793,"y":-574,"label":"Seren’s Fades","caption":"Mobile barber · DFW","image":"/media/websites/serens-fades.webp","size":74,"featured":true},{"slug":"browser-lab","collection":"creative","x":3451,"y":-466,"label":"Browser Lab","caption":"Practical browser tools","image":"/media/browser-lab.png","size":74,"featured":true},{"slug":"elsewhere","collection":"systems","x":-1383,"y":844,"label":"Elsewhere","caption":"Illustrated zoom journey","image":"/media/elsewhere.webp","size":74,"featured":false},{"slug":"industry-showroom","collection":"websites","x":-5127,"y":-524,"label":"Industry Showroom","caption":"Twelve fictional businesses","image":"/media/showroom/industry-showroom.png","size":74,"featured":true},{"slug":"mergeflow","collection":"systems","x":-967,"y":-1074,"label":"MergeFlow","caption":"Outlook workflow builder","image":"","size":74,"featured":false},{"slug":"netdump","collection":"systems","x":-2012,"y":18,"label":"NetDump","caption":"Browser diagnostics","image":"","size":74,"featured":false},{"slug":"ram-relief","collection":"systems","x":306,"y":171,"label":"RAM Relief","caption":"Ubuntu memory and storage care","image":"","size":74,"featured":false},{"slug":"parsel-tongue","collection":"systems","x":-833,"y":1080,"label":"Parsel Tongue","caption":"Python script workspace","image":"","size":74,"featured":false},{"slug":"ubuntu-airplay","collection":"systems","x":335,"y":-443,"label":"Ubuntu AirPlay","caption":"Native receiver controller","image":"","size":74,"featured":false},{"slug":"mermaid-local","collection":"systems","x":-275,"y":-574,"label":"Mermaid Local","caption":"Diagram editor","image":"/art/mermaid-study.png","size":74,"featured":true},{"slug":"llm-recommender","collection":"systems","x":-1970,"y":-556,"label":"LLM Hardware Advisor","caption":"Local model selection","image":"","size":74,"featured":false},{"slug":"playxls","collection":"systems","x":-2033,"y":655,"label":"PlayXLS","caption":"Multi-stream video workspace","image":"","size":74,"featured":false},{"slug":"pptx-template-update","collection":"systems","x":-449,"y":-1226,"label":"PPTX Template Update","caption":"Presentation automation","image":"","size":74,"featured":false},{"slug":"py2exe","collection":"systems","x":-1498,"y":-1129,"label":"Py2EXE","caption":"Python packaging assistant","image":"","size":74,"featured":false},{"slug":"ubuntu-speech-tools","collection":"systems","x":-228,"y":1256,"label":"Ubuntu Speech Tools","caption":"Desktop dictation and read-aloud","image":"","size":74,"featured":false},{"slug":"video-duration-catalog","collection":"systems","x":403,"y":753,"label":"Video Duration Catalog","caption":"File-manager integration","image":"","size":74,"featured":false},{"slug":"dasshboard","collection":"systems","x":-2440,"y":-110,"label":"DaSSHboard","caption":"Project memory workspace","image":"","size":74,"featured":false},{"slug":"dashboard-products","collection":"systems","x":787,"y":-459,"label":"Dashboard Products & GreaterThan","caption":"Analytics and sales intelligence","image":"","size":74,"featured":false},{"slug":"context-codec","collection":"systems","x":-1312,"y":1416,"label":"Context Codec","caption":"Agent context tools","image":"","size":74,"featured":false},{"slug":"local-app-infrastructure","collection":"systems","x":266,"y":-1198,"label":"Local App Blueprint","caption":"Local application architecture","image":"","size":74,"featured":false},{"slug":"local-dev-kit","collection":"systems","x":-2038,"y":-1130,"label":"Local Dev Kit","caption":"Development and release practices","image":"","size":74,"featured":false},{"slug":"type-and-learn","collection":"systems","x":-2457,"y":521,"label":"Type & Learn","caption":"Bilingual learning game","image":"","size":74,"featured":false},{"slug":"agentic-market-commander","collection":"systems","x":-1904,"y":1240,"label":"Agentic Market Commander","caption":"Research command center","image":"","size":74,"featured":false},{"slug":"covenant-compass","collection":"systems","x":830,"y":298,"label":"Covenant Compass","caption":"Guided conversation prototype","image":"/media/gallery-covenant-compass.svg","size":74,"featured":false},{"slug":"website-pipeline","collection":"systems","x":-2464,"y":-761,"label":"Website Pipeline","caption":"Website creation tools","image":"/media/gallery-website-pipeline.svg","size":74,"featured":false},{"slug":"video-tagger","collection":"creative","x":3608,"y":479,"label":"Video Tagger","caption":"Media review workspace","image":"/media/gallery-video-tagger.svg","size":74,"featured":true},{"slug":"signal-lost","collection":"systems","x":-829,"y":1680,"label":"SIGNAL / LOST","caption":"Creative production lab","image":"","size":74,"featured":false},{"slug":"voice-lab","collection":"systems","x":-937,"y":-1678,"label":"Voice Lab","caption":"ESA · product design & delivery","image":"","size":74,"featured":false},{"slug":"total-rewards-analytics","collection":"systems","x":373,"y":1376,"label":"Total Rewards analytics","caption":"Survey data architecture","image":"","size":74,"featured":false},{"slug":"naics-finder","collection":"systems","x":-420,"y":-1838,"label":"NAICS Finder & peer benchmarks","caption":"ESA · research and classification","image":"","size":74,"featured":false},{"slug":"culture-taxonomy","collection":"systems","x":-1552,"y":-1763,"label":"Culture & sentiment taxonomy","caption":"ESA · analytical design","image":"","size":74,"featured":false},{"slug":"esa-data-reliability","collection":"systems","x":-2869,"y":-155,"label":"Reliable ratings & Smartsheet write-back","caption":"ESA · integration engineering","image":"","size":74,"featured":false},{"slug":"scoreforge","collection":"systems","x":-2501,"y":1089,"label":"ScoreForge","caption":"Music tools & local AI","image":"","size":74,"featured":false},{"slug":"signalboard","collection":"systems","x":961,"y":858,"label":"MySpace 2026 / Signalboard","caption":"Expressive social product design","image":"","size":74,"featured":false},{"slug":"nicos-adventures","collection":"systems","x":759,"y":-1151,"label":"Nico’s Adventures","caption":"Bilingual interactive storytelling","image":"","size":74,"featured":false},{"slug":"video-research-pipeline","collection":"systems","x":85,"y":-1783,"label":"Video-to-research pipeline","caption":"Media processing & retrieval","image":"","size":74,"featured":false},{"slug":"cross-machine-agentops","collection":"systems","x":-232,"y":1897,"label":"Cross-machine AgentOps","caption":"Distributed work & shared context","image":"","size":74,"featured":false},{"slug":"envato-api-bridge","collection":"systems","x":1248,"y":-401,"label":"Envato Market API bridge","caption":"Creative workflow integration","image":"","size":74,"featured":false},{"slug":"zen-taxonomy-tools","collection":"systems","x":1270,"y":289,"label":"Zen Browser taxonomy tools","caption":"Personal workspace automation","image":"","size":74,"featured":false},{"slug":"source-to-release","collection":"systems","x":-2921,"y":480,"label":"From source to release","caption":"Engineering practice","image":"","size":74,"featured":false},{"slug":"clustertile","collection":"systems","x":-1505,"y":1988,"label":"ClusterTile","caption":"Multi-machine workspace concept","image":"","size":74,"featured":false},{"slug":"database-ingestion-toolkit","collection":"systems","x":-2572,"y":-1331,"label":"Database Ingestion Toolkit","caption":"Data preparation utility","image":"","size":74,"featured":false},{"slug":"esa-report-assets","collection":"systems","x":-1974,"y":-1799,"label":"Report asset preparation","caption":"ESA · presentation support","image":"","size":74,"featured":false},{"slug":"mimagery","collection":"creative","x":4200,"y":26,"label":"MiMagery","caption":"Creative practice","image":"/art/mimagery-poster.png","size":74,"featured":true},{"slug":"villas","collection":"creative","x":4145,"y":-574,"label":"Villas","caption":"Hospitality imagery & web assets","image":"","size":74,"featured":false},{"slug":"snty","collection":"creative","x":2886,"y":-451,"label":"SNTY 2016","caption":"Event communications","image":"","size":74,"featured":false},{"slug":"hilton-experiments","collection":"creative","x":4227,"y":640,"label":"Hilton Excel experiments","caption":"Spreadsheet exploration","image":"","size":74,"featured":false},{"slug":"aero","collection":"creative","x":3037,"y":844,"label":"aerosmartliving.com","caption":"Early business & identity exploration","image":"","size":74,"featured":false},{"slug":"renewed-vision","collection":"creative","x":3453,"y":-1074,"label":"Renewed Vision media","caption":"Presentation & media workflow","image":"","size":74,"featured":false},{"slug":"youth-identity","collection":"creative","x":2408,"y":18,"label":"Youth identity explorations","caption":"Logo concepts","image":"","size":74,"featured":false},{"slug":"la-duni","collection":"creative","x":3491,"y":1077,"label":"La Duni","caption":"Hospitality & motion design","image":"","size":74,"featured":false},{"slug":"mach-heating-air","collection":"creative","x":4726,"y":171,"label":"MACH Heating & Air","caption":"Identity & vehicle graphics","image":"","size":74,"featured":false},{"slug":"taxes-on-the-move","collection":"creative","x":4755,"y":-443,"label":"Taxes On The Move","caption":"Bilingual campaign system","image":"","size":74,"featured":false},{"slug":"lockton-fabrication","collection":"creative","x":3913,"y":-1138,"label":"Lockton · design to fabrication","caption":"Event objects & 3D-print preparation","image":"","size":74,"featured":false},{"slug":"972-clothing","collection":"creative","x":2947,"y":-1028,"label":"972 Clothing","caption":"Retail creative archive","image":"","size":74,"featured":false},{"slug":"cloudcap","collection":"creative","x":2450,"y":-556,"label":"CloudCap","caption":"Physical product exploration","image":"","size":74,"featured":false},{"slug":"hud-motion","collection":"creative","x":2387,"y":655,"label":"HUD motion study","caption":"Motion graphics & compositing","image":"","size":74,"featured":false},{"slug":"sephora-team-media","collection":"creative","x":4004,"y":1217,"label":"Sephora · team media","caption":"Video & internal communications","image":"","size":74,"featured":false},{"slug":"gipsy-lime","collection":"creative","x":4823,"y":753,"label":"Gipsy Lime","caption":"Menu & information design","image":"","size":74,"featured":false},{"slug":"project-lit","collection":"creative","x":1980,"y":-110,"label":"Project Lit","caption":"Poster & composition studies","image":"","size":74,"featured":false},{"slug":"photography-practice","collection":"creative","x":4588,"y":-1144,"label":"Photography practice","caption":"A visual archive","image":"","size":74,"featured":false},{"slug":"lead-management-ux","collection":"creative","x":5207,"y":-459,"label":"Lead Management UX","caption":"Interface design study","image":"","size":74,"featured":false},{"slug":"microgive","collection":"creative","x":2612,"y":1182,"label":"microGIVE","caption":"Product interface prototype","image":"","size":74,"featured":false},{"slug":"miguel-themes","collection":"websites","x":-3711,"y":640,"label":"Miguel · design archive","caption":"Portfolio · design exploration","image":"/media/websites/miguel-themes.webp","size":74,"featured":true},{"slug":"corner-press","collection":"websites","x":-4979,"y":918,"label":"Corner Press","caption":"Sandwich shop · fictional concept","image":"/media/websites/corner-press.webp","size":74,"featured":true},{"slug":"ginos-subs","collection":"websites","x":-4468,"y":-1176,"label":"Gino’s Subs","caption":"Restaurant · heritage direction","image":"/media/websites/ginos-subs.webp","size":74,"featured":true},{"slug":"room-alive","collection":"creative","x":2985,"y":197,"label":"Room Alive","caption":"Interactive prototype","image":"/media/story/room-alive.png","size":74,"featured":true},{"slug":"miguel-systems-studio","collection":"systems","x":-1800,"y":3200,"label":"miguel.systems Studio","caption":"Private website administration","image":"","size":74,"featured":false},{"slug":"react-visual-editor","collection":"systems","x":-950,"y":3200,"label":"Reusable React Visual Editor","caption":"Visual editing toolkit","image":"","size":74,"featured":false},{"slug":"website-archive-toolkit","collection":"systems","x":-100,"y":3200,"label":"Website Archive & Migration Toolkit","caption":"Website preservation system","image":"","size":74,"featured":false},{"slug":"content-media-recovery","collection":"systems","x":750,"y":3200,"label":"Content & Media Recovery Toolkit","caption":"Portable website recovery","image":"","size":74,"featured":false}],"settings":{"initialFraming":"fit","motion":true,"repulsion":1,"zoomMin":0.04,"zoomMax":1.6,"labelZoom":0.55,"initialZoom":1,"cameraX":0,"cameraY":0,"nodeScale":1,"connections":true,"dragging":true},"groups":[{"id":"portfolio-platform","label":"Portfolio platform","description":"The tools and delivery work behind miguel.systems: editing, preserving demonstrations, and keeping content recoverable.","hidden":false},{"id":"local-automation","label":"Local automation","description":"Related work in local AI, cross-machine coordination, retained context, and repeatable private-app infrastructure.","hidden":false}],"relationships":[{"id":"miguel-systems-studio-part-of-portfolio-platform","to":"group:portfolio-platform","type":"part-of","description":"The owner workspace brings portfolio editing, preview, and publication into one place.","enabled":true,"from":"project:miguel-systems-studio"},{"id":"website-archive-toolkit-part-of-portfolio-platform","to":"group:portfolio-platform","type":"part-of","description":"The archive workflow preserves interactive demonstrations and their original addresses for the portfolio.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-pipeline-part-of-portfolio-platform","to":"group:portfolio-platform","type":"part-of","description":"Earlier portfolio and command-center work explored repeatable website production. It is historical context, not a claim that Studio reuses its code.","enabled":true,"from":"project:website-pipeline"},{"id":"source-to-release-part-of-portfolio-platform","to":"group:portfolio-platform","type":"part-of","description":"Portfolio checkpoints are a concrete application of this source, verification, and recovery practice.","enabled":true,"from":"project:source-to-release"},{"id":"miguel-systems-studio-uses-react-visual-editor","to":"project:react-visual-editor","type":"uses","description":"Studio integrates the reusable editor and renderer. An independent Field Notes sample demonstrates the package boundary.","enabled":true,"from":"project:miguel-systems-studio"},{"id":"miguel-systems-studio-uses-content-media-recovery","to":"project:content-media-recovery","type":"uses","description":"Studio integrates portable recovery for editable content, revision history, and media, with restoration reviewed before publication.","enabled":true,"from":"project:miguel-systems-studio"},{"id":"website-archive-toolkit-preserves-serens-fades","to":"project:serens-fades","type":"preserves","description":"The archive maintains a browsable demonstration of Seren’s Fades. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-tdc-design-review","to":"project:tdc-design-review","type":"preserves","description":"The archive maintains a browsable demonstration of Templo de Cristo · website & review. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-dinos-subs","to":"project:dinos-subs","type":"preserves","description":"The archive maintains a browsable demonstration of Dino’s Subs. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-miguel-themes","to":"project:miguel-themes","type":"preserves","description":"The archive maintains a browsable demonstration of Miguel · design archive. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-ultimate-lawncare","to":"project:ultimate-lawncare","type":"preserves","description":"The archive maintains a browsable demonstration of Ultimate Lawncare. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-corner-press","to":"project:corner-press","type":"preserves","description":"The archive maintains a browsable demonstration of Corner Press. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"website-archive-toolkit-preserves-ginos-subs","to":"project:ginos-subs","type":"preserves","description":"The archive maintains a browsable demonstration of Gino’s Subs. Original sources and live service data retain their separate boundaries.","enabled":true,"from":"project:website-archive-toolkit"},{"id":"netdump-extracted-from-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"extracted-from","description":"Generic browser-network diagnostics were extracted from the ESA workflow into a focused inspection tool.","enabled":true,"from":"project:netdump"},{"id":"pptx-template-update-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"Template comparison and anchor mapping support the presentation-generation side of analyst work.","enabled":true,"from":"project:pptx-template-update"},{"id":"voice-lab-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"The desktop analyst workflow connects authorized sentiment capture, analysis, and ESA deliverables.","enabled":true,"from":"project:voice-lab"},{"id":"total-rewards-analytics-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"Benefits-priority research is presented alongside employee-sentiment analysis. This is related analytical work, not a shared-code claim.","enabled":true,"from":"project:total-rewards-analytics"},{"id":"naics-finder-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"Industry classification and reviewed peer groups give employee-feedback comparisons context.","enabled":true,"from":"project:naics-finder"},{"id":"culture-taxonomy-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"The theme taxonomy gives employee feedback a consistent analytical vocabulary.","enabled":true,"from":"project:culture-taxonomy"},{"id":"esa-data-reliability-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"Ratings and Smartsheet write-back work improve the reliability of the ESA workflow.","enabled":true,"from":"project:esa-data-reliability"},{"id":"esa-report-assets-related-work-employee-sentiment-intelligence","to":"project:employee-sentiment-intelligence","type":"related-work","description":"Report asset preparation connects analytical results to repeatable presentation output.","enabled":true,"from":"project:esa-report-assets"},{"id":"local-ai-orchestration-part-of-local-automation","to":"group:local-automation","type":"part-of","description":"The local AI platform belongs to this broader body of owner-operated automation work.","enabled":true,"from":"project:local-ai-orchestration"},{"id":"context-codec-part-of-local-automation","to":"group:local-automation","type":"part-of","description":"This OpenClaw-oriented digest protocol explores retained conversational context. It is not a claim of current deployment or measured model-quality gains.","enabled":true,"from":"project:context-codec"},{"id":"local-app-infrastructure-part-of-local-automation","to":"group:local-automation","type":"part-of","description":"Reusable NAS-hosted and optional PC-worker templates formalize recurring private-app infrastructure needs.","enabled":true,"from":"project:local-app-infrastructure"},{"id":"cross-machine-agentops-related-work-local-ai-orchestration","to":"project:local-ai-orchestration","type":"related-work","description":"Queues, worker status, and retained context support the wider cross-machine automation practice. Separate agent frameworks retain their own execution lanes.","enabled":true,"from":"project:cross-machine-agentops"},{"id":"video-research-pipeline-related-work-local-ai-orchestration","to":"project:local-ai-orchestration","type":"related-work","description":"A focused transcript, frame, and OCR pipeline sits alongside the broader local AI work. A live runtime dependency is not implied.","enabled":true,"from":"project:video-research-pipeline"},{"id":"envato-api-bridge-part-of-signal-lost","to":"project:signal-lost","type":"part-of","description":"The implemented Envato Market API bridge is tooling inside SIGNAL / LOST; the larger creative experience remains a concept.","enabled":true,"from":"project:envato-api-bridge"},{"id":"room-alive-extends-nicos-adventures","to":"project:nicos-adventures","type":"extends","description":"Room Alive extends the existing Nico Unity project with additional room interactions and a separate candidate build.","enabled":true,"from":"project:room-alive"}]},"bindings":{"profile":{"name":"Miguel Rodriguez","title":"Senior Data & AI Systems Builder","positioning":"I turn complex evidence into analytics products, automation, and agentic systems that help people make clearer decisions and move faster.","location":"Dallas–Fort Worth, Texas","availability":"Open to US‑remote and DFW hybrid/on‑site opportunities","email":"HireMe@miguel.systems","linkedin":"https://www.linkedin.com/in/miguel-rodriguez-3573b485/","github":"https://github.com/MRodriguez2010","languages":["English — native/bilingual","Spanish — native/bilingual"],"outcomes":[{"value":"National","label":"analytics capability","detail":"Scaled Employee Sentiment Analysis from a divisional service into a multi‑division capability supporting business development and executive decisions.","lenses":["data","product"]},{"value":"3","label":"productized offerings","detail":"Structured Full, Comparative, and Benchmark service tiers so teams could match analysis depth to each opportunity.","lenses":["product","data"]},{"value":"Thousands","label":"of data points","detail":"Built privacy‑aware executive reporting with industry benchmarking across a large proprietary evidence base.","lenses":["data","ai"]},{"value":"3 days → 5 hours","label":"workflow reduction","detail":"Redesigned an earlier billing and data‑merging process into a substantially faster, repeatable workflow.","lenses":["data","product"]}],"experience":[{"title":"Senior Data Analyst","organization":"Lockton","location":"Plano, Texas · Hybrid","start":"May 2025","end":"April 2026","summary":"Owned the architecture, automation, and quality of data products that connected research evidence to executive and growth decisions.","highlights":["Advanced a national Employee Sentiment Analysis capability and its delivery model across business divisions.","Designed AI‑assisted analytical workflows with clear review, privacy, and evidence boundaries.","Enabled a broader analyst team while retaining system architecture and quality ownership."],"skills":["Data products","AI‑assisted analytics","Power BI","Python"],"lenses":["data","ai","product"]},{"title":"Data Research Analyst","organization":"Lockton","location":"Dallas, Texas · Hybrid","start":"August 2023","end":"May 2025","summary":"Productized sentiment research and built a configurable toolchain spanning collection, analysis, reporting, and narrative delivery.","highlights":["Created Full, Comparative, and Benchmark ESA offerings for repeatable delivery.","Built configurable Python research utilities and packaged them for nontechnical teammates.","Connected intake, automated collection, Power BI, presentation output, and reviewed AI‑assisted narratives."],"skills":["Sentiment analysis","NLP","Python","Automation"],"lenses":["data","ai","product"]},{"title":"HRO Data Analyst","organization":"Lockton","location":"Dallas, Texas · Remote","start":"May 2022","end":"August 2023","summary":"Developed privacy‑aware dashboards and research views that made complex workforce and market evidence usable by leaders.","highlights":["Built executive Power BI reporting across thousands of proprietary data points.","Added industry benchmarking and audience-appropriate privacy controls.","Translated emerging analytical needs into reusable reporting patterns."],"skills":["Power BI","DAX","Benchmarking","Executive reporting"],"lenses":["data","product"]},{"title":"Benefits Analyst","organization":"Lockton","employmentNote":"Concurrent contractor assignment supporting MoneyGram","location":"Dallas, Texas · On-site","start":"March 2020","end":"May 2022","summary":"Delivered benefits analysis and operational reporting while embedded in a complex client environment.","highlights":["Improved reconciliation and reporting workflows with Power Query and structured analysis.","Balanced stakeholder service with careful handling of sensitive benefits data."],"skills":["Benefits analytics","Power Query","Reconciliation"],"lenses":["data","product"]},{"title":"Benefits Specialist","organization":"Lockton","location":"Dallas–Fort Worth","start":"November 2018","end":"March 2020","summary":"Built the operational and domain foundation that later informed analytics automation and product development.","highlights":["Supported benefits operations, reporting, and stakeholder communication.","Identified repeatable work suited to structured data and automation."],"skills":["Benefits operations","Reporting","Stakeholder support"],"lenses":["data","product"]}],"capabilities":[{"name":"Analytics","description":"Decision‑ready reporting from messy, multi‑source evidence.","skills":["Power BI","Power Query","DAX","Excel","Alteryx","Executive dashboards"],"lens":"data"},{"name":"Data & AI","description":"Practical intelligence with traceable inputs and human review.","skills":["Python","Sentiment analysis","NLP","AI‑assisted analytics","Structured data products"],"lens":"ai"},{"name":"Systems","description":"Bounded automation designed for evidence, safety, and replay.","skills":["Agent orchestration","Local AI","Workflow automation","Typed interfaces","Evidence boundaries"],"lens":"ai"},{"name":"Product","description":"Useful experiences shaped around real people and decisions.","skills":["Stakeholder discovery","Executive storytelling","UI/UX","Productization","Team enablement"],"lens":"product"}],"projects":[{"slug":"employee-sentiment-intelligence","name":"Employee Sentiment Intelligence","kicker":"Analytics product","role":"Product architect & senior data analyst","timeframe":"2023–2026","status":"Delivered","summary":"A privacy‑aware research and reporting system that transforms qualitative employee feedback into topic‑level signals, comparisons, and executive‑ready evidence.","technologies":["Python","Power BI","NLP","Automation"],"outcomes":["Expanded into a national, multi‑division capability","Productized three delivery tiers","Enabled team-supported delivery"],"evidenceSource":"Verified professional history and local implementation evidence","disclosure":"Portfolio demonstrations use fictional companies and synthetic reviews only.","publicationSafety":"sanitized-public","href":"https://miguel.systems/work/employee-sentiment-intelligence","lenses":["data","ai","product"]},{"slug":"tradelab","name":"TradeLab","kicker":"Agentic research system","role":"System architect & product builder","timeframe":"2025–2026","status":"Evolving","summary":"An evidence‑first market research environment where specialized roles collaborate through bounded workflows, provenance, review, and fail‑closed safety controls.","technologies":["React","FastAPI","PostgreSQL","Temporal"],"outcomes":["Eight‑role research graph","Immutable evidence ledger","Read-only research boundaries"],"evidenceSource":"Verified local repository, documentation, and UX evidence","disclosure":"The public case study uses fictional holdings and includes no brokerage connection or trading capability.","publicationSafety":"sanitized-public","href":"https://miguel.systems/work/tradelab","lenses":["ai","product","data"]},{"slug":"local-ai-orchestration","name":"Local AI Orchestration","kicker":"AI systems engineering","role":"System architect & technical product lead","timeframe":"2025–2026","status":"Evolving","summary":"A local‑first orchestration foundation for planning, routing, execution, evidence capture, QA, safety, and durable replay across specialized agents.","technologies":["Python","LangGraph","Local models","Typed state"],"outcomes":["Deterministic model and role routing","Receipts and replayable evidence","Fail‑closed action boundaries"],"evidenceSource":"Verified local platform and orchestration repositories","disclosure":"The portfolio separates completed capabilities from experimental and planned work.","publicationSafety":"sanitized-public","href":"https://miguel.systems/work/local-ai-orchestration","lenses":["ai","product"]},{"slug":"dinos-subs","name":"Dino’s Subs","kicker":"Local business website","role":"Product strategy, information architecture, UX/UI, frontend implementation & brand restoration","timeframe":"2026","status":"Prototype","summary":"A heritage‑led, multi‑route redesign that turns a dense single‑page restaurant site into a focused, mobile‑friendly journey for menu discovery, party subs, story, gear, careers, and visits.","technologies":["Next.js","React","TypeScript","Responsive design"],"outcomes":["Seven customer‑focused routes","Search and filters for all 27 numbered subs","Owner-controlled launch and indexing gates"],"evidenceSource":"Verified current repository, asset-provenance ledger, owner launch worksheet, and before-and-after evidence","disclosure":"Presented as an access-protected owner-review redesign, not as the production dinossubs.com site. Business, brand, media, domain, and final acceptance gates remain owner-controlled.","publicationSafety":"sanitized-public","href":"https://miguel.systems/work/dinos-subs","lenses":["product"]}]},"text.app-about-page.1":"I’m Miguel.","text.app-components-appearance-toggle.1":"Appearance","text.app-components-appearance-toggle.2":"System","text.app-components-appearance-toggle.3":"Light","text.app-components-appearance-toggle.4":"Dark","text.app-components-print-resume.1":"Print or save as PDF","link.app-components-site-header.1":"/","text.app-components-site-header.2":"miguel.systems home","text.app-components-site-header.3":"Open menu","text.app-components-site-header.4":"Menu","text.app-components-site-header.5":"Site navigation","text.app-components-site-header.6":"EXPLORE MIGUEL.SYSTEMS","text.app-components-site-header.7":"Close menu","text.app-components-site-header.8":"Follow a connection.","text.app-components-site-header.9":"Work, background,","text.app-components-site-header.10":"and a way to say hello.","text.app-components-site-header.11":"Main navigation","link.app-components-site-header.12":"/","text.app-components-site-header.13":"Home","text.app-components-site-header.14":"A separate space for experiments","text.app-components-site-header.15":"Labs","text.app-components-site-transitions.1":"miguel","text.app-components-site-transitions.2":"systems","text.app-components-site-transitions.3":"Making connections","text.app-components-site-transitions.4":"This connection is taking a little longer.","text.app-components-site-transitions.5":"Open page directly ↗","text.app-components-site-transitions.6":"Keep browsing","text.app-components-site-transitions.7":"DATA · DESIGN · SYSTEMS","text.app-contact-page.1":"Let’s talk.","text.app-lab-stories-page.1":"Follow a record.","text.app-lab-stories-page.2":"Choose an interactive story","link.app-lab-stories-page.3":"#billing-story","text.app-lab-stories-page.4":"Billing automation","link.app-lab-stories-page.5":"#sentiment-story","text.app-lab-stories-page.6":"Employee sentiment","link.app-lab-stories-page.7":"#orchestration-story","text.app-lab-stories-page.8":"AI research","link.app-lab-stories-page.9":"/work","text.app-lab-stories-page.10":"All projects","text.app-lab-stories-page.11":"Try something in your browser.","link.app-lab-stories-page.12":"https://lab.miguel.systems/","text.app-node-story-canvas-explorer.1":"FREE EXPLORATION","text.app-node-story-canvas-explorer.2":"Follow your curiosity.","text.app-node-story-canvas-explorer.3":"Theme","text.app-node-story-canvas-explorer.4":"Resume guided story ","text.app-node-story-canvas-explorer.5":"Close canvas","text.app-node-story-canvas-explorer.6":"Node hierarchy","text.app-node-story-canvas-explorer.7":"Main stages","text.app-node-story-canvas-explorer.8":"Connected details","text.app-node-story-canvas-explorer.9":"Main stages carry their details","text.app-node-story-canvas-explorer.10":"Interactive canvas. Drag empty space to pan. Scroll to zoom. Drag a main node to move its connected details. Arrow keys pan; plus and minus zoom; Home fits all nodes.","text.app-node-story-canvas-explorer.11":"0","text.app-node-story-canvas-explorer.12":"Connected details ","text.app-node-story-canvas-explorer.13":"Canvas controls","text.app-node-story-canvas-explorer.14":"Zoom out","text.app-node-story-canvas-explorer.15":"Focus selected node at reading size","text.app-node-story-canvas-explorer.16":"Zoom in","text.app-node-story-canvas-explorer.17":"Fit all","text.app-node-story-canvas-explorer.18":"Reset layout","text.app-node-story-canvas-explorer.19":"Drag to pan · Scroll to zoom · Main nodes move their details","text.app-node-story-canvas-explorer.20":"Jump to a canvas stage","text.app-node-story-canvas-explorer.21":"0","text.app-node-story-connected-closing.1":"The completed handoff","text.app-node-story-connected-closing.2":"05 / DELIVER · THE WORK COMES TOGETHER","text.app-node-story-connected-closing.3":"Delivered.","text.app-node-story-connected-closing.4":"With context.","text.app-node-story-connected-closing.5":"The bill tells the total.","text.app-node-story-connected-closing.6":"The exceptions tell the rest of the story.","text.app-node-story-connected-closing.7":"Illustrated handoff · Source corrections and final approval remain with the responsible teams.","text.app-node-story-connected-closing.8":"ACROSS THE PRACTICE","text.app-node-story-connected-closing.9":"THE SAME THINKING. MORE POSSIBILITIES.","text.app-node-story-connected-closing.10":"I connect the pieces.","text.app-node-story-connected-closing.11":"So you can move forward.","text.app-node-story-connected-closing.12":"Analytics · Automation · Systems · Software · Design","text.app-node-story-connected-closing.13":"SELECTED WORK / 0","text.app-node-story-connected-closing.14":"PROJECT PREVIEW","text.app-node-story-connected-closing.15":"Choose your next experience","text.app-node-story-connected-closing.16":"0","text.app-node-story-connected-closing.17":"Follow a connection. Try something real.","link.app-node-story-connected-closing.18":"/work","text.app-node-story-connected-closing.19":"All work ","text.app-node-story-connected-closing.20":"A NEW CONNECTION STARTS HERE","text.app-node-story-connected-closing.21":"Your next chapter.","text.app-node-story-connected-closing.22":"Let’s build it together.","text.app-node-story-connected-closing.23":"EMPLOY ME","text.app-node-story-connected-closing.24":"Make your data","text.app-node-story-connected-closing.25":"make a difference.","text.app-node-story-connected-closing.26":"An analyst who builds the system, finds the signal, and brings the next step.","link.app-node-story-connected-closing.27":"/resume","text.app-node-story-connected-closing.28":"Explore my résumé ","link.app-node-story-connected-closing.29":"mailto:HireMe@miguel.systems?subject=Let%E2%80%99s%20talk%20about%20a%20role","text.app-node-story-connected-closing.30":"Talk about a role ","image.app-node-story-connected-closing.31":"/miguel-rodriguez.jpg","text.app-node-story-connected-closing.32":"Miguel Rodriguez","text.app-node-story-connected-closing.33":"MIGUEL RODRIGUEZ","text.app-node-story-connected-closing.34":"Analyst. Builder. Designer.","text.app-node-story-connected-closing.35":"One person. Many possibilities.","text.app-node-story-connected-closing.36":"FREELANCE","text.app-node-story-connected-closing.37":"From your idea","text.app-node-story-connected-closing.38":"to something real.","text.app-node-story-connected-closing.39":"A distinctive website. A smarter workflow. Software that earns its place.","link.app-node-story-connected-closing.40":"mailto:HireMe@miguel.systems?subject=Let%E2%80%99s%20build%20something","text.app-node-story-connected-closing.41":"Let’s build it ","link.app-node-story-connected-closing.42":"/websites","text.app-node-story-connected-closing.43":"Explore client work ","text.app-node-story-delivery-morph.1":"05 / ","text.app-node-story-experience-value.1":"EXPERIENCE THAT TRANSLATES","text.app-node-story-experience-value.2":"RECLAIM THE HOURS","text.app-node-story-experience-value.3":"Time returned","text.app-node-story-experience-value.4":"to Lockton.","text.app-node-story-experience-value.5":"Less repetition.","text.app-node-story-experience-value.6":"More room for the client.","text.app-node-story-experience-value.7":"PROTECT CLIENT VALUE","text.app-node-story-experience-value.8":"Thousands saved","text.app-node-story-experience-value.9":"for clients.","text.app-node-story-experience-value.10":"Find the discrepancy.","text.app-node-story-experience-value.11":"Bring the evidence.","text.app-node-story-experience-value.12":"Reported experience across client work. Illustrative motion; no audited savings total.","text.app-node-story-node-story.1":"0","text.app-node-story-node-story.2":"SELF-BILL","text.app-node-story-node-story.3":"Saved total","text.app-node-story-node-story.4":"Vendor format preserved","text.app-node-story-node-story.5":"Errors","text.app-node-story-node-story.6":"OWNER","text.app-node-story-node-story.7":"Client","text.app-node-story-node-story.8":"Correct source details","text.app-node-story-node-story.9":"BENEFITS ADMINISTRATION","text.app-node-story-node-story.10":"BenSelect","text.app-node-story-node-story.11":"Eligibility","text.app-node-story-node-story.12":"Elections","text.app-node-story-node-story.13":"Payroll","text.app-node-story-node-story.14":"Abstract census records stream from BenSelect into a monthly dataset. No employee data is displayed.","text.app-node-story-node-story.15":"benefit records","text.app-node-story-node-story.16":"fields","text.app-node-story-node-story.17":"One saved snapshot.","text.app-node-story-node-story.18":"A changing population.","text.app-node-story-node-story.19":" handoff · Original illustration","text.app-node-story-node-story.20":"AUTOMATION LOGIC","text.app-node-story-node-story.21":"Validate + classify","text.app-node-story-node-story.22":"Valid records","text.app-node-story-node-story.23":"Continue to bill","text.app-node-story-node-story.24":"Errors tab","text.app-node-story-node-story.25":"Client corrects at source","text.app-node-story-node-story.26":"Illustrated exception types · No employee records","text.app-node-story-node-story.27":"One analyst.","text.app-node-story-node-story.28":"Multiple bills.","text.app-node-story-node-story.29":"ILLUSTRATED PARALLEL RUNS","text.app-node-story-node-story.30":"Workflow 0","text.app-node-story-node-story.31":"Processing","text.app-node-story-node-story.32":"Outputs ready","text.app-node-story-node-story.33":"Running in the background","text.app-node-story-node-story.34":"Free to keep working.","text.app-node-story-node-story.35":"Manually launched workflows · Illustrated execution","text.app-node-story-node-story.36":"TWO OUTPUTS. ONE EXPLANATION.","text.app-node-story-node-story.37":"Bill","text.app-node-story-node-story.38":"Context","text.app-node-story-node-story.39":"Saved benchmark · Not a newly approved bill","text.app-node-story-node-story.40":"THE QUESTION","text.app-node-story-node-story.41":"Why is the bill lower?","text.app-node-story-node-story.42":"Bill + context","text.app-node-story-node-story.43":"Missing location code","text.app-node-story-node-story.44":"Clear evidence. A shared next step.","text.app-node-story-node-story.45":"THE CONVERSATION CHANGES","text.app-node-story-node-story.46":"Find clarity.","text.app-node-story-node-story.47":"Solve together.","text.app-node-story-node-story.48":"Time returned","text.app-node-story-node-story.49":"Expertise proven","text.app-node-story-node-story.50":"Client trust","text.app-node-story-node-story.51":"Illustrated conversation · Reported experience","text.app-node-story-node-story.52":"New hires","text.app-node-story-node-story.53":"Leavers","text.app-node-story-node-story.54":"Changed elections","text.app-node-story-node-story.55":"The census changes monthly. This saved handoff contains 9,791 benefit records and 55 fields.","text.app-node-story-node-story.56":"Broader platform experience. This case begins in Selerix BenSelect, with MetLife as the benefits vendor.","text.app-node-story-node-story.57":"Automation detects","text.app-node-story-node-story.58":"Client corrects","text.app-node-story-node-story.59":"Our platform access was limited. I surfaced affected employees and plain-language error labels; the client owned source corrections.","text.app-node-story-node-story.60":"The total has a reason.","text.app-node-story-node-story.61":"Missing details can prevent correct billing. An Errors tab explains the gap instead of leaving the client guessing. Unresolved items stay visible for review.","text.app-node-story-node-story.62":"Power Query often froze on these complex bills. Alteryx let us run billing workflows in the background and work on multiple bills at once.","text.app-node-story-node-story.63":"Coverage, rates, age bands, payroll limits—different rules feeding one summary.","text.app-node-story-node-story.64":" · Saved values","text.app-node-story-node-story.65":"7 category totals reconcile at source precision.","text.app-node-story-node-story.66":"This is not a fresh query run or native Excel acceptance. The handoff’s LTD mapping review remains open.","text.app-node-story-node-story.67":"Helper","text.app-node-story-node-story.68":"Existing cells","text.app-node-story-node-story.69":"Vendor summary","text.app-node-story-node-story.70":"The separate contingency preserves vendor formulas and formatting. Desktop Excel acceptance is still pending.","text.app-node-story-node-story.71":"From questioned totals","text.app-node-story-node-story.72":"to trusted expertise.","text.app-node-story-node-story.73":"I became the account’s billing subject matter expert. Clear errors strengthened confidence in Lockton and supported client retention.","text.app-node-story-node-story.74":"Reported outcome. No retention percentage or audited savings claim.","text.app-node-story-node-story.75":"I led automation across complex self-bills and simpler list bills for multiple clients and providers. A week of manual work became a fraction of the effort.","text.app-node-story-node-story.76":"Reported experience; no audited savings total or precise post-automation duration is presented.","link.app-node-story-node-story.77":"/work","text.app-node-story-node-story.78":"Explore more of my work ","text.app-node-story-node-story.79":"0","text.app-node-story-node-story.80":"Automating complex benefits billing — Miguel Rodriguez","text.app-node-story-node-story.81":"Automating complex benefits billing — Miguel Rodriguez","link.app-node-story-node-story.82":"#ns-work","text.app-node-story-node-story.83":"Skip the story; explore the work","text.app-node-story-node-story.84":"Lockton and MetLife self-billing automation","text.app-node-story-node-story.85":"SELECTED WORK / 001","text.app-node-story-node-story.86":"BENEFITS BILLING AUTOMATION","text.app-node-story-node-story.87":"0","text.app-node-story-node-story.88":" / 05","text.app-node-story-node-story.89":"Follow the workflow ","text.app-node-story-node-story.90":"KEEP SCROLLING · THE HANDOFF COMES TOGETHER","text.app-node-story-node-story.91":"FROM SOURCE TO TRUST.","text.app-node-story-node-story.92":"See how it all fits.","text.app-node-story-node-story.93":"Choose a stage to get closer.","text.app-node-story-node-story.94":"Explore the canvas ","text.app-node-story-node-story.95":"Pan · Zoom · Move nodes ","text.app-node-story-node-story.96":"Real project · Original workflow illustrations","text.app-node-story-node-story.97":"SELECTED WORK / 001","text.app-node-story-node-story.98":"Data in motion.","text.app-node-story-node-story.99":"Work transformed.","text.app-node-story-node-story.100":"A real billing automation story.","text.app-node-story-node-story.101":"SCROLL TO FOLLOW THE WORKFLOW ↓","text.app-node-story-node-story.102":"0","text.app-node-story-node-story.103":" / 05 · ","text.app-node-story-node-story.104":"Data lifecycle navigation","text.app-node-story-node-story.105":"THE FLOW","text.app-node-story-node-story.106":"0","text.app-node-story-node-story.107":"Choose a lifecycle stage","text.app-node-story-node-story.108":"The entire flow","text.app-node-story-node-story.109":"0","text.app-node-story-node-story.110":"Open the free canvas","text.app-node-story-node-story.111":"Close","text.app-node-story-node-story.112":"Aflac","text.app-node-story-reporting-loop.1":"Premium trend","text.app-node-story-reporting-loop.2":"USD · ","text.app-node-story-reporting-loop.3":"Billed","text.app-node-story-reporting-loop.4":"Enrollment-only baseline","text.app-node-story-reporting-loop.5":"k","text.app-node-story-reporting-loop.6":"REVIEW","text.app-node-story-reporting-loop.7":"Baseline holds the prior month’s cost per person constant. Review signal, not a validated bill. Dollar axis is cropped to show changes.","text.app-node-story-reporting-loop.8":"Covered people","text.app-node-story-reporting-loop.9":"Count · zero baseline","text.app-node-story-reporting-loop.10":"0","text.app-node-story-reporting-loop.11":"SOURCE LOGIC / ","text.app-node-story-reporting-loop.12":"CLOSE THE LOOP / TRACKING & REPORTING","text.app-node-story-reporting-loop.13":"See it early.","text.app-node-story-reporting-loop.14":"Act with context.","text.app-node-story-reporting-loop.15":"I used Power BI to dynamically reference census and billing across client folders. Original files stayed intact. Patterns became visible.","text.app-node-story-reporting-loop.16":"THE WORKSPACE / EXPLORE THE SIGNAL","text.app-node-story-reporting-loop.17":"Choose a client · Change a filter · Investigate a question","text.app-node-story-reporting-loop.18":"01 / ORGANIZE","text.app-node-story-reporting-loop.19":"Start with structure.","text.app-node-story-reporting-loop.20":"Choose a fictional client","text.app-node-story-reporting-loop.21":"Illustrative client folders","text.app-node-story-reporting-loop.22":"3 bill streams","text.app-node-story-reporting-loop.23":"Reference in place.","text.app-node-story-reporting-loop.24":"Preserve the originals.","image.app-node-story-reporting-loop.25":"/brands/billing/power-bi.svg","text.app-node-story-reporting-loop.26":"Power BI","text.app-node-story-reporting-loop.27":"Practice overview ","text.app-node-story-reporting-loop.28":"ILLUSTRATIVE REPORT","text.app-node-story-reporting-loop.29":"Filter report","text.app-node-story-reporting-loop.30":"Use the dropdowns to explore","text.app-node-story-reporting-loop.31":"Report slicers","text.app-node-story-reporting-loop.32":"Bill type","text.app-node-story-reporting-loop.33":"All","text.app-node-story-reporting-loop.34":"List bill","text.app-node-story-reporting-loop.35":"Self bill","text.app-node-story-reporting-loop.36":"Benefit / vendor","text.app-node-story-reporting-loop.37":"Review month","text.app-node-story-reporting-loop.38":"August","text.app-node-story-reporting-loop.39":"September","text.app-node-story-reporting-loop.40":"Monthly premium","text.app-node-story-reporting-loop.41":" vs prior month","text.app-node-story-reporting-loop.42":"Covered people","text.app-node-story-reporting-loop.43":" vs prior month","text.app-node-story-reporting-loop.44":"REVIEW QUESTION / ","text.app-node-story-reporting-loop.45":" billed vs ","text.app-node-story-reporting-loop.46":" baseline.","text.app-node-story-reporting-loop.47":" the enrollment-only comparison (","text.app-node-story-reporting-loop.48":"Every signal has a story.","text.app-node-story-reporting-loop.49":"Select the review question to locate the difference in the charts. The view stays right here.","text.app-node-story-reporting-loop.50":"Billing intelligence","text.app-node-story-reporting-loop.51":"9 bill streams · 36 monthly files · Jun–Sep","text.app-node-story-reporting-loop.52":"Workflow illustration · Fictional client data · Not an actual Power BI capture","text.app-node-story-reporting-loop.53":"03 / BRING THE NEXT STEP","text.app-node-story-reporting-loop.54":"Before the client","text.app-node-story-reporting-loop.55":"has to ask.","text.app-node-story-reporting-loop.56":"A signal becomes a better conversation.","text.app-node-story-reporting-loop.57":"01","text.app-node-story-reporting-loop.58":"SPOT","text.app-node-story-reporting-loop.59":"Difference to the ","text.app-node-story-reporting-loop.60":" comparison.","text.app-node-story-reporting-loop.61":"A reason to investigate.","text.app-node-story-reporting-loop.62":"02","text.app-node-story-reporting-loop.63":"TRACE","text.app-node-story-reporting-loop.64":"03","text.app-node-story-reporting-loop.65":"BRING THE NEXT STEP","text.app-node-story-reporting-loop.66":"Explore here. Scroll to pull back ","text.app-node-story-reporting-loop.67":"NEXT / ONE VIEW. A WIDER REACH. ↓","text.app-node-story-reporting-loop.68":"Journey through the practice overview","text.app-node-story-reporting-loop.69":"EXPLORE ","text.app-node-story-reporting-loop.70":" WIDER VIEW","link.app-node-story-reporting-loop.71":"#report-adoption","text.app-node-story-reporting-loop.72":"Continue to the wider view ","image.app-node-story-reporting-loop.73":"/brands/billing/power-bi.svg","text.app-node-story-reporting-loop.74":"Power BI","text.app-node-story-reporting-loop.75":"Practice overview","text.app-node-story-reporting-loop.76":"FICTIONAL DATA / REAL REVIEW LOGIC","text.app-node-story-reporting-loop.77":"Edit filters ","text.app-node-story-reporting-loop.78":"Choose a fictional client","text.app-node-story-reporting-loop.79":"3 bills","text.app-node-story-reporting-loop.80":"Touch benefit and vendor","text.app-node-story-reporting-loop.81":"Touch bill type","text.app-node-story-reporting-loop.82":"All","text.app-node-story-reporting-loop.83":"List bill","text.app-node-story-reporting-loop.84":"Self bill","text.app-node-story-reporting-loop.85":"Touch review month","text.app-node-story-reporting-loop.86":"August","text.app-node-story-reporting-loop.87":"September","text.app-node-story-reporting-loop.88":"Reference in place.","text.app-node-story-reporting-loop.89":"Preserve the originals.","text.app-node-story-reporting-loop.90":"Report views","text.app-node-story-reporting-loop.91":"Billing report","text.app-node-story-reporting-loop.92":"Monthly premium","text.app-node-story-reporting-loop.93":" vs prior month","text.app-node-story-reporting-loop.94":"Covered people","text.app-node-story-reporting-loop.95":" vs prior month","text.app-node-story-reporting-loop.96":"Chart view","text.app-node-story-reporting-loop.97":"Premium trend","text.app-node-story-reporting-loop.98":"Covered people","text.app-node-story-reporting-loop.99":"REVIEW QUESTION","text.app-node-story-reporting-loop.100":" baseline","text.app-node-story-reporting-loop.101":"Every signal has a story.","text.app-node-story-reporting-loop.102":"Compare the premium with enrollment, then bring the next step. A review signal is not a confirmed billing error.","text.app-node-story-reporting-loop.103":"Source logic","text.app-node-story-reporting-loop.104":"01 / ORGANIZE","text.app-node-story-reporting-loop.105":"Start with structure.","text.app-node-story-reporting-loop.106":"Monthly census and billing stay in their original client folders. Power BI references the files dynamically.","text.app-node-story-reporting-loop.107":"Client folder","text.app-node-story-reporting-loop.108":"Census + billing","text.app-node-story-reporting-loop.109":"One connected view","text.app-node-story-reporting-loop.110":"9 bill streams · 36 monthly files","text.app-node-story-reporting-loop.111":"Three fictional clients. No source files to download.","text.app-node-story-reporting-loop.112":"Bring the next step","text.app-node-story-reporting-loop.113":"03 / BRING THE NEXT STEP","text.app-node-story-reporting-loop.114":"Before the client","text.app-node-story-reporting-loop.115":"has to ask.","text.app-node-story-reporting-loop.116":"01 / SPOT","text.app-node-story-reporting-loop.117":"Difference to the ","text.app-node-story-reporting-loop.118":" enrollment-only comparison. A reason to investigate.","text.app-node-story-reporting-loop.119":"02 / TRACE","text.app-node-story-reporting-loop.120":"03 / ACT WITH CONTEXT","text.app-node-story-reporting-loop.121":"Illustration · Not an actual Power BI capture","link.app-node-story-reporting-loop.122":"#report-adoption","text.app-node-story-reporting-loop.123":"Continue to the wider view ","text.app-node-story-reporting-loop.124":"Miguel’s client view connects with VP, SVP, account executives, client HR and payroll, and vendors MetLife, UHC and Cigna. Illustrated reach, not an organizational chart.","text.app-node-story-reporting-loop.125":"MIGUEL","text.app-node-story-reporting-loop.126":"MY CLIENT","text.app-node-story-reporting-loop.127":"VIEW","text.app-node-story-reporting-loop.128":"ONE CONNECTED VIEW / ILLUSTRATED REACH","text.app-node-story-reporting-loop.129":"ONE VIEW. A WIDER REACH.","text.app-node-story-reporting-loop.130":"From my client view","text.app-node-story-reporting-loop.131":"to a leadership view.","text.app-node-story-reporting-loop.132":"Leadership adopted the dashboard to see across the practice as the automations ran.","text.app-node-story-reporting-loop.133":"REPORTED EXPERIENCE","text.app-node-story-secure-network.1":"ACROSS THE PRACTICE","text.app-node-story-secure-network.2":"Different systems.","text.app-node-story-secure-network.3":"Same discipline.","text.app-node-story-secure-network.4":"Every client has a different mix. I work across their vendors, administration platforms, and BI systems to turn complex data into useful answers.","text.app-node-story-secure-network.5":"HEALTHCARE · BENEFITS · FINANCIAL PROTECTION","text.app-node-story-secure-network.6":"ONE CLIENT","text.app-node-story-secure-network.7":"Multiple vendors.","text.app-node-story-secure-network.8":"Sometimes multiple platforms.","text.app-node-story-secure-network.9":"Protected by design","text.app-node-story-secure-network.10":"SENSITIVE DATA","text.app-node-story-secure-network.11":"PHI deserves care.","text.app-node-story-secure-network.12":"HIPAA-informed safeguards.","text.app-node-story-secure-network.13":"BENEFITS ADMINISTRATION + BI","text.app-node-story-secure-network.14":"Selerix BenSelect in this case · Broader experience across accounts","text.app-node-story-secure-network.15":"Encrypted-data illustration · No real records or live connections. Platform and vendor combinations vary by client.","text.app-node-story-secure-network.16":"01 / ACCESS","text.app-node-story-secure-network.17":"Only what’s needed.","text.app-node-story-secure-network.18":"Scope access to the people and systems doing the work.","text.app-node-story-secure-network.19":"02 / PROTECTION","text.app-node-story-secure-network.20":"Care in every transfer.","text.app-node-story-secure-network.21":"Use protected channels and treat sensitive data deliberately.","text.app-node-story-secure-network.22":"03 / ACCOUNTABILITY","text.app-node-story-secure-network.23":"Keep a clear trail.","text.app-node-story-secure-network.24":"Preserve source data and make processing and exceptions traceable.","link.app-node-story-secure-network.25":"https://www.hhs.gov/hipaa/for-professionals/security/laws-regulations/index.html","text.app-node-story-secure-network.26":"HIPAA security guidance ","text.app-not-found.1":"404 · Route not found","text.app-not-found.2":"This system took a wrong turn.","text.app-not-found.3":"The page you requested does not exist or has moved.","link.app-not-found.4":"/","text.app-not-found.5":"Return home","text.app-resume-page.1":"EXPERIENCE, IN FOCUS","text.app-resume-page.2":"Experience.","text.app-resume-page.3":"Choose a résumé, download the PDF, or print a copy.","text.app-resume-page.4":"Operations","text.app-resume-page.5":"Analytics","text.app-resume-page.6":"Systems & design","text.app-resume-page.7":"Miguel Rodriguez","text.app-resume-page.8":"Grand Prairie, TX ","link.app-resume-page.9":"tel:+19726397421","text.app-resume-page.10":"972-639-7421","link.app-resume-page.11":"mailto:marodriguez_2010@ymail.com","text.app-resume-page.12":"marodriguez_2010@ymail.com","link.app-resume-page.13":"https://miguel.systems/","text.app-resume-page.14":"miguel.systems","link.app-resume-page.15":"https://github.com/MRodriguez2010","text.app-resume-page.16":"github.com/MRodriguez2010","link.app-resume-page.17":"https://www.linkedin.com/in/miguel-rodriguez-3573b485","text.app-resume-page.18":"LinkedIn profile","text.app-resume-page.19":"Professional Summary","text.app-resume-page.20":"Core Skills","text.app-resume-page.21":"Professional Experience","text.app-resume-page.22":"Selected Projects","text.app-resume-page.23":"Earlier Experience","text.app-resume-page.24":"Hilton Worldwide | National Sales Data Analyst | February 2015 - May 2017.","text.app-resume-page.25":" Built sales reports and Excel dashboards; began using Power BI while Hilton prioritized Tableau.","text.app-resume-page.26":"CSC ServiceWorks | Workforce Analyst and A/R Billing | March - November 2014.","text.app-resume-page.27":" Built an Excel/PeopleSoft billing workflow that reduced a three-day process to approximately five hours; provided workforce data and forecasts.","text.app-resume-page.28":"United Way of Metropolitan Dallas | Auditor | June 2017 - March 2018. Supported donation-data reconciliation, secure file transfers, and Salesforce transition and training. Additional role: Etan Industries, Collections/Data Specialist/Workforce Analyst (September 2012 - November 2013).","text.app-resume-page.29":"Education and Languages","text.app-resume-page.30":"Dallas College | Associate of Science | 2011 - 2015","text.app-resume-page.31":"English and Spanish | Native or bilingual proficiency","text.app-resume-resume-toolbar.1":"Résumé selection and actions","text.app-resume-resume-toolbar.2":"Experience, in focus","text.app-resume-resume-toolbar.3":"Find the right résumé.","text.app-resume-resume-toolbar.4":"Updated Oct 10, 2026","text.app-resume-resume-toolbar.5":"Résumé focus ","text.app-resume-resume-toolbar.6":"9 versions","text.app-resume-resume-toolbar.7":"Download PDF","text.app-resume-resume-toolbar.8":"2 pages · selected résumé","link.app-resume-resume-toolbar.9":"/","text.app-resume-resume-toolbar.10":"Back to home","text.app-resume-resume-toolbar.11":"Print or save as PDF","link.app-resume-resume-toolbar.12":"https://github.com/MRodriguez2010","text.app-resume-resume-toolbar.13":"GitHub profile","text.app-work--slug--page.1":"← All work","text.app-work--slug--page.2":"Project stage","text.app-work--slug--page.3":"Tools and disciplines","text.app-work--slug--page.4":"Scope & evidence","text.app-work--slug--page.5":"Continue exploring","link.app-work--slug--page.6":"/work","text.app-work--slug--page.7":"Explore the full collection ","link.app-work-billing-automation-page.1":"/work","text.app-work-billing-automation-page.2":"All work","text.app-work-billing-automation-page.3":"BENEFITS OPERATIONS / REAL PROJECT","text.app-work-billing-automation-page.4":"Complex benefits.","text.app-work-billing-automation-page.5":"Clarity, on repeat.","text.app-work-billing-automation-page.6":"Power Query automated the MetLife bill. I connected census preparation, benefit calculations and exception review, then carried the approach into broader Alteryx work and Power BI reporting.","text.app-work-billing-automation-page.7":"Census data becomes a bill and its context","text.app-work-billing-automation-page.8":"Census","text.app-work-billing-automation-page.9":"Rules","text.app-work-billing-automation-page.10":"Clarity","text.app-work-billing-automation-page.11":"SELF-BILL + EXCEPTION CONTEXT","text.app-work-billing-automation-page.12":"MY CONTRIBUTION","text.app-work-billing-automation-page.13":"Automation design · team leadership · reporting","text.app-work-billing-automation-page.14":"THE PRACTICE","text.app-work-billing-automation-page.15":"Power Query → Alteryx → Power BI","text.app-work-billing-automation-page.16":"PROJECT CONTEXT","text.app-work-billing-automation-page.17":"Delivered at Lockton","text.app-work-billing-automation-page.18":"On this case study","link.app-work-billing-automation-page.19":"#example","text.app-work-billing-automation-page.20":"01","text.app-work-billing-automation-page.21":"Explore the workflow","link.app-work-billing-automation-page.22":"#problem","text.app-work-billing-automation-page.23":"02","text.app-work-billing-automation-page.24":"The challenge","link.app-work-billing-automation-page.25":"#build","text.app-work-billing-automation-page.26":"03","text.app-work-billing-automation-page.27":"The build","link.app-work-billing-automation-page.28":"#result","text.app-work-billing-automation-page.29":"04","text.app-work-billing-automation-page.30":"Impact & evidence","text.app-work-billing-automation-page.31":"Interactive MetLife workflow","text.app-work-billing-automation-page.32":"02 / THE CHALLENGE","text.app-work-billing-automation-page.33":"Beyond a balanced total.","text.app-work-billing-automation-page.34":"A bill you can explain.","text.app-work-billing-automation-page.35":"A self-bill is a calculation, not just a list. One client’s coverage crossed different benefit rules. A missing detail could change the result—and leave the analyst explaining a costly adjustment next month.","text.app-work-billing-automation-page.36":"Connected factors behind the self-bill","text.app-work-billing-automation-page.37":"0","text.app-work-billing-automation-page.38":"The hard part was keeping these relationships correct as the population changed.","text.app-work-billing-automation-page.39":"GROWING CENSUS · CHANGING ELECTIONS · REPEATABLE LOGIC","text.app-work-billing-automation-page.40":"03 / THE BUILD","text.app-work-billing-automation-page.41":"Automate the work.","text.app-work-billing-automation-page.42":"Keep the judgment.","text.app-work-billing-automation-page.43":"Power Query came first. My HRO presentation at State of the Companies opened the Alteryx opportunity; the following year’s SOC included the two-week cohort challenge. I project-managed a small analyst team a few months later.","text.app-work-billing-automation-page.44":"POWER QUERY / ORIGINAL WORKBOOK","text.app-work-billing-automation-page.45":"Make the dependencies explicit.","text.app-work-billing-automation-page.46":"Month-based inputs feed joins, mappings, benefit calculations and itemized output. Separate checks expose missing employer-paid benefits and location classes, even when the totals reconcile.","text.app-work-billing-automation-page.47":"Source selection connects to joined census data, benefit branches, and billing and exception outputs","text.app-work-billing-automation-page.48":"Month + source","text.app-work-billing-automation-page.49":"Joined census","text.app-work-billing-automation-page.50":"Life","text.app-work-billing-automation-page.51":"Disability","text.app-work-billing-automation-page.52":"Other benefits","text.app-work-billing-automation-page.53":"Billing detail","text.app-work-billing-automation-page.54":"Exception queues","text.app-work-billing-automation-page.55":"Based on the supplied Power Query structure","text.app-work-billing-automation-page.56":"THE WIDER PRACTICE","text.app-work-billing-automation-page.57":"Give the team room to run.","text.app-work-billing-automation-page.58":"The cohort’s reusable analytic app kept client- and vendor-agnostic logic behind a simple interface. Later manager opt-in adoption brought selected workflows into Alteryx, which processed larger datasets faster in my experience.","text.app-work-billing-automation-page.59":"Background run","text.app-work-billing-automation-page.60":"Illustrated selected workflows · manually launched · reported experience","text.app-work-billing-automation-page.61":"AN EXCEPTION IS A HANDOFF","text.app-work-billing-automation-page.62":"Find the issue.","text.app-work-billing-automation-page.63":"Keep the path forward clear.","text.app-work-billing-automation-page.64":"Hundreds of missing employer-paid coverage flags needed investigation. An acquired group was legitimately ineligible; duplicate HR profiles were actual source errors. The client owned corrections.","text.app-work-billing-automation-page.65":"01","text.app-work-billing-automation-page.66":"Automation identifies","text.app-work-billing-automation-page.67":"Check expected coverage and source quality beyond whether the bill reconciles.","text.app-work-billing-automation-page.68":"02","text.app-work-billing-automation-page.69":"Confirm the reason","text.app-work-billing-automation-page.70":"Document valid eligibility exceptions; ask HR or payroll to correct duplicate or incomplete profiles.","text.app-work-billing-automation-page.71":"03","text.app-work-billing-automation-page.72":"The analyst reviews","text.app-work-billing-automation-page.73":"Rerun the workflow and review the result. Preserve original files and the reason for each unresolved item.","text.app-work-billing-automation-page.74":"04 / THE IMPACT","text.app-work-billing-automation-page.75":"Less processing.","text.app-work-billing-automation-page.76":"More perspective.","text.app-work-billing-automation-page.77":"A more reliable workflow changed how the team used its time and how we approached the client: with the issue, the explanation, and the next action.","text.app-work-billing-automation-page.78":"The approximately nine-hour-to-twenty-minute MetLife result is my firsthand Power Query account. Broader Alteryx adoption is a separate part of the story.","text.app-work-billing-automation-page.79":"CLOSE THE LOOP","text.app-work-billing-automation-page.80":"A finished bill","text.app-work-billing-automation-page.81":"became a useful signal.","text.app-work-billing-automation-page.82":"I organized census and billing files so Power BI could reference client folders dynamically, without changing the source files. Trends raised questions earlier. Leadership adopted the dashboard to see across the practice.","link.app-work-billing-automation-page.83":"/#reporting-title","text.app-work-billing-automation-page.84":"Explore the reporting story","text.app-work-billing-automation-page.85":"Census + billing folders","text.app-work-billing-automation-page.86":"Reference · compare · review","text.app-work-billing-automation-page.87":"Abstract reporting signal, not measured client data","text.app-work-billing-automation-page.88":"Concept illustration · no measured values","text.app-work-billing-automation-page.89":"Analyst view → leadership view","text.app-work-billing-automation-page.90":"LOOK CLOSER","text.app-work-billing-automation-page.91":"The evidence behind the story.","text.app-work-billing-automation-page.92":"The implementation and the delivery experience have different sources. Keep both in view.","text.app-work-billing-automation-page.93":"0","text.app-work-billing-automation-page.94":"Original workbooks remain private. This page shares the approach, not employee records or proprietary files.","link.app-work-billing-automation-page.95":"/work","text.app-work-billing-automation-page.96":"Explore more work","link.app-work-billing-automation-page.97":"/contact","text.app-work-billing-automation-page.98":"Let’s connect","link.app-work-faultline-page.1":"/work","text.app-work-faultline-page.2":" All work","text.app-work-faultline-page.3":"F/","text.app-work-faultline-page.4":" FAULTLINE ","text.app-work-faultline-page.5":"ENGINEERING CASE STUDY","text.app-work-faultline-page.6":"Make the failure visible.","text.app-work-faultline-page.7":"Make the repair provable.","text.app-work-faultline-page.8":"A local order-to-revenue system built to answer a practical AI question: when a model proposes a repair, how do we know the business data is actually correct?","link.app-work-faultline-page.9":"/lab/faultline","text.app-work-faultline-page.10":"Explore the interactive lab ","link.app-work-faultline-page.11":"/faultline/faultline-source.zip","text.app-work-faultline-page.12":"Download reproducible source ","text.app-work-faultline-page.13":"Orchestrated by Miguel","text.app-work-faultline-page.14":"September 2026 · v1","text.app-work-faultline-page.15":"Python · PostgreSQL · Ollama · React","text.app-work-faultline-page.16":"THE RESULT","text.app-work-faultline-page.17":"The runbook won.","text.app-work-faultline-page.18":"The verifier explained why.","text.app-work-faultline-page.19":"The explicit runbook repaired all ","text.app-work-faultline-page.20":" of ","text.app-work-faultline-page.21":" scenario variations. The local Qwen3 4B model repaired ","text.app-work-faultline-page.22":" of ","text.app-work-faultline-page.23":" attempts. No interrupted-write attempt repaired the ledger: ","text.app-work-faultline-page.24":" abstained and ","text.app-work-faultline-page.25":" restarted the worker, leaving a duplicate effect.","text.app-work-faultline-page.26":"The important behavior is visible in the lab: an accepted action can still produce incorrect records. The evaluator reports that failure independently of the model’s explanation.","text.app-work-faultline-page.27":"Runbook · distinct scenarios","text.app-work-faultline-page.28":"Model · repeated attempts","text.app-work-faultline-page.29":"Backend tests passed","text.app-work-faultline-page.30":"Three known synthetic fault families, five held-out input variations each, two model attempts per variation. Repeated attempts are correlated; this is a bounded experiment, not a general reliability estimate.","text.app-work-faultline-page.31":"ARCHITECTURE","text.app-work-faultline-page.32":"The database is real.","text.app-work-faultline-page.33":"So are the mistakes.","text.app-work-faultline-page.34":"A separate HTTP ingestion process persists fictional sale and refund events in PostgreSQL. A worker turns those deliveries into a revenue ledger. Its legacy mode deliberately permits duplicates, splits writes from acknowledgements, and skips the unit contract.","text.app-work-faultline-page.35":"01","text.app-work-faultline-page.36":"Capture the incident","text.app-work-faultline-page.37":"Repeated input, a real worker process exit, or an incompatible envelope creates a measurable discrepancy. The original deliveries and ledger state are retained.","text.app-work-faultline-page.38":"02","text.app-work-faultline-page.39":"Fork the same state","text.app-work-faultline-page.40":"Restart, runbook, and model each receive a separate copy. SHA-256 fingerprints confirm matching state at the fork and an unchanged source afterward.","text.app-work-faultline-page.41":"03","text.app-work-faultline-page.42":"Constrain the action","text.app-work-faultline-page.43":"The model selects one operation from a closed catalog. A host-owned broker enforces the run identity, action budget, deadline, cancellation, and receipt-based retries. The model receives no shell, SQL, or arbitrary network tool.","text.app-work-faultline-page.44":"04","text.app-work-faultline-page.45":"Verify the business records","text.app-work-faultline-page.46":"An independent evaluator compares identities, exact amounts, completeness, duplicate effects, and quarantine against truth generated before fault injection. Matching totals alone cannot pass a corrupted ledger.","text.app-work-faultline-page.47":"Safe processing commits the tenant-scoped event identity, ledger effect, and acknowledgement together. An incompatible record remains available for review. Repair rebuilds only the disposable branch’s projection.","link.app-work-faultline-page.48":"/faultline/docs/ARCHITECTURE.md","text.app-work-faultline-page.49":"Read the architecture","link.app-work-faultline-page.50":"/faultline/source/worker.py.txt","text.app-work-faultline-page.51":"Inspect the worker","link.app-work-faultline-page.52":"/faultline/source/broker.py.txt","text.app-work-faultline-page.53":"Inspect the action broker","link.app-work-faultline-page.54":"/faultline/source/evaluator.py.txt","text.app-work-faultline-page.55":"Inspect the independent evaluator","text.app-work-faultline-page.56":"EVALUATION","text.app-work-faultline-page.57":"Publish every attempt.","text.app-work-faultline-page.58":"The protocol, action catalog, prompt, and code were fixed before the held-out execution. The baseline and model received the same observations and used the same executor. The three examples in the lab always use seed 103, attempt 0; they were not selected for a successful model outcome.","text.app-work-faultline-page.59":"Results by fault family","text.app-work-faultline-page.60":"Fault family","text.app-work-faultline-page.61":"Runbook scenarios","text.app-work-faultline-page.62":"Model attempts","text.app-work-faultline-page.63":"Model selection latency was ","text.app-work-faultline-page.64":" seconds at the median and ","text.app-work-faultline-page.65":" seconds at p95. These are measured local request times, with linearly interpolated percentiles; they exclude recovery execution. Hardware: RTX 2080 SUPER, 8 GB VRAM, approximately 125 GiB system RAM. No paid inference service was used.","text.app-work-faultline-page.66":"All ","text.app-work-faultline-page.67":" planned attempts completed without a model request error in this evaluation. An earlier development run had a cold-start timeout; it remains documented separately. Model settings: temperature 0, 4,096-token context, 240-token completion cap, 60-second request timeout.","text.app-work-faultline-page.68":"Inspect all ","text.app-work-faultline-page.69":" model attempts and raw records","text.app-work-faultline-page.70":"Individual model attempts","text.app-work-faultline-page.71":"Incident / seed","text.app-work-faultline-page.72":"Attempt","text.app-work-faultline-page.73":"Action","text.app-work-faultline-page.74":"Result","link.app-work-faultline-page.75":"/faultline/protocol.json","text.app-work-faultline-page.76":"Frozen protocol","link.app-work-faultline-page.77":"/faultline/results.json","text.app-work-faultline-page.78":"Aggregate results","link.app-work-faultline-page.79":"/faultline/evidence/manifest.json","text.app-work-faultline-page.80":"Run manifest + hashes","link.app-work-faultline-page.81":"/faultline/docs/EVALUATION.md","text.app-work-faultline-page.82":"Method and limitations","text.app-work-faultline-page.83":"VERIFICATION","text.app-work-faultline-page.84":"Test the failures","text.app-work-faultline-page.85":"that matter.","text.app-work-faultline-page.86":" backend tests passed against PostgreSQL in ","text.app-work-faultline-page.87":" seconds. They exercise real process exits and concurrent workers, as well as the contract and authority boundaries.","text.app-work-faultline-page.88":"Four process exit boundaries, followed by recovery.","text.app-work-faultline-page.89":"Concurrent workers, tenant-scoped identity, multiple valid events on one order, and refunds.","text.app-work-faultline-page.90":"Action retries, interrupted repair receipts, cancellation, deadlines, budget limits, and cross-run denial.","text.app-work-faultline-page.91":"Conflicting payload quarantine and explicit review of incompatible units.","text.app-work-faultline-page.92":"A corrupted ledger that balances in total but contains incorrect records.","text.app-work-faultline-page.93":"HTTP origin, content-type, size, identifier, and envelope rejection.","text.app-work-faultline-page.94":"The browser replay is also checked for agreement with the captured records and tested across desktop and narrow layouts. The detailed release checks are retained alongside the source; physical-device acceptance is separate.","link.app-work-faultline-page.95":"/faultline/backend-tests.txt","text.app-work-faultline-page.96":"Actual backend test output","link.app-work-faultline-page.97":"/faultline/source/test_lab.py.txt","text.app-work-faultline-page.98":"Read the test suite","link.app-work-faultline-page.99":"/faultline/docs/RELEASE-VERIFICATION.md","text.app-work-faultline-page.100":"Website and release verification","text.app-work-faultline-page.101":"TRADEOFFS","text.app-work-faultline-page.102":"Know what this proves.","text.app-work-faultline-page.103":"The local model is a one-step recovery selector over known operations. The work demonstrates bounded execution, evaluation design, failure analysis, reproducible records, and a usable explanation of the system. It does not establish general incident diagnosis or production readiness.","text.app-work-faultline-page.104":"The public website serves captured synthetic records. Visitors can explore and download them; they cannot trigger private services or run new model calls. The downloadable Python project runs the actual services locally.","text.app-work-faultline-page.105":"There are three known fault families, small datasets, one model, and one workstation. The broker’s controls are tested boundaries within this lab, not an exhaustive security assessment. Observations cite known IDs, but the prose explanation is not independently scored for semantic accuracy.","text.app-work-faultline-page.106":"Miguel selected the project objective and authorized the build. Codex assisted with implementation, documentation, and automated verification. A personal technical walkthrough and interview preparation are still separate work; the project does not claim independently assessed proficiency.","link.app-work-faultline-page.107":"/faultline/docs/SECURITY.md","text.app-work-faultline-page.108":"Threat boundaries","link.app-work-faultline-page.109":"/faultline/docs/BUILD_LOG.md","text.app-work-faultline-page.110":"Build record and contributions","text.app-work-faultline-page.111":"REPRODUCE","text.app-work-faultline-page.112":"Run the system locally.","text.app-work-faultline-page.113":"The source bundle preserves the evaluated worker, broker, evaluator, fixtures, and tests. Release changes add documentation, export tooling, and a database startup fix. The exporter checks that the evaluated core is unchanged. It requires Python 3.12+, Docker, and an existing local Ollama model for the optional model comparison.","text.app-work-faultline-page.114":"Add ","text.app-work-faultline-page.115":"--model qwen3:4b","text.app-work-faultline-page.116":" to execute the local model comparison. The database helper owns only its labelled, disposable lab container and volume.","link.app-work-faultline-page.117":"/faultline/faultline-source.zip","text.app-work-faultline-page.118":"Download source ZIP ↓","link.app-work-faultline-page.119":"/faultline/docs/OPERATIONS.md","text.app-work-faultline-page.120":"Setup and cleanup guide","text.app-work-faultline-page.121":"Verify the source and evidence fingerprints","text.app-work-faultline-page.122":"Evaluated backend revision","text.app-work-faultline-page.123":"Source bundle revision","text.app-work-faultline-page.124":"Frozen protocol SHA-256","text.app-work-faultline-page.125":"Recorded model digest","text.app-work-faultline-page.126":"Hashes identify retained content. They are not independent attestation of the experiment.","link.app-work-faultline-page.127":"/faultline/files.json","text.app-work-faultline-page.128":"All published file hashes","link.app-work-faultline-page.129":"/lab/faultline","text.app-work-faultline-page.130":"RETURN TO THE LAB","text.app-work-faultline-page.131":"Inspect the failure yourself.","text.app-work-faultline-page.132":"The original inputs, the proposed repair, and the final records.","text.app-work-u1-mechanical-page.1":"03 / Explore the rollout","text.app-work-u1-mechanical-page.2":"The front door is only the beginning.","link.app-work-u1-mechanical-page.3":"https://new.u1mechanical.com/","text.app-work-u1-mechanical-page.4":"Open the website preview ","text.app-work-u1-mechanical-page.5":" (opens in a new tab)","image.app-work-u1-mechanical-page.6":"/media/websites/u1-mechanical.png","text.app-work-u1-mechanical-page.7":"U1 Mechanical public website with owner-review and synthetic-AI notices, an HVAC installation hero, and browse, compare, and project-planning paths","text.app-work-u1-mechanical-page.8":"Public homepage captured September 20, 2026 (Central time). Review notices remain visible; business content and imagery still require owner approval.","text.app-work-u1-mechanical-page.9":"One system · three experiences","text.app-work-u1-mechanical-page.10":"For the customer. The office. The technician.","text.app-work-u1-mechanical-page.11":"01 / FRONTEND","text.app-work-u1-mechanical-page.12":"Customer website","text.app-work-u1-mechanical-page.13":"Service discovery, guided shopping, equipment comparison, and quote or installation requests. The public UX helps people choose a useful next step.","link.app-work-u1-mechanical-page.14":"https://new.u1mechanical.com/","text.app-work-u1-mechanical-page.15":"new.u1mechanical.com ","text.app-work-u1-mechanical-page.16":"(opens in a new tab)","text.app-work-u1-mechanical-page.17":"Public owner-review preview","text.app-work-u1-mechanical-page.18":"02 / OFFICE WEBAPP","text.app-work-u1-mechanical-page.19":"Owner dashboard","text.app-work-u1-mechanical-page.20":"A protected workspace for the operational side: catalog, customer and request workflows, estimates, and dispatch. Roles govern access to the underlying records.","text.app-work-u1-mechanical-page.21":"admin-new.u1mechanical.com","text.app-work-u1-mechanical-page.22":"Real owner password login verified","text.app-work-u1-mechanical-page.23":"03 / FIELD WEBAPP","text.app-work-u1-mechanical-page.24":"Technician experience","text.app-work-u1-mechanical-page.25":"A focused field interface for assigned work. It shares the application’s data and authorization model, with a separate entry point for technicians.","text.app-work-u1-mechanical-page.26":"field.u1mechanical.com","text.app-work-u1-mechanical-page.27":"Hosted access gate verified; field sign-in acceptance remains open","text.app-work-u1-mechanical-page.28":"SHARED BACKEND","text.app-work-u1-mechanical-page.29":"Server routes → authorization → Prisma → Neon","text.app-work-u1-mechanical-page.30":"Next.js handles server-side requests. NextAuth and fresh role checks protect operations. Prisma connects to Neon PostgreSQL over secure WebSockets on this host. External storage keeps uploaded files separate from deployed code. GoDaddy runs the same qualified application in three included app slots.","text.app-work-u1-mechanical-page.31":"These are three entry points to a shared system, not three independent databases. Host-only cookies require a separate sign-in on each address.","text.app-work-u1-mechanical-page.32":"The path to a working release","text.app-work-u1-mechanical-page.33":"Research. Build. Fail. Learn. Try again.","text.app-work-u1-mechanical-page.34":"The useful part of the story is the loop: each failed assumption changed what was researched, built, or tested next.","text.app-work-u1-mechanical-page.35":"Research into decisions","text.app-work-u1-mechanical-page.36":"Mobbin helped ask better design questions.","text.app-work-u1-mechanical-page.37":"The research focused on the public website and quote journey. Operational layouts were preserved. These references informed independently implemented patterns.","link.app-work-u1-mechanical-page.38":"https://mobbin.com/sites/sections/2c48bf0b-3622-44fc-8fb1-76ff63d17cbb","text.app-work-u1-mechanical-page.39":"Airtasker · hero","text.app-work-u1-mechanical-page.40":"Pair a clear proposition with an obvious next action.","text.app-work-u1-mechanical-page.41":"View Mobbin reference ","text.app-work-u1-mechanical-page.42":" (opens in a new tab)","link.app-work-u1-mechanical-page.43":"https://mobbin.com/screens/28175899-b402-4c29-970f-18234411d48c","text.app-work-u1-mechanical-page.44":"Synthesia · comparison","text.app-work-u1-mechanical-page.45":"Use consistent labels and columns so options can be compared.","text.app-work-u1-mechanical-page.46":"View Mobbin reference ","text.app-work-u1-mechanical-page.47":" (opens in a new tab)","link.app-work-u1-mechanical-page.48":"https://mobbin.com/flows/13bc2f40-c708-4405-89a3-3a6e72376e07","text.app-work-u1-mechanical-page.49":"Jobber · request flow","text.app-work-u1-mechanical-page.50":"Explain the request, allow supporting details, and acknowledge receipt honestly.","text.app-work-u1-mechanical-page.51":"View Mobbin reference ","text.app-work-u1-mechanical-page.52":" (opens in a new tab)","link.app-work-u1-mechanical-page.53":"https://mobbin.com/sites/sections/3d371462-eede-464f-9512-2ecc9a3e008a","text.app-work-u1-mechanical-page.54":"Daylight · next steps","text.app-work-u1-mechanical-page.55":"Show distinct paths instead of making every visitor start the same way.","text.app-work-u1-mechanical-page.56":"View Mobbin reference ","text.app-work-u1-mechanical-page.57":" (opens in a new tab)","text.app-work-u1-mechanical-page.58":"Mobbin is a research tool, not a runtime dependency. Envato Elements catalog research also informed the exploration; no new licensed asset acquisition was claimed.","text.app-work-u1-mechanical-page.59":"Inspect the hard parts","text.app-work-u1-mechanical-page.60":"Four failures that improved the release.","text.app-work-u1-mechanical-page.61":"Open a failure to follow the diagnosis, repair, and evidence.","text.app-work-u1-mechanical-page.62":"What failed","text.app-work-u1-mechanical-page.63":"What we researched","text.app-work-u1-mechanical-page.64":"What changed","text.app-work-u1-mechanical-page.65":"How it was checked","text.app-work-u1-mechanical-page.66":"The technology, with a purpose","text.app-work-u1-mechanical-page.67":"Every layer had a job.","text.app-work-u1-mechanical-page.68":"Interface","text.app-work-u1-mechanical-page.69":"React, TypeScript, and Next.js for pages and workflows; Tailwind CSS and Radix UI primitives for styling and controls; Framer Motion with reduced-motion checks.","text.app-work-u1-mechanical-page.70":"Backend & data","text.app-work-u1-mechanical-page.71":"Next.js server routes, Prisma, versioned migrations, and Neon PostgreSQL. Neon’s serverless driver supplied the secure WebSocket transport supported by the actual host.","text.app-work-u1-mechanical-page.72":"Identity & files","text.app-work-u1-mechanical-page.73":"NextAuth password sessions, role-based access, persistent login throttling, and external Neon storage. Hosted upload acceptance remains a separate task.","text.app-work-u1-mechanical-page.74":"Hosting & verification","text.app-work-u1-mechanical-page.75":"GoDaddy Node.js apps, custom subdomains, HTTPS, exact-artifact checks, disposable PostgreSQL fixtures, Playwright browser journeys, and live route read-back.","text.app-world-intro-world-intro.1":"Explore my world","text.app-world-intro-world-intro.2":"Systems that","text.app-world-intro-world-intro.3":"bring data","text.app-world-intro-world-intro.4":"to life","text.app-world-intro-world-intro.5":"Explore World, scroll to selected work","text.app-world-intro-world-intro.6":"Explore","text.app-world-intro-world-intro.7":"World","text.app-world-intro-world-intro.8":"Data flows around a globe into Systems. Drag or use arrow keys to rotate.","text.app-world-intro-world-intro.9":"Explore connected disciplines","text.app-world-intro-world-intro.10":"0","text.app-world-intro-world-intro.11":"02 / SYSTEMS","text.app-world-intro-world-intro.12":"MIGUEL RODRIGUEZ","text.app-world-intro-world-intro.13":"Reset globe rotation","text.app-world-intro-world-intro.14":"Reset globe rotation","text.app-world-intro-world-intro.15":"Pause flow","text.app-world-intro-world-intro.16":"Selected work 001, benefits billing automation","text.components-AlteryxMedia.1":"Sanitized Alteryx workflow demonstration poster","text.components-AlteryxMedia.2":"Alteryx workflow poster unavailable","text.components-AlteryxMedia.3":"Alteryx workflow","text.components-AlteryxMedia.4":"Automation demo","text.components-AlteryxMedia.5":"Play the 8-second excerpt","text.components-AlteryxMedia.6":"Your browser does not support embedded video.","text.components-AlteryxMedia.7":"The short clip is not available in this build.","text.components-AlteryxMedia.8":"The written project summary remains available below.","text.components-AlteryxMedia.9":"Return to poster","text.components-Brand.1":"miguel","text.components-Brand.2":"systems","link.components-CaseStudyIntro.1":"/work","text.components-CaseStudyIntro.2":" All work","text.components-CaseStudyIntro.3":"My contribution","text.components-CaseStudyIntro.4":"Timeframe","text.components-CaseStudyIntro.5":"Status","text.components-CaseStudyIntro.6":"THE WORK IN ONE LINE","text.components-CaseStudyIntro.7":"On this case study","link.components-CaseStudyIntro.8":"#example","text.components-CaseStudyIntro.9":"01","text.components-CaseStudyIntro.10":"Try the example","link.components-CaseStudyIntro.11":"#problem","text.components-CaseStudyIntro.12":"02","text.components-CaseStudyIntro.13":"Problem","link.components-CaseStudyIntro.14":"#build","text.components-CaseStudyIntro.15":"03","text.components-CaseStudyIntro.16":"Build","link.components-CaseStudyIntro.17":"#result","text.components-CaseStudyIntro.18":"04","text.components-CaseStudyIntro.19":"Result & scope","text.components-CaseStudyIntro.20":"02 / The problem","text.components-CaseStudyIntro.21":"03 / What I built","text.components-CaseStudyIntro.22":"04 / Result & scope","text.components-CaseStudyIntro.23":"What changed. What comes next.","text.components-CaseStudyIntro.24":"0","text.components-CaseStudyIntro.25":"Project context","text.components-CaseStudyIntro.26":"About this example","text.components-CaseStudyIntro.27":"Continue exploring","link.components-CaseStudyIntro.28":"/work","text.components-CaseStudyIntro.29":"All work ","text.components-ChartInspector.1":"Dismiss chart details","text.components-ChartInspector.2":"Dismiss ×","text.components-DinosSubsShowcase.1":"Verified prototype","text.components-DinosSubsShowcase.2":"A family business, made easier to explore.","text.components-DinosSubsShowcase.3":"The owner-review candidate keeps Dino’s recognizable food, skyline identity, checkerboard cues, slogan, and family history while giving each customer task a clear destination.","image.components-DinosSubsShowcase.4":"/media/dinos-subs-preview.jpg","text.components-DinosSubsShowcase.5":"Dino’s Subs redesign preview combining the classic skyline mark, restaurant mural, and an official sandwich photograph","text.components-DinosSubsShowcase.6":"Owner-review redesign · approved brand and official business imagery","text.components-DinosSubsShowcase.7":"Redesign route summary","text.components-DinosSubsShowcase.8":"01","text.components-DinosSubsShowcase.9":"Menu","text.components-DinosSubsShowcase.10":"All 27 numbered subs with search and filters","text.components-DinosSubsShowcase.11":"02","text.components-DinosSubsShowcase.12":"Party Subs","text.components-DinosSubsShowcase.13":"Sizes, servings, lead time, and planning rules","text.components-DinosSubsShowcase.14":"03","text.components-DinosSubsShowcase.15":"Story + Gear","text.components-DinosSubsShowcase.16":"Family continuity and register-only merchandise","text.components-DinosSubsShowcase.17":"04","text.components-DinosSubsShowcase.18":"Visit + Careers","text.components-DinosSubsShowcase.19":"Practical trip and application information","text.components-EsaExplorer.1":"Synthetic explorer","text.components-EsaExplorer.2":"See the product interaction model","text.components-EsaExplorer.3":"All organizations, responses, and results are fictional.","text.components-EsaExplorer.4":"Sentiment filters","text.components-EsaExplorer.5":"Organization","text.components-EsaExplorer.6":"Date range","text.components-EsaExplorer.7":"Source","text.components-EsaExplorer.8":"Reset filters","text.components-EsaExplorer.9":"Topic sentiment","text.components-EsaExplorer.10":"positive","text.components-EsaExplorer.11":"Select a topic","text.components-EsaExplorer.12":"Sentiment legend","text.components-EsaExplorer.13":"Positive","text.components-EsaExplorer.14":"Neutral","text.components-EsaExplorer.15":"Negative","text.components-EsaExplorer.16":"Context over time","text.components-EsaExplorer.17":"Six-month signal","text.components-EsaExplorer.18":"Event overlay ","text.components-EsaExplorer.19":"Monthly synthetic sentiment bars from January through June 2025","text.components-EsaExplorer.20":"Current lens","text.components-EsaExplorer.21":" is the active topic for ","text.components-EsaExplorer.22":", using ","text.components-EsaExplorer.23":" across ","text.components-EsaExplorer.24":". The values update deterministically to demonstrate filtering behavior.","text.components-FaultlineLab.1":"System map","text.components-FaultlineLab.2":"F/","text.components-FaultlineLab.3":" FAULTLINE ","text.components-FaultlineLab.4":"SYSTEMS LAB / 01","text.components-FaultlineLab.5":"A healthy service","text.components-FaultlineLab.6":" can still be wrong.","text.components-FaultlineLab.7":"Break the workflow. Compare the repairs. Inspect the evidence.","link.components-FaultlineLab.8":"/work/faultline","text.components-FaultlineLab.9":"The engineering behind it ","text.components-FaultlineLab.10":" Recorded locally · Synthetic data","text.components-FaultlineLab.11":"Choose a recorded incident","text.components-FaultlineLab.12":"0","text.components-FaultlineLab.13":"Recorded system state","text.components-FaultlineLab.14":" POSTGRESQL + PYTHON ","text.components-FaultlineLab.15":"Replay · seed ","text.components-FaultlineLab.16":"Replay view","text.components-FaultlineLab.17":"Map","text.components-FaultlineLab.18":"Timeline","text.components-FaultlineLab.19":"REPORTED REVENUE","text.components-FaultlineLab.20":"EXPECTED FROM VALID EVENTS","text.components-FaultlineLab.21":" deliveries · 12 valid business events","text.components-FaultlineLab.22":"RECONCILIATION GAP","text.components-FaultlineLab.23":"Execution timeline","text.components-FaultlineLab.24":"0","text.components-FaultlineLab.25":"Replay stage","text.components-FaultlineLab.26":"0","text.components-FaultlineLab.27":"ONE INCIDENT. THREE BRANCHES.","text.components-FaultlineLab.28":"Which repair actually works?","text.components-FaultlineLab.29":"Each starts from an identical copy of the captured database state.","text.components-FaultlineLab.30":"remaining gap","text.components-FaultlineLab.31":"Observation references: ","text.components-FaultlineLab.32":"Follow the records.","text.components-FaultlineLab.33":"Record table","text.components-FaultlineLab.34":"Ledger","text.components-FaultlineLab.35":"Inputs","text.components-FaultlineLab.36":"An event is unique within its tenant. Two valid events may belong to the same order.","text.components-FaultlineLab.37":"Scrollable event records","text.components-FaultlineLab.38":" at ","text.components-FaultlineLab.39":"Tenant / event","text.components-FaultlineLab.40":"Order","text.components-FaultlineLab.41":"No ledger entries yet. The original inputs are persisted.","text.components-FaultlineLab.42":" record held for review","text.components-FaultlineLab.43":"Delivery ","text.components-FaultlineLab.44":". The original input is retained.","text.components-FaultlineLab.45":"INDEPENDENT VERIFIER","text.components-FaultlineLab.46":"Prove the repair.","text.components-FaultlineLab.47":"The evaluator knows the valid source events. The model sees only operational observations.","text.components-FaultlineLab.48":"All three branch hashes match the incident at the fork. A repair changes only its own copy.","text.components-FaultlineLab.49":"Inspect state fingerprints","text.components-FaultlineLab.50":"Incident SHA-256","text.components-FaultlineLab.51":"Selected branch at fork","text.components-FaultlineLab.52":"Current state SHA-256","text.components-FaultlineLab.53":"OPEN THE EVIDENCE","text.components-FaultlineLab.54":"A result you can trace.","text.components-FaultlineLab.55":"Download this run (JSON) ","text.components-FaultlineLab.56":"What the model actually saw","text.components-FaultlineLab.57":"Action receipts for this branch","text.components-FaultlineLab.58":"Captured ","text.components-FaultlineLab.59":" UTC","text.components-FaultlineLab.60":"Backend revision ","text.components-FaultlineLab.61":"Local execution; this page replays saved results","link.components-FaultlineLab.62":"/work/faultline","text.components-FaultlineLab.63":"THE FULL CASE STUDY","text.components-FaultlineLab.64":"What the experiment taught us.","text.components-FaultlineLab.65":"Architecture, all ","text.components-FaultlineLab.66":" model attempts, automated tests, and the reproducible source.","image.components-GalleryScenes.1":"/media/story/room-alive.png","text.components-GalleryScenes.2":"Original warm illustrated room with books, musical toys and space to explore","image.components-GalleryScenes.3":"/media/story/room-rocket.png","text.components-GalleryScenes.4":"Toy rocket","text.components-GalleryScenes.5":"EN / ES","text.components-GalleryScenes.6":"Small discoveries.","text.components-GalleryScenes.7":"Grandes aventuras.","text.components-GalleryScenes.8":"Explore. Notice. Try again.","text.components-GalleryScenes.9":"Owned project artwork · interactive portfolio vignette","text.components-GalleryScenes.10":"MEDIA / MOMENT SEARCH","text.components-GalleryScenes.11":"00:","text.components-GalleryScenes.12":" / 01:00","text.components-GalleryScenes.13":"Opening","text.components-GalleryScenes.14":"Product detail","text.components-GalleryScenes.15":"Closing","text.components-GalleryScenes.16":"Selected moment","text.components-GalleryScenes.17":"Original abstract frames · fictional tags and timecodes","text.components-GalleryScenes.18":"ONE JOB / EVERY HANDOFF","text.components-GalleryScenes.19":"JOB-024","text.components-GalleryScenes.20":"0","text.components-GalleryScenes.21":"JOB-024 / FICTIONAL REQUEST","text.components-GalleryScenes.22":"Cooling system review","text.components-GalleryScenes.23":"Next step","text.components-GalleryScenes.24":"Local prototype workflow · fictional job · no live transaction","text.components-GalleryScenes.25":"Request","text.components-GalleryScenes.26":"Result","text.components-GalleryScenes.27":"PREVIEW","text.components-GalleryScenes.28":"Built around the task.","text.components-GalleryScenes.29":"Interactive reconstruction · editing this sample only","text.components-GalleryScenes.30":"COVENANT COMPASS / GUIDED REFLECTION","text.components-GalleryScenes.31":"ONE CONVERSATION AT A TIME","text.components-GalleryScenes.32":"Fictional facilitation cards · pastor-guided, non-clinical prototype","text.components-GalleryScenes.33":"MEMORY RELIEF / REVIEW BEFORE ACTION","text.components-GalleryScenes.34":"Make room. Keep the work.","text.components-GalleryScenes.35":"Fictional care plan · no system scan or cleanup runs here","text.components-GalleryScenes.36":"SEREN’S FADES / FORMAT STUDY","text.components-GalleryScenes.37":"SEREN’S","text.components-GalleryScenes.38":"FADES","text.components-GalleryScenes.39":"IDENTITY / LETTERING / APPLICATION","text.components-GalleryScenes.40":"New portfolio typography study inspired by the identity work","text.components-GalleryScenes.41":"IDENTITY / MOTION STUDY","text.components-GalleryScenes.42":"New exploration","text.components-GalleryScenes.43":"Mi","text.components-GalleryScenes.44":"Magery","text.components-GalleryScenes.45":"CREATE","text.components-GalleryScenes.46":"MOVE","text.components-GalleryScenes.47":"CONNECT","text.components-GalleryScenes.48":"New typography study for this portfolio · not a historical client logo","text.components-GalleryScenes.49":"LOCAL SYSTEMS / REQUEST TO RECEIPT","text.components-GalleryScenes.50":"Request","text.components-GalleryScenes.51":"Typed task","text.components-GalleryScenes.52":"Receipt","text.components-GalleryScenes.53":"Traceable output","text.components-GalleryScenes.54":"Illustrative receipt","text.components-GalleryScenes.55":"Abstract system roles · no private topology","text.components-LocalAiExplorer.1":"Sanitized architecture replay","text.components-LocalAiExplorer.2":"Explore the control plane","text.components-LocalAiExplorer.3":"No live models, services, addresses, or private topology.","text.components-LocalAiExplorer.4":"System layers","text.components-LocalAiExplorer.5":" capability","text.components-LocalAiExplorer.6":"0","text.components-LocalAiExplorer.7":"Observable proof","text.components-LocalAiExplorer.8":"Replay timeline","text.components-LocalAiExplorer.9":"Source-grounded brief","text.components-LocalAiExplorer.10":" / 00:20","text.components-LocalAiExplorer.11":"Replay position","text.components-MetLifeWorkflow.1":"BenSelect census","text.components-MetLifeWorkflow.2":"Billing month + source folder","text.components-MetLifeWorkflow.3":"SOURCE","text.components-MetLifeWorkflow.4":"A connected benefit record","text.components-MetLifeWorkflow.5":"Enriched with location and reference mappings","text.components-MetLifeWorkflow.6":"Explore a benefit calculation","text.components-MetLifeWorkflow.7":"CONNECTED INPUTS","text.components-MetLifeWorkflow.8":"APPLY THE RULES","text.components-MetLifeWorkflow.9":"0","text.components-MetLifeWorkflow.10":"Itemized support for the billing workbook","text.components-MetLifeWorkflow.11":"Resolved records","text.components-MetLifeWorkflow.12":"Continue to billing preparation","text.components-MetLifeWorkflow.13":"Needs review","text.components-MetLifeWorkflow.14":"Retain the reason and context","text.components-MetLifeWorkflow.15":"Inspect a workbook exception","text.components-MetLifeWorkflow.16":"REVIEW → CORRECT → RERUN","text.components-MetLifeWorkflow.17":"REPORTED EXPERIENCE","text.components-MetLifeWorkflow.18":"A week of manual effort.","text.components-MetLifeWorkflow.19":"A fraction after automation.","text.components-MetLifeWorkflow.20":"More room for analysis. More time for the client.","text.components-MetLifeWorkflow.21":"THE CONVERSATION CHANGES","text.components-MetLifeWorkflow.22":"“Here’s what needs attention.","text.components-MetLifeWorkflow.23":"And how we move it forward.”","text.components-MetLifeWorkflow.24":"Illustrated handoff language","text.components-MetLifeWorkflow.25":"Shared understanding → targeted correction → informed review","text.components-MetLifeWorkflow.26":"SELF-BILL PREPARATION","text.components-MetLifeWorkflow.27":"Vendor format retained","text.components-MetLifeWorkflow.28":"Structure illustration · no billing values","text.components-MetLifeWorkflow.29":"Exception context","text.components-MetLifeWorkflow.30":"What needs attention.","text.components-MetLifeWorkflow.31":"Identify the issue","text.components-MetLifeWorkflow.32":"Explain the reason","text.components-MetLifeWorkflow.33":"Keep the correction owner clear","text.components-MetLifeWorkflow.34":"CLIENT + ANALYST","text.components-MetLifeWorkflow.35":"Correct at source.","text.components-MetLifeWorkflow.36":"Review the next result.","text.components-MetLifeWorkflow.37":"Bill + itemized support + exceptions","text.components-MetLifeWorkflow.38":"Informed review","text.components-MetLifeWorkflow.39":"THE METLIFE WORKFLOW","text.components-MetLifeWorkflow.40":"Explore the structure · no client records","text.components-MetLifeWorkflow.41":"Explore the MetLife workflow","text.components-MetLifeWorkflow.42":"0","text.components-MetLifeWorkflow.43":"0","text.components-MetLifeWorkflow.44":"Select a stage to follow the work. Calculations and source data stay private.","text.components-MetLifeWorkflow.45":"Stage ","text.components-MetLifeWorkflow.46":" of 5: ","text.components-MiniProjectVisual.1":"Incident → verified repair","text.components-MiniProjectVisual.2":"Recorded local execution","text.components-MiniProjectVisual.3":"Inject","text.components-MiniProjectVisual.4":"Duplicate · crash · units","text.components-MiniProjectVisual.5":"Fork","text.components-MiniProjectVisual.6":"Identical database state","text.components-MiniProjectVisual.7":"Compare","text.components-MiniProjectVisual.8":"Restart · runbook · model","text.components-MiniProjectVisual.9":"Verify","text.components-MiniProjectVisual.10":"Every business record","text.components-MiniProjectVisual.11":"Reconciliation","text.components-MiniProjectVisual.12":"Demo records","text.components-MiniProjectVisual.13":"Vendor exports","text.components-MiniProjectVisual.14":"CSV + Excel","text.components-MiniProjectVisual.15":"Normalize keys","text.components-MiniProjectVisual.16":"Vendor + month + ID","text.components-MiniProjectVisual.17":"Alteryx","text.components-MiniProjectVisual.18":"Join + compare","text.components-MiniProjectVisual.19":"Analyst review","text.components-MiniProjectVisual.20":"Resolve exceptions","text.components-MiniProjectVisual.21":"Career Opportunities","text.components-MiniProjectVisual.22":"Fictional ratings · 1–5","text.components-MiniProjectVisual.23":"Cedar Works","text.components-MiniProjectVisual.24":"3.2 / 5","text.components-MiniProjectVisual.25":"Selected peer average","text.components-MiniProjectVisual.26":"3.8 / 5","text.components-MiniProjectVisual.27":"Comparison gap","text.components-MiniProjectVisual.28":"−0.6 points","text.components-MiniProjectVisual.29":"Report","text.components-MiniProjectVisual.30":"Checked values + draft","text.components-MiniProjectVisual.31":"Session → source moment","text.components-MiniProjectVisual.32":"Fictional example","text.components-MiniProjectVisual.33":"04:12","text.components-MiniProjectVisual.34":"Transcript","text.components-MiniProjectVisual.35":"12:45","text.components-MiniProjectVisual.36":"OCR marker","text.components-MiniProjectVisual.37":"23:08","text.components-MiniProjectVisual.38":"Decision","text.components-MiniProjectVisual.39":"Contextual feedback","text.components-MiniProjectVisual.40":"Example notes","text.components-MiniProjectVisual.41":"Pin 01","text.components-MiniProjectVisual.42":"Visit information","text.components-MiniProjectVisual.43":"Pin 02","text.components-MiniProjectVisual.44":"Language control","text.components-MiniProjectVisual.45":"Pin 03","text.components-MiniProjectVisual.46":"Event action","text.components-MiniProjectVisual.47":"Research graph","text.components-MiniProjectVisual.48":"8 roles","text.components-MiniProjectVisual.49":"Restaurant journey","text.components-MiniProjectVisual.50":"27 numbered subs","text.components-MiniProjectVisual.51":"Menu","text.components-MiniProjectVisual.52":"Search + filters","text.components-MiniProjectVisual.53":"Party Subs","text.components-MiniProjectVisual.54":"Planning guide","text.components-MiniProjectVisual.55":"Visit","text.components-MiniProjectVisual.56":"Hours + directions","text.components-MiniProjectVisual.57":"Heritage","text.components-MiniProjectVisual.58":"Family story","text.components-MiniProjectVisual.59":"Control plane","text.components-MiniProjectVisual.60":"Sanitized","text.components-MiniProjectVisual.61":"Planning","text.components-MiniProjectVisual.62":"Typed objective","text.components-MiniProjectVisual.63":"Routing","text.components-MiniProjectVisual.64":"Capability match","text.components-MiniProjectVisual.65":"Safety","text.components-MiniProjectVisual.66":"Policy boundary","text.components-MiniProjectVisual.67":"Evidence","text.components-MiniProjectVisual.68":"Receipts + replay","text.components-ProjectCard.1":"Categories","text.components-ProjectCard.2":"Explore case study ","text.components-ProjectChapters.1":"More of the work","text.components-ProjectChapters.2":"Follow the story further.","text.components-ProjectFilter.1":"Find a project","text.components-ProjectFilter.2":"Search by name, tool, or topic","text.components-ProjectFilter.3":"Filter projects","text.components-ProjectFilter.4":"Clear filters","text.components-ProjectFilter.5":"About this project ","text.components-ProjectFilter.6":"Public source ","text.components-ProjectFilter.7":"No matching projects.","text.components-ProjectFilter.8":"Try another name, tool, or category.","text.components-ProjectFilter.9":"Show all work","text.components-ProjectFilter.10":"Show ","text.components-ProjectFilter.11":" more projects","text.components-ProjectFilter.12":"All ","text.components-ProjectFilter.13":" projects are included in search.","text.components-ProjectSources.1":"Sources","link.components-SiteChrome.1":"#main-content","text.components-SiteChrome.2":"Skip to content","link.components-SiteFooter.1":"/","text.components-SiteFooter.2":"miguel.systems home","text.components-SiteFooter.3":"Footer navigation","text.components-SiteFooter.4":"Labs","text.components-SiteFooter.5":"Copyright ","text.components-SiteFooter.6":" Miguel Rodriguez","text.components-SiteFooter.7":"Back to the story","text.components-SolutionsExperience.1":"What’s getting in the way?","text.components-SolutionsExperience.2":"Start with something familiar. See how I would approach it.","text.components-SolutionsExperience.3":"Choose a business problem","text.components-SolutionsExperience.4":"0","text.components-SolutionsExperience.5":"Follow the work ","text.components-SolutionsExperience.6":"The tools behind the work.","text.components-SolutionsExperience.7":"A connected path from the things you already have to something people can use. The stack follows the problem.","text.components-SolutionsExperience.8":"Start here","text.components-SolutionsExperience.9":"Put it to work","text.components-StoryScenes.1":"0","text.components-StoryScenes.2":"MONTH-END / JANUARY 2026","text.components-StoryScenes.3":"Follow the invoice.","text.components-StoryScenes.4":"Fictional sample","text.components-StoryScenes.5":"Example invoice transformation","text.components-StoryScenes.6":"NORTH_CO ","text.components-StoryScenes.7":"Jan-26 · DEMO-104","text.components-StoryScenes.8":"North Co","text.components-StoryScenes.9":"2026-01 · DEMO-104","text.components-StoryScenes.10":"+$160","text.components-StoryScenes.11":"DEMO-104 · Needs review","text.components-StoryScenes.12":"records imported","text.components-StoryScenes.13":"matched","text.components-StoryScenes.14":"need review","text.components-StoryScenes.15":"Fictional billing records","text.components-StoryScenes.16":"Invoice","text.components-StoryScenes.17":"Vendor","text.components-StoryScenes.18":"Billed","text.components-StoryScenes.19":"Billed","text.components-StoryScenes.20":"Expected","text.components-StoryScenes.21":"Difference","text.components-StoryScenes.22":"See the transformation logic ","text.components-StoryScenes.23":"Original simplified example. My separate MetLife timing result came from Power Query; Alteryx supported later selected workflows.","text.components-StoryScenes.24":"12 fictional rows demonstrate the process. The separate reported MetLife result was about nine hours to twenty minutes per month using Power Query.","text.components-StoryScenes.25":"ESA / RESEARCH RATINGS","text.components-StoryScenes.26":"A score with context.","text.components-StoryScenes.27":"Fictional companies","text.components-StoryScenes.28":"FOCUS COMPANY","text.components-StoryScenes.29":"Cedar Works","text.components-StoryScenes.30":"Selected peer group","text.components-StoryScenes.31":"Selected peer group","text.components-StoryScenes.32":"Source: research sample","text.components-StoryScenes.33":"Period: Q1 2026","text.components-StoryScenes.34":"Unit: rating, 1–5","text.components-StoryScenes.35":"Cedar Works","text.components-StoryScenes.36":" / 5","text.components-StoryScenes.37":"Selected peers","text.components-StoryScenes.38":" / 5","text.components-StoryScenes.39":"Difference","text.components-StoryScenes.40":" pts","text.components-StoryScenes.41":"How the sample rating changed","text.components-StoryScenes.42":"24 months · 1–5 scale","text.components-StoryScenes.43":"Cedar Works / ","text.components-StoryScenes.44":"Captured rating","text.components-StoryScenes.45":" / 5","text.components-StoryScenes.46":"Source reference","text.components-StoryScenes.47":"research-sample / cedar / Q1-2026","text.components-StoryScenes.48":"Missing distribution","text.components-StoryScenes.49":"Unavailable · not inferred from a mean","text.components-StoryScenes.50":"Sum of selected ratings ÷ ","text.components-StoryScenes.51":"/ 5 selected peer average","text.components-StoryScenes.52":"CHECKED DATA","text.components-StoryScenes.53":" / 5 ","text.components-StoryScenes.54":" pts","text.components-StoryScenes.55":" → comparison chart → editable observation","text.components-StoryScenes.56":"The report below carries these same values.","text.components-StoryScenes.57":"Select a dimension","text.components-StoryScenes.58":"Cedar Works","text.components-StoryScenes.59":"Selected peer average","text.components-StoryScenes.60":" points vs selected peers","text.components-StoryScenes.61":"FROM CHECKED VALUES TO AN EDITABLE BRIEF","text.components-StoryScenes.62":"Cedar Works","text.components-StoryScenes.63":" / 5","text.components-StoryScenes.64":"Selected peer average","text.components-StoryScenes.65":" / 5","text.components-StoryScenes.66":"Gap","text.components-StoryScenes.67":" pts","text.components-StoryScenes.68":"Try editing the draft observation","text.components-StoryScenes.69":"Values are calculated from the sample. The observation remains a draft for analyst review.","text.components-StoryScenes.70":"Inspect the ratings and calculation ","text.components-StoryScenes.71":"Company","text.components-StoryScenes.72":"Included","text.components-StoryScenes.73":" / 5","text.components-StoryScenes.74":"The peer average is an unweighted mean of the selected company ratings. It is not an industry benchmark.","text.components-StoryScenes.75":"Fictional reconstruction of the earlier research-rating workflow. The full case study explores taxonomy-level sentiment and the later Voice Lab installation and training handoff.","text.components-StoryScenes.76":"RESEARCH / ILLUSTRATIVE REPLAY","text.components-StoryScenes.77":"Follow the claim.","text.components-StoryScenes.78":"Human review","text.components-StoryScenes.79":"“Did the new guide improve onboarding?”","text.components-StoryScenes.80":"Completion time before and after launch.","text.components-StoryScenes.81":" / SOURCE DETAIL","text.components-StoryScenes.82":" · Fictional research evidence","text.components-StoryScenes.83":"See how a finding keeps its source ","text.components-StoryScenes.84":"A fictional research example informed by TradeLab and local orchestration work. It runs entirely in this page.","text.components-StoryScenes.85":"_BLACKBOX / SAMPLE SESSION","text.components-StoryScenes.86":"Find the moment behind the answer.","text.components-StoryScenes.87":"Design review · 30:00","text.components-StoryScenes.88":"00:00","text.components-StoryScenes.89":"15:00","text.components-StoryScenes.90":"30:00","text.components-StoryScenes.91":"Jump to source moment","text.components-StoryScenes.92":"WHAT CHANGED IN THE REVIEW?","text.components-StoryScenes.93":"The team made the Menu control visible. ","text.components-StoryScenes.94":"[12:45]","text.components-StoryScenes.95":" The review ended with a decision to keep it. ","text.components-StoryScenes.96":"[23:08]","text.components-StoryScenes.97":"Fictional session with working timestamp links. _Blackbox is a private product in development; long-recording acceptance remains open.","text.components-StoryScenes.98":"TDC / CONTEXTUAL DESIGN REVIEW","text.components-StoryScenes.99":"Point to the thing you mean.","text.components-StoryScenes.100":"TDC · Primera visita","text.components-StoryScenes.101":"Un lugar","text.components-StoryScenes.102":"para conectar.","text.components-StoryScenes.103":"PIN ","text.components-StoryScenes.104":"Original interface reconstruction with fictional feedback. The website, media work and private stakeholder-review tool are distinct projects.","text.components-SystemMap.1":"FROM SOURCE TO SOMETHING USEFUL","text.components-SystemMap.2":"Explore a layer ","text.components-SystemMap.3":"One connected system.","text.components-SystemMap.4":"Data + code + design","text.components-SystemMap.5":"Checked values","text.components-SystemMap.6":"before confident answers","text.components-TradeLabExplorer.1":"Prerecorded synthetic session","text.components-TradeLabExplorer.2":"Inspect the research system","text.components-TradeLabExplorer.3":"Fictional subject. No account or brokerage connection.","text.components-TradeLabExplorer.4":"Research graph","text.components-TradeLabExplorer.5":"Eight bounded roles","text.components-TradeLabExplorer.6":"Read-only","text.components-TradeLabExplorer.7":"Eight-role research workflow","text.components-TradeLabExplorer.8":"Lead","text.components-TradeLabExplorer.9":"analyst","text.components-TradeLabExplorer.10":"Produces: ","text.components-TradeLabExplorer.11":"Evidence ledger","text.components-TradeLabExplorer.12":"Reviewable provenance","text.components-TradeLabExplorer.13":"Filter evidence","text.components-TradeLabExplorer.14":"Synthetic evidence ledger","text.components-TradeLabExplorer.15":"Source","text.components-TradeLabExplorer.16":"Type","text.components-TradeLabExplorer.17":"Owner","text.components-TradeLabExplorer.18":"Status","text.components-TradeLabExplorer.19":"Workflow timeline","text.components-TradeLabExplorer.20":"Research timeline","text.components-WebsitePreview.1":": explore the website","text.components-WebsitePreview.2":" (opens in a new tab)","text.components-WebsiteShowcase.1":"Website previews","text.components-WebsiteShowcase.2":"Choose a website","text.components-WebsiteShowcase.3":"0","text.components-WebsiteShowcase.4":"0","text.components-WebsiteShowcase.5":"Inside the project","text.components-WebsiteShowcase.6":" / WEBSITE EXHIBIT","text.components-WebsiteShowcase.7":" (opens in a new tab)","text.components-WebsiteShowcase.8":"Archived demonstrations are independent of original client services. Sample actions stay in your browser and can be reset.","text.components-WebsiteShowcase.9":"YOUR BUSINESS. ANOTHER POSSIBILITY.","text.components-WebsiteShowcase.10":"Try an identity on.","text.components-WebsiteShowcase.11":"Explore 12 fictional business examples. Bring your name, colors, and logo into the Industry Showroom.","link.components-WebsiteShowcase.12":"https://industries.miguel.systems/","text.components-WebsiteShowcase.13":"Enter the showroom","image.components-WebsiteShowcase.14":"/media/showroom/industry-showroom.png","text.components-WebsiteShowcase.15":"Industry Showroom website collection","image.components-WorkShowcase.1":"/media/websites/serens-fades.webp","text.components-WorkShowcase.2":"Seren’s Fades website: Modern Heritage barber identity and service discovery","text.components-WorkShowcase.3":"Identity → Services → Contact","text.components-WorkShowcase.4":"A connected workspace","text.components-WorkShowcase.5":"Context that travels","text.components-WorkShowcase.6":"with the work.","text.components-WorkShowcase.7":"Retained context","text.components-WorkShowcase.8":"Artifacts & evidence","text.components-WorkShowcase.9":"Human review","text.components-WorkShowcase.10":"Vendor export · DEMO-104","text.components-WorkShowcase.11":"$2,140","text.components-WorkShowcase.12":"North Co / January","text.components-WorkShowcase.13":"Expected ","text.components-WorkShowcase.14":"$1,980","text.components-WorkShowcase.15":"Normalize","text.components-WorkShowcase.16":"Match","text.components-WorkShowcase.17":"Review","text.components-WorkShowcase.18":"One difference to resolve","text.components-WorkShowcase.19":"+$160","text.components-WorkShowcase.20":"Amount mismatch","text.components-WorkShowcase.21":"The original record stays attached.","text.components-WorkShowcase.22":"Research → Insight","text.components-WorkShowcase.23":"A shared view.","text.components-WorkShowcase.24":"A useful decision.","text.components-WorkShowcase.25":"One evidence base, shaped for the question.","text.components-WorkShowcase.26":"Employee sentiment","text.components-WorkShowcase.27":"Research → Report","text.components-WorkShowcase.28":"0","text.components-WorkShowcase.29":"Python research ","text.components-WorkShowcase.30":"Power BI exploration","text.components-WorkShowcase.31":" Executive reporting","text.components-WorkShowcase.32":"Explore my work","text.components-WorkShowcase.33":"Previous work example","text.components-WorkShowcase.34":"Next work example","text.components-WorkShowcase.35":"Selected work / ","text.components-esa-EsaCaseStudy.1":"FULL ESA","text.components-esa-EsaCaseStudy.2":"0","text.components-esa-EsaCaseStudy.3":" / 03","text.components-esa-EsaCaseStudy.4":"A rating starts the conversation.","text.components-esa-EsaCaseStudy.5":"A Full ESA goes deeper.","text.components-esa-EsaCaseStudy.6":"The complimentary benchmark established context. Full ESAs added trends, taxonomy-level sentiment, employee voice and recommendations aligned to the client’s needs.","text.components-esa-EsaCaseStudy.7":"Explore the Full ESA report","text.components-esa-EsaCaseStudy.8":"Illustrative report · ","text.components-esa-EsaCaseStudy.9":"Sentiment legend","text.components-esa-EsaCaseStudy.10":"Positive","text.components-esa-EsaCaseStudy.11":"Neutral","text.components-esa-EsaCaseStudy.12":"Negative","text.components-esa-EsaCaseStudy.13":"Sentiment distribution by topic","text.components-esa-EsaCaseStudy.14":"Positive share of coded comments · 24 illustrative months","text.components-esa-EsaCaseStudy.15":"Highlight a topic trend","text.components-esa-EsaCaseStudy.16":"Explore an employee experience","text.components-esa-EsaCaseStudy.17":"A strength to understand","text.components-esa-EsaCaseStudy.18":"A concern to investigate","text.components-esa-EsaCaseStudy.19":"Written for this demonstration. These are not employee quotations.","text.components-esa-EsaCaseStudy.20":"THE READING","text.components-esa-EsaCaseStudy.21":"THE NEXT CONVERSATION","text.components-esa-EsaCaseStudy.22":"Synthetic data and sample narrative. Chart formats informed by the older Full ESA decks. Recommendations require analyst and client review.","text.components-esa-EsaCaseStudy.23":"Employee sentiment,","text.components-esa-EsaCaseStudy.24":"at every scale.","text.components-esa-EsaCaseStudy.25":"I built the tools, data workflows and analytical views that turn employee feedback into practical client conversations.","text.components-esa-EsaCaseStudy.26":"Levels of analysis","text.components-esa-EsaCaseStudy.27":"The whole picture. Then the detail.","text.components-esa-EsaCaseStudy.28":"Explore a fictional reconstruction inspired by ESA Dashboard 3.0.","text.components-esa-EsaCaseStudy.29":"Choose an industry","text.components-esa-EsaCaseStudy.30":"Choose an employer","text.components-esa-EsaCaseStudy.31":"Where the experience diverges","text.components-esa-EsaCaseStudy.32":"Positive share of coded comments","text.components-esa-EsaCaseStudy.33":"Select a topic to explore","text.components-esa-EsaCaseStudy.34":"Selected employer","text.components-esa-EsaCaseStudy.35":"Industry sample","text.components-esa-EsaCaseStudy.36":"Selected topic detail","text.components-esa-EsaCaseStudy.37":"pp","text.components-esa-EsaCaseStudy.38":"vs industry sample","text.components-esa-EsaCaseStudy.39":"Opportunity: ","link.components-esa-EsaCaseStudy.40":"#full-esa","text.components-esa-EsaCaseStudy.41":"Explore the Full ESA ","text.components-esa-EsaCaseStudy.42":"Synthetic data. No employee or client records.","text.components-esa-EsaCaseStudy.43":"How to read this example","text.components-esa-EsaCaseStudy.44":"Select an industry, employer and topic to update the comparison and report below. Positive share is positive mentions divided by all sentiment-coded mentions for that topic. Each employer has 100 fictional mentions per topic; each fixed industry sample has 1,000. The industry sample represents a separate illustrative cohort, not an average of the three employers shown. One review can mention multiple topics. Gaps are percentage points (pp); these are not 1–5 star ratings, net sentiment scores or estimates of all employees.","text.components-esa-EsaCaseStudy.45":"I built the system","text.components-esa-EsaCaseStudy.46":"behind the story.","text.components-esa-EsaCaseStudy.47":"Research tooling, a shared data layer, analytical views and client-ready reporting—designed as one connected workflow.","text.components-esa-EsaCaseStudy.48":"Smartsheet kept the data connected while I worked through the organization’s database approval process. Collection updates flowed into the on-premises dashboard, keeping employer ratings and benchmarks tied to the underlying research.","text.components-esa-EsaCaseStudy.49":"A later shift to Revelio Labs, without licensed API access, changed the collection architecture. I adapted the workflow to the available data and access, while preserving analyst review and a useful client deliverable.","text.components-esa-EsaCaseStudy.50":"VOICE LAB","text.components-esa-EsaCaseStudy.51":"A delivery tool.","text.components-esa-EsaCaseStudy.52":"A real handoff.","text.components-esa-EsaCaseStudy.53":"Voice Lab brought the later workflow into a desktop application. I installed it and trained the team to use it.","text.components-esa-EsaCaseStudy.54":"Its reports were less granular than the older Full ESAs. The broader system also explored Copilot-assisted guidance for client teams, executive producers and sales.","text.components-esa-EsaCaseStudy.55":"My role","text.components-esa-EsaCaseStudy.56":"Tooling ","text.components-esa-EsaCaseStudy.57":" Data architecture ","text.components-esa-EsaCaseStudy.58":" Visualization ","text.components-esa-EsaCaseStudy.59":" Automation ","text.components-esa-EsaCaseStudy.60":" UI & UX","text.components-portfolio-AboutJourney.1":"Explore how I work","text.components-portfolio-AboutJourney.2":"Miguel Rodriguez","text.components-portfolio-AboutJourney.3":"MIGUEL RODRIGUEZ / DALLAS–FORT WORTH","text.components-portfolio-AboutJourney.4":"Choose a perspective","text.components-portfolio-AboutJourney.5":"0","text.components-portfolio-AboutJourney.6":"0","text.components-portfolio-AboutJourney.7":"FOLLOW THE EVIDENCE","text.components-portfolio-ContactConnection.1":"Choose a way to connect","text.components-portfolio-ContactConnection.2":"Miguel Rodriguez","text.components-portfolio-ContactConnection.3":"MIGUEL RODRIGUEZ / ANALYST · BUILDER · DESIGNER","text.components-portfolio-ContactConnection.4":"Make a connection","text.components-portfolio-ContactConnection.5":"YOUR NEXT STEP","text.components-portfolio-ContactConnection.6":"What brings you here?","text.components-portfolio-ContactConnection.7":"Start a conversation","text.components-portfolio-ContactConnection.8":"Opens an editable draft in your email app.","text.components-portfolio-ContactConnection.9":"Copy email","text.components-portfolio-ContactConnection.10":"LinkedIn","text.components-portfolio-ContactConnection.11":"GitHub","text.components-portfolio-ContactConnection.12":". English & Spanish.","text.components-portfolio-PageJourney.1":"Continue the journey","text.components-portfolio-PageJourney.2":" / 08","text.components-portfolio-PageJourney.3":"Keep scrolling to continue","text.components-portfolio-PageJourney.4":"Or follow the link","text.components-portfolio-PortfolioHero.1":"THE NEXT CONNECTION","text.components-portfolio-RelatedNodes.1":"Related connections","text.components-portfolio-RelatedNodes.2":"CONNECTED TO","text.components-portfolio-RelatedNodes.3":"Related work","text.components-portfolio-SystemsExplorer.1":"Selected systems","text.components-portfolio-SystemsExplorer.2":"Choose a system","text.components-portfolio-SystemsExplorer.3":"0","text.components-portfolio-SystemsExplorer.4":"AN ILLUSTRATED WORKFLOW","text.components-portfolio-SystemsExplorer.5":"0","text.components-portfolio-SystemsExplorer.6":"Enter the project","link.components-portfolio-SystemsExplorer.7":"/lab/faultline","text.components-portfolio-SystemsExplorer.8":"Try FAULTLINE Lab","text.components-portfolio-SystemsExplorer.9":"All system project stories","link.components-portfolio-SystemsExplorer.10":"/lab/faultline","text.components-portfolio-SystemsExplorer.11":"Try FAULTLINE Lab","text.components-portfolio-WorkExhibit.1":"Explore a kind of work","text.components-portfolio-WorkExhibit.2":"0","text.components-portfolio-WorkExhibit.3":"SELECTED WORK / 0","text.components-portfolio-WorkExhibit.4":"Enter the project ","text.components-portfolio-WorkExhibit.5":"Project relationship","text.components-portfolio-WorkExhibit.6":"0","text.components-work-explorer-AlteryxMedia.1":"Sanitized Alteryx workflow demonstration poster","text.components-work-explorer-AlteryxMedia.2":"Alteryx workflow poster unavailable","text.components-work-explorer-AlteryxMedia.3":"Alteryx workflow","text.components-work-explorer-AlteryxMedia.4":"Automation demo","text.components-work-explorer-AlteryxMedia.5":"Play the 8-second excerpt","text.components-work-explorer-AlteryxMedia.6":"Your browser does not support embedded video.","text.components-work-explorer-AlteryxMedia.7":"The short clip is not available in this build.","text.components-work-explorer-AlteryxMedia.8":"The written project summary remains available below.","text.components-work-explorer-AlteryxMedia.9":"Return to poster","text.components-work-explorer-App.1":"Clear search","text.components-work-explorer-App.2":"Close project details","text.components-work-explorer-App.3":"Scope & context ","link.components-work-explorer-App.4":"#main","text.components-work-explorer-App.5":"Skip to content","text.components-work-explorer-App.6":"Page not found","text.components-work-explorer-App.7":"This address does not match a portfolio page.","link.components-work-explorer-App.8":"/work","text.components-work-explorer-App.9":"Explore all work","text.components-work-explorer-App.10":"EXPLORING","text.components-work-explorer-App.11":"Expand to full Work explorer","text.components-work-explorer-App.12":"Expand to full explorer","text.components-work-explorer-App.13":"CHAPTERS","text.components-work-explorer-App.14":"Drag to pan · scroll to zoom","text.components-work-explorer-App.15":"Floating explorer chapters","text.components-work-explorer-App.16":"Expand explorer","text.components-work-explorer-App.17":" / 04 · ","text.components-work-explorer-App.18":"Return to your canvas","text.components-work-explorer-App.19":"Your filters and arrangement stay in place.","text.components-work-explorer-App.20":"Different ","text.components-work-explorer-App.21":"businesses. ","text.components-work-explorer-App.22":"Distinct ","text.components-work-explorer-App.23":"identities.","text.components-work-explorer-App.24":"Explore complete websites, design directions, and working demonstrations.","text.components-work-explorer-App.25":"Choose a website","text.components-work-explorer-App.26":"Previous website","text.components-work-explorer-App.27":"Next website","text.components-work-explorer-App.28":"Read the story","text.components-work-explorer-App.29":"Next: ","text.components-work-explorer-App.30":"BUILT FOR","text.components-work-explorer-App.31":"BRAND INDIVIDUALS.","text.components-work-explorer-App.32":"SYSTEMS","text.components-work-explorer-App.33":"Tools for clearer thinking","text.components-work-explorer-App.34":"and heavier context.","text.components-work-explorer-App.35":"Choose a system","link.components-work-explorer-App.36":"/work?collection=systems","text.components-work-explorer-App.37":"Explore all systems ","text.components-work-explorer-App.38":"See the system think.","text.components-work-explorer-App.39":"Follow the handoffs. Inspect what comes back.","image.components-work-explorer-App.40":"/art/recording-filmstrip.png","text.components-work-explorer-App.41":"Illustrative recorded conversation frames","image.components-work-explorer-App.42":"/art/index-waveform.png","text.components-work-explorer-App.43":"Indexed audio waveform illustration","text.components-work-explorer-App.44":"02:16","text.components-work-explorer-App.45":"I think the mobile menu is hard to find.","text.components-work-explorer-App.46":"02:18","text.components-work-explorer-App.47":"It’s not super obvious on smaller screens.","text.components-work-explorer-App.48":"02:21","text.components-work-explorer-App.49":"Maybe we can make it more prominent.","image.components-work-explorer-App.50":"/art/source-moment.png","text.components-work-explorer-App.51":"Illustrative source moment: The mobile menu is hard to find.","text.components-work-explorer-App.52":"Illustrative demo","text.components-work-explorer-App.53":"Select workflow step","text.components-work-explorer-App.54":"Read the project story","text.components-work-explorer-App.55":"Connections show stages within ","text.components-work-explorer-App.56":"Room for curiosity","text.components-work-explorer-App.57":"Back to canvas ","text.components-work-explorer-App.58":"No studies match that search.","text.components-work-explorer-App.59":"Room for","text.components-work-explorer-App.60":"curiosity","text.components-work-explorer-App.61":"Identity, motion, interaction, and experiments.","text.components-work-explorer-App.62":"Free exploration ","text.components-work-explorer-App.63":"Explore MiMagery identity study","image.components-work-explorer-App.64":"/art/mimagery-poster.png","text.components-work-explorer-App.65":"MiMagery motion and identity portfolio study","image.components-work-explorer-App.66":"/art/mimagery-poster.png","text.components-work-explorer-App.67":"MiMagery portfolio study","image.components-work-explorer-App.68":"/art/mermaid-study.png","text.components-work-explorer-App.69":"Mermaid Local diagram study","text.components-work-explorer-App.70":"EN / ES","text.components-work-explorer-App.71":"Small discoveries.","text.components-work-explorer-App.72":"Grandes aventuras.","text.components-work-explorer-App.73":"Explore. Notice. Try again.","text.components-work-explorer-App.74":"Close storybook","image.components-work-explorer-App.75":"/media/story/room-rocket.png","text.components-work-explorer-App.76":"An animated toy rocket","link.components-work-explorer-App.77":"#active-study","text.components-work-explorer-App.78":"Try this study ","text.components-work-explorer-App.79":"Explore Seren’s Fades identity study","image.components-work-explorer-App.80":"/art/serens-poster.png","text.components-work-explorer-App.81":"Seren’s Fades identity study: Premium mobile fades brought to you","text.components-work-explorer-App.82":"Explore Mermaid Local study","image.components-work-explorer-App.83":"/art/mermaid-study.png","text.components-work-explorer-App.84":"Mermaid Local code and connected diagram preview","text.components-work-explorer-App.85":"Mermaid Local","text.components-work-explorer-App.86":"Interactive study","text.components-work-explorer-App.87":"Work canvas","text.components-work-explorer-App.88":"Drag to explore","text.components-work-explorer-App.89":"Tap to explore","text.components-work-explorer-App.90":"Zoom out artwork","text.components-work-explorer-App.91":"Zoom in artwork","text.components-work-explorer-App.92":"Reset artwork view","image.components-work-explorer-App.93":"/media/story/room-alive.png","text.components-work-explorer-App.94":"DESIGN CONCEPT · MIGUEL SYSTEMS","text.components-work-explorer-App.95":" · Try it","text.components-work-explorer-App.96":"Loading the interactive study…","text.components-work-explorer-App.97":"Explore the creative archive ","text.components-work-explorer-App.98":"24 stories","text.components-work-explorer-App.99":"Tools & disciplines: ","text.components-work-explorer-App.100":"Project sources","text.components-work-explorer-App.101":"How the sample rating changed","text.components-work-explorer-App.102":"24 months · 1–5 scale","text.components-work-explorer-App.103":"Fictional monthly rating trend from April 2024 to March 2026","text.components-work-explorer-App.104":"Apr 2024","text.components-work-explorer-App.105":"Apr 2025","text.components-work-explorer-App.106":"Mar 2026","text.components-work-explorer-App.107":"Explore a month","text.components-work-explorer-App.108":"Explore fictional monthly ratings","text.components-work-explorer-App.109":"What needs","text.components-work-explorer-App.110":"to work better?","text.components-work-explorer-App.111":"Choose a challenge. Follow the work.","text.components-work-explorer-App.112":"Choose a challenge","text.components-work-explorer-App.113":"THE CHALLENGE","text.components-work-explorer-App.114":"Show the challenge","text.components-work-explorer-App.115":"THE APPROACH","text.components-work-explorer-App.116":"Show the approach","text.components-work-explorer-App.117":"THE EXAMPLE","text.components-work-explorer-App.118":"Show the project example","text.components-work-explorer-App.119":"Case study","text.components-work-explorer-App.120":"Explore the case study","text.components-work-explorer-App.121":"How we work together","text.components-work-explorer-App.122":"01 / Understand","text.components-work-explorer-App.123":"Find the useful question.","text.components-work-explorer-App.124":"Start with your users, the current process, and the decision or action the work needs to support.","text.components-work-explorer-App.125":"02 / Shape & build","text.components-work-explorer-App.126":"Make the idea tangible.","text.components-work-explorer-App.127":"Agree on a focused scope, then use a working design or prototype to make the important choices visible.","text.components-work-explorer-App.128":"03 / Review & hand over","text.components-work-explorer-App.129":"Leave a clear next step.","text.components-work-explorer-App.130":"Review the work against the agreed scope, confirm the content, and document how to use and maintain it.","text.components-work-explorer-App.131":"Bring your challenge.","text.components-work-explorer-App.132":"Ideas, friction, or a rough direction — let’s explore what’s possible.","link.components-work-explorer-App.133":"https://miguel.systems/contact?for=freelance","text.components-work-explorer-App.134":"Start a conversation ","text.components-work-explorer-ExplorerFilters.1":"Project filters and selections","text.components-work-explorer-ExplorerFilters.2":"Filter categories","text.components-work-explorer-ExplorerFilters.3":"Showcased projects only","text.components-work-explorer-ExplorerFilters.4":"Showcased","text.components-work-explorer-ExplorerFilters.5":"Applied filters","text.components-work-explorer-ExplorerFilters.6":"Clear all","text.components-work-explorer-ExplorerFilters.7":"Select any that fit your interests.","text.components-work-explorer-ExplorerFilters.8":"Clear category","text.components-work-explorer-ExplorerFilters.9":"Show ","text.components-work-explorer-ExplorerLayout.1":"View settings","text.components-work-explorer-ExplorerLayout.2":"View","text.components-work-explorer-ExplorerLayout.3":"Canvas view","text.components-work-explorer-ExplorerLayout.4":"View settings sections","text.components-work-explorer-ExplorerLayout.5":"Arrangement","text.components-work-explorer-ExplorerLayout.6":"Direction","text.components-work-explorer-ExplorerLayout.7":"Layout direction","text.components-work-explorer-ExplorerLayout.8":"Left to right →","text.components-work-explorer-ExplorerLayout.9":"Right to left ←","text.components-work-explorer-ExplorerLayout.10":"Top to bottom ↓","text.components-work-explorer-ExplorerLayout.11":"Bottom to top ↑","text.components-work-explorer-ExplorerLayout.12":"Lines always mean collection membership.","text.components-work-explorer-ExplorerLayout.13":"Arrange studies independently by dragging their headers.","text.components-work-explorer-ExplorerLayout.14":"Undo","text.components-work-explorer-ExplorerLayout.15":"Theme","text.components-work-explorer-ExplorerLayout.16":"Color palette","text.components-work-explorer-ExplorerLayout.17":"Color palette","text.components-work-explorer-ExplorerLayout.18":"Original accents","text.components-work-explorer-ExplorerLayout.19":"Color-blind friendly","text.components-work-explorer-ExplorerLayout.20":"Icons, collection labels and line patterns keep meaning visible beyond color.","text.components-work-explorer-ExplorerLayout.21":"Saved on this device.","text.components-work-explorer-ExplorerLayout.22":"Find your way.","text.components-work-explorer-ExplorerLayout.23":" Search opens the index. Select a project to jump to it on the canvas. Your filters stay with you.","text.components-work-explorer-ExplorerLayout.24":"Move and zoom.","text.components-work-explorer-ExplorerLayout.25":" Drag a header to move a node. Drag empty space to pan. Scroll, pinch or use the zoom controls.","text.components-work-explorer-ExplorerLayout.26":"Use your keyboard.","text.components-work-explorer-ExplorerLayout.27":" Focus the canvas, then use arrow keys to pan, + / − to zoom and Home to fit. On a node, arrow keys move it; Shift moves farther.","text.components-work-explorer-ExplorerLayout.28":"Connections.","text.components-work-explorer-ExplorerLayout.29":" Lines connect projects to their collection only. Nearby projects don’t imply a relationship.","text.components-work-explorer-ExplorerLayout.30":"Focus mode.","text.components-work-explorer-ExplorerLayout.31":" Hide site navigation for more room. Press Escape or the exit button to bring it back.","text.components-work-explorer-FreeExplorer.1":"Chapters","text.components-work-explorer-FreeExplorer.2":"FREE EXPLORATION","text.components-work-explorer-FreeExplorer.3":"Exploration view","text.components-work-explorer-FreeExplorer.4":"Show movable canvas","text.components-work-explorer-FreeExplorer.5":"Canvas","text.components-work-explorer-FreeExplorer.6":"Canvas","text.components-work-explorer-FreeExplorer.7":"Search and browse projects","text.components-work-explorer-FreeExplorer.8":"Find","text.components-work-explorer-FreeExplorer.9":"Chapters of the work","text.components-work-explorer-FreeExplorer.10":"COLLECTION ·","text.components-work-explorer-FreeExplorer.11":"Explore chapter","text.components-work-explorer-FreeExplorer.12":"Explore ","text.components-work-explorer-FreeExplorer.13":"No matching ","text.components-work-explorer-FreeExplorer.14":"Adjust your filters or search to keep exploring.","text.components-work-explorer-FreeExplorer.15":"Clear filters","text.components-work-explorer-FreeExplorer.16":"Zoom out floating explorer","text.components-work-explorer-FreeExplorer.17":"Recenter selected chapter node","text.components-work-explorer-FreeExplorer.18":"Zoom in floating explorer","text.components-work-explorer-FreeExplorer.19":"Clear canvas search","text.components-work-explorer-FreeExplorer.20":"No ","text.components-work-explorer-FreeExplorer.21":" found.","text.components-work-explorer-FreeExplorer.22":"Try a project name or discipline.","text.components-work-explorer-FreeExplorer.23":"Show every ","text.components-work-explorer-FreeExplorer.24":"Selected project","text.components-work-explorer-FreeExplorer.25":"Previous project node","text.components-work-explorer-FreeExplorer.26":"Explore project ","text.components-work-explorer-FreeExplorer.27":"Next project node","text.components-work-explorer-FreeExplorer.28":"Canvas controls","text.components-work-explorer-FreeExplorer.29":"Zoom out canvas","text.components-work-explorer-FreeExplorer.30":"Choose zoom level","text.components-work-explorer-FreeExplorer.31":"Zoom level","text.components-work-explorer-FreeExplorer.32":"DETAIL FOLLOWS YOUR ZOOM","text.components-work-explorer-FreeExplorer.33":"Zoom %","text.components-work-explorer-FreeExplorer.34":"Zoom percentage","text.components-work-explorer-FreeExplorer.35":"Apply zoom","text.components-work-explorer-FreeExplorer.36":"Zoom in canvas","text.components-work-explorer-FreeExplorer.37":"Fit all","text.components-work-explorer-FreeExplorer.38":"Explorer footer","link.components-work-explorer-FreeExplorer.39":"/work","text.components-work-explorer-FreeExplorer.40":"All work","text.components-work-explorer-FreeExplorer.41":"Continue to ","text.components-work-explorer-FreeExplorer.42":"Drag this hub to move its collection. Arrow keys move the whole cluster; hold Shift for larger moves. Enter focuses the collection. Lines indicate collection membership only.","image.components-work-explorer-GalleryScenes.1":"/media/story/room-alive.png","text.components-work-explorer-GalleryScenes.2":"Original warm illustrated room with books, musical toys and space to explore","image.components-work-explorer-GalleryScenes.3":"/media/story/room-rocket.png","text.components-work-explorer-GalleryScenes.4":"Toy rocket","text.components-work-explorer-GalleryScenes.5":"EN / ES","text.components-work-explorer-GalleryScenes.6":"Small discoveries.","text.components-work-explorer-GalleryScenes.7":"Grandes aventuras.","text.components-work-explorer-GalleryScenes.8":"Explore. Notice. Try again.","text.components-work-explorer-GalleryScenes.9":"Owned project artwork · interactive portfolio vignette","text.components-work-explorer-GalleryScenes.10":"MEDIA / MOMENT SEARCH","text.components-work-explorer-GalleryScenes.11":"00:","text.components-work-explorer-GalleryScenes.12":" / 01:00","text.components-work-explorer-GalleryScenes.13":"Opening","text.components-work-explorer-GalleryScenes.14":"Product detail","text.components-work-explorer-GalleryScenes.15":"Closing","text.components-work-explorer-GalleryScenes.16":"Selected moment","text.components-work-explorer-GalleryScenes.17":"Original abstract frames · fictional tags and timecodes","text.components-work-explorer-GalleryScenes.18":"ONE JOB / EVERY HANDOFF","text.components-work-explorer-GalleryScenes.19":"JOB-024","text.components-work-explorer-GalleryScenes.20":"0","text.components-work-explorer-GalleryScenes.21":"JOB-024 / FICTIONAL REQUEST","text.components-work-explorer-GalleryScenes.22":"Cooling system review","text.components-work-explorer-GalleryScenes.23":"Next step","text.components-work-explorer-GalleryScenes.24":"Local prototype workflow · fictional job · no live transaction","text.components-work-explorer-GalleryScenes.25":"Request","text.components-work-explorer-GalleryScenes.26":"Result","text.components-work-explorer-GalleryScenes.27":"PREVIEW","text.components-work-explorer-GalleryScenes.28":"Built around the task.","text.components-work-explorer-GalleryScenes.29":"Interactive reconstruction · editing this sample only","text.components-work-explorer-GalleryScenes.30":"COVENANT COMPASS / GUIDED REFLECTION","text.components-work-explorer-GalleryScenes.31":"ONE CONVERSATION AT A TIME","text.components-work-explorer-GalleryScenes.32":"Fictional facilitation cards · pastor-guided, non-clinical prototype","text.components-work-explorer-GalleryScenes.33":"MEMORY RELIEF / REVIEW BEFORE ACTION","text.components-work-explorer-GalleryScenes.34":"Make room. Keep the work.","text.components-work-explorer-GalleryScenes.35":"Fictional care plan · no system scan or cleanup runs here","text.components-work-explorer-GalleryScenes.36":"SEREN’S FADES / FORMAT STUDY","text.components-work-explorer-GalleryScenes.37":"SEREN’S","text.components-work-explorer-GalleryScenes.38":"FADES","text.components-work-explorer-GalleryScenes.39":"IDENTITY / LETTERING / APPLICATION","text.components-work-explorer-GalleryScenes.40":"New portfolio typography study inspired by the identity work","text.components-work-explorer-GalleryScenes.41":"IDENTITY / MOTION STUDY","text.components-work-explorer-GalleryScenes.42":"New exploration","text.components-work-explorer-GalleryScenes.43":"Mi","text.components-work-explorer-GalleryScenes.44":"Magery","text.components-work-explorer-GalleryScenes.45":"CREATE","text.components-work-explorer-GalleryScenes.46":"MOVE","text.components-work-explorer-GalleryScenes.47":"CONNECT","text.components-work-explorer-GalleryScenes.48":"New typography study for this portfolio · not a historical client logo","text.components-work-explorer-GalleryScenes.49":"LOCAL SYSTEMS / REQUEST TO RECEIPT","text.components-work-explorer-GalleryScenes.50":"Request","text.components-work-explorer-GalleryScenes.51":"Typed task","text.components-work-explorer-GalleryScenes.52":"Receipt","text.components-work-explorer-GalleryScenes.53":"Traceable output","text.components-work-explorer-GalleryScenes.54":"Illustrative receipt","text.components-work-explorer-GalleryScenes.55":"Abstract system roles · no private topology","text.components-work-explorer-MobileExplorer.1":"YOU’RE EXPLORING","text.components-work-explorer-MobileExplorer.2":"Work project gallery","text.components-work-explorer-MobileExplorer.3":"THE WORK, UP CLOSE","text.components-work-explorer-MobileExplorer.4":"Follow your curiosity.","text.components-work-explorer-MobileExplorer.5":"Reading preferences","text.components-work-explorer-MobileExplorer.6":"Filters","text.components-work-explorer-MobileExplorer.7":"Applied filters","text.components-work-explorer-MobileExplorer.8":"Find a project","text.components-work-explorer-MobileExplorer.9":"Search all projects","text.components-work-explorer-MobileExplorer.10":"Name, tool, or discipline","text.components-work-explorer-MobileExplorer.11":" matching ","text.components-work-explorer-MobileExplorer.12":" Showcased","text.components-work-explorer-MobileExplorer.13":"Explore project ","text.components-work-explorer-MobileExplorer.14":"Browse projects","text.components-work-explorer-MobileExplorer.15":"Previous project","text.components-work-explorer-MobileExplorer.16":"Swipe to discover","text.components-work-explorer-MobileExplorer.17":"Next project","text.components-work-explorer-MobileExplorer.18":"No projects match yet.","text.components-work-explorer-MobileExplorer.19":"Remove a filter or try another search.","text.components-work-explorer-MobileExplorer.20":"Show all projects ","text.components-work-explorer-MobileExplorer.21":"Explore work chapters","text.components-work-explorer-MobileExplorer.22":"GO DEEPER","text.components-work-explorer-MobileExplorer.23":"Four ways into the work.","text.components-work-explorer-MobileExplorer.24":"Showcased projects only","text.components-work-explorer-MobileExplorer.25":"Choose what’s comfortable for you.","text.components-work-explorer-MobileExplorer.26":"Color palette","text.components-work-explorer-MobileExplorer.27":"Original","text.components-work-explorer-MobileExplorer.28":"Colorblind friendly","text.components-work-explorer-MobileExplorer.29":"Clear all","text.components-work-explorer-MobileExplorer.30":"Show ","text.components-work-explorer-MobileExplorer.31":" projects ","text.components-work-explorer-MobileExplorer.32":"Done","text.components-work-explorer-PageJourney.1":"Continue the journey","text.components-work-explorer-PageJourney.2":"NEXT CONNECTION","text.components-work-explorer-PageJourney.3":"miguel.systems","text.components-work-explorer-SafeImage.1":"Preview unavailable","text.components-work-explorer-SafeImage.2":"The explorer couldn’t open.","text.components-work-explorer-SafeImage.3":"Your projects are still available. Reload to try the explorer again, or follow a project story.","text.components-work-explorer-SafeImage.4":"Reload explorer","text.components-work-explorer-SafeImage.5":"Project stories","link.components-work-explorer-SafeImage.6":"/work/blackbox","text.components-work-explorer-SafeImage.7":"Blackbox","link.components-work-explorer-SafeImage.8":"/work/u1-mechanical","text.components-work-explorer-SafeImage.9":"U1 Mechanical","link.components-work-explorer-SafeImage.10":"/work/billing-automation","text.components-work-explorer-SafeImage.11":"Billing automation","text.components-work-explorer-SiteChrome.1":"miguel","text.components-work-explorer-SiteChrome.2":"systems","link.components-work-explorer-SiteChrome.3":"https://miguel.systems/","text.components-work-explorer-SiteChrome.4":"miguel.systems home","text.components-work-explorer-SiteChrome.5":"Appearance","text.components-work-explorer-SiteChrome.6":"System","text.components-work-explorer-SiteChrome.7":"Light","text.components-work-explorer-SiteChrome.8":"Dark","text.components-work-explorer-SiteChrome.9":"Open menu","text.components-work-explorer-SiteChrome.10":"Menu","text.components-work-explorer-SiteChrome.11":"Site navigation","text.components-work-explorer-SiteChrome.12":"EXPLORE MIGUEL.SYSTEMS","text.components-work-explorer-SiteChrome.13":"Close menu","text.components-work-explorer-SiteChrome.14":"Follow a connection.","text.components-work-explorer-SiteChrome.15":"Work, background,","text.components-work-explorer-SiteChrome.16":"and a way to say hello.","text.components-work-explorer-SiteChrome.17":"Main navigation","link.components-work-explorer-SiteChrome.18":"https://miguel.systems/","text.components-work-explorer-SiteChrome.19":"Home","text.components-work-explorer-SiteChrome.20":"A separate space for experiments","link.components-work-explorer-SiteChrome.21":"https://lab.miguel.systems/","text.components-work-explorer-SiteChrome.22":"Labs","link.components-work-explorer-SiteChrome.23":"https://miguel.systems/","text.components-work-explorer-SiteChrome.24":"miguel.systems home","text.components-work-explorer-SiteChrome.25":"Footer navigation","link.components-work-explorer-SiteChrome.26":"https://miguel.systems/","text.components-work-explorer-SiteChrome.27":"Home","link.components-work-explorer-SiteChrome.28":"https://miguel.systems/about","text.components-work-explorer-SiteChrome.29":"About","link.components-work-explorer-SiteChrome.30":"/work","text.components-work-explorer-SiteChrome.31":"Work","link.components-work-explorer-SiteChrome.32":"https://miguel.systems/contact","text.components-work-explorer-SiteChrome.33":"Contact","link.components-work-explorer-SiteChrome.34":"https://lab.miguel.systems/","text.components-work-explorer-SiteChrome.35":"Labs","text.components-work-explorer-SiteChrome.36":"Copyright ","text.components-work-explorer-SiteChrome.37":" Miguel Rodriguez","text.components-work-fallback-gallery.1":"Room to play.","text.components-work-fallback-gallery.2":"Jump to a study","text.components-work-fallback-gallery.3":"Interactive project gallery","link.components-work-fallback-gallery.4":"/work/u1-mechanical","text.components-work-fallback-gallery.5":"Read the webapp rollout story ","text.components-work-fallback-gallery.6":"My contribution","text.components-work-fallback-gallery.7":"Project context +","text.components-work-fallback-gallery.8":"Workflow automation","text.components-work-fallback-gallery.9":"Recorded demonstration","text.components-work-fallback-gallery.10":"Alteryx in motion.","text.components-work-fallback-gallery.11":"An excerpt of the preparation, joins and reusable workflow structure behind the analytical work.","link.components-work-fallback-gallery.12":"/work/billing-automation","text.components-work-fallback-gallery.13":"See the billing case study ","text.components-work-fallback-solutions.1":"What needs to","text.components-work-fallback-solutions.2":"A clear way to work together.","text.components-work-fallback-solutions.3":"01 / Understand","text.components-work-fallback-solutions.4":"Find the useful question.","text.components-work-fallback-solutions.5":"Start with your users, the current process, and the decision or action the work needs to support.","text.components-work-fallback-solutions.6":"02 / Shape & build","text.components-work-fallback-solutions.7":"Make the idea tangible.","text.components-work-fallback-solutions.8":"Agree on a focused scope, then use a working design or prototype to make the important choices visible.","text.components-work-fallback-solutions.9":"03 / Review & hand over","text.components-work-fallback-solutions.10":"Leave a clear next step.","text.components-work-fallback-solutions.11":"Review the work against the agreed scope, confirm the content, and document how to use and maintain it.","text.components-work-fallback-systems.1":"Under the surface.","text.components-work-fallback-websites.1":"A place for every","text.components-work-fallback-work.1":"THE COLLECTION","text.components-work-fallback-work.2":"Work","text.components-work-fallback-work.3":"Websites, systems, and things ","text.components-work-fallback-work.4":"made out of curiosity.","text.components-work-fallback-work.5":"Project index","galleryItems":[{"title":"Homelab Topology","category":"Infrastructure","status":"Abstracted system view","summary":"A private workstation-and-NAS environment designed for local inference, storage, isolated services, and observable workflows.","contribution":"Architecture, recovery audits, runtime planning, and operational boundaries.","safetyNote":"No addresses, ports, credentials, or machine-identifying details are published.","glyph":"network"},{"title":"U1 Mechanical","category":"Product","status":"Hosted owner-review preview","summary":"A service-business platform spanning a marketing site, quote journey, operational workflows, and customer-facing documents.","contribution":"UX research, frontend and backend implementation, database integration, and verified owner-review rollout.","safetyNote":"Website, dashboard, and field entry point deployed for owner review. Production acceptance remains open.","glyph":"mechanical"},{"title":"Seren’s Fades","category":"Product","status":"Brand exploration","summary":"A barber-shop identity and asset workflow built around bold lettering, adaptable marks, and practical promotional applications.","contribution":"Brand direction, identity exploration, and reusable asset preparation.","safetyNote":"Presented as branding work, not a completed website deployment.","glyph":"lettering"},{"title":"Covenant Compass","category":"Product","status":"Synthetic private prototype","summary":"A pastor-guided relationship-assessment concept focused on thoughtful facilitation, clear boundaries, and non-clinical language.","contribution":"Product planning, information architecture, demo experience, and safety framing.","safetyNote":"Synthetic scenarios only; no real submissions, live AI, or persistence.","glyph":"compass"},{"title":"Website Pipeline","category":"Infrastructure","status":"Local development tool","summary":"A local command center for guided site building with inspect-to-source editing, snapshots, and build validation.","contribution":"Workflow architecture, UI system, file operations, and verification loop.","safetyNote":"Private paths and machine details are omitted.","glyph":"pipeline"},{"title":"Video Tagger","category":"AI Systems","status":"Sanitized UI/UX example","summary":"A media review interface for cataloging, playback, queues, and precise timeline-based tagging.","contribution":"Interaction design, playback behavior, taxonomy workflow, and regression QA.","safetyNote":"The public description uses fictional media and taxonomy; no source content is included.","glyph":"video"},{"title":"Alteryx Automation","category":"Analytics","status":"Optimized demonstration","summary":"A short workflow excerpt showing practical automation for preparation, joins, macros, and reusable analytical delivery.","contribution":"Workflow design, executive demonstration, and analyst enablement.","safetyNote":"The clip is optimized and reviewed for publication; the raw 128 MB recording is never served.","glyph":"workflow"}],"archiveProjects":[{"id":"lockton","name":"Lockton","category":"Data","kind":"Analytics & automation","caption":"From fragmented business data to a decision someone can use.","work":"Power Query billing automation followed by selected Alteryx adoption; employee-sentiment dashboards in Power BI; and Talent Solutions Voice Lab, a desktop project that brings capture, analysis, editable charts, and branded PowerPoint reporting into one workflow.","approach":"Connect messy inputs, preserve the meaning of the data, and make the output legible. The work spans data preparation, benchmark comparisons, dashboard interfaces, reporting templates, and analyst review.","context":"My MetLife Power Query workflow reduced reported monthly processing from about nine hours to twenty minutes. The later Alteryx challenge and team adoption were separate stages. I also installed Voice Lab and trained the receiving manager to use the desktop reporting workflow.","tags":["Power Query","Alteryx","Power BI","Python","PowerPoint","Workflow design"],"sources":[{"label":"Dropbox / ChatGPT / Claude / Abacus · Lockton","detail":"Full ESA decks, Dashboard 3.0, coding archives and delivery history."}]},{"id":"openclaw","name":"OpenClaw projects","category":"AI","kind":"AI-assisted product development","caption":"A connected family of tools for research, reporting, and exploration.","work":"An application collection covering employee sentiment, competitive pricing, market demand, revenue, brand reputation, and the GreaterThan sales-intelligence concept, alongside presentation-template tools.","approach":"Use a shared application structure to connect data, analysis, charts, and exportable reports. Keep model-assisted interpretation connected to the evidence and the person reviewing it.","context":"A collection of prototypes and development projects. Demonstration dashboards use seeded data to explore the experience before connecting production sources.","tags":["Python","FastAPI","Chart.js","AI orchestration","Reporting"],"sources":[{"label":"Dropbox / GitHub · dashboard family","detail":"Application prototypes, seeded dashboards and GreaterThan development files."}]},{"id":"mimagery","name":"MiMagery","category":"Brand","kind":"Creative practice","caption":"A visual identity carried from the logo into the client experience.","work":"A creative-practice archive spanning MiMagery identity variations, logo animation, website design files, social media, email design, and client-facing templates.","approach":"Think beyond a single mark: build a visual language that can travel across a website, a message, a proposal, and a finished piece.","context":"Personal creative-practice work, connecting identity, motion, web design, and the experience of working with a client.","tags":["Identity","Web design","Motion","Client experience"],"sources":[{"label":"Dropbox · MiMagery","detail":"Identity, motion, web and client-template archive."}]},{"id":"art-projects","name":"Art & design projects","category":"Brand","kind":"Graphic & visual design","caption":"Different audiences. Different personalities. A deliberate visual voice.","work":"A broad archive of identity, campaign, event, and visual-design work. Project folders include U1 Mechanical, CloudCap, Dolfin Records, and Seren’s Fades, alongside illustration, print, and motion explorations.","approach":"Move from references and composition to identity variations and the formats people actually use: web, print, social, and motion.","context":"A collection of deliverables and creative explorations. The Seren’s Fades concepts are awaiting stakeholder review.","tags":["Graphic design","Visual direction","Illustrator","Photoshop"],"sources":[{"label":"Dropbox · Art / Projects","detail":"Working design files, campaign folders and visual explorations."}]},{"id":"tdc","name":"Templo de Cristo","category":"Media","kind":"Graphics, motion & web","caption":"Make a community’s story visible, on screen and beyond it.","work":"Media work across graphics, motion, and web design, with a supporting archive of event visuals, photography, and edited video.","approach":"Adapt a message to its setting, whether it is a live screen, a digital announcement, a moving image, or a website.","context":"Community media work spanning graphics, motion, and web design, including a New Year 2019 video and supporting photography.","tags":["Motion design","Web design","Graphics","Visual storytelling"],"sources":[{"label":"Dropbox / GitHub · TDC","detail":"Media archive, website and review-tool source, and WordPress recovery assessment."}]},{"id":"villas","name":"Villas","category":"Media","kind":"Hospitality imagery & web assets","caption":"Give a physical place a digital sense of atmosphere.","work":"A hospitality visual archive with finished interior, entrance, bar, and food photography, a logo, and a WordPress media library.","approach":"Build a coherent picture of the place through space, detail, and presentation, with imagery organized for a web experience.","context":"Archived hospitality photography and digital presentation work.","tags":["Photography","Image editing","Web imagery","WordPress"],"sources":[{"label":"Dropbox · Villas","detail":"Hospitality photography, logo and WordPress media archive."}]},{"id":"snty","name":"SNTY 2016","category":"Brand","kind":"Event communications","caption":"A shared message across identity and event promotion.","work":"An event-design archive containing logos and promotional flyers, including Yo Creo, Yo Creo Camp, and Abriendo Brechas.","approach":"Use hierarchy, typography, and a consistent visual direction to make an event’s message clear at a glance.","context":"Event identity and promotional work from 2016.","tags":["Event identity","Flyers","Typography","Campaign design"],"sources":[{"label":"Dropbox · SNTY 2016","detail":"Event logos and promotional flyer files."}]},{"id":"hilton-experiments","name":"Hilton Excel experiments","category":"Data","kind":"Spreadsheet exploration","caption":"An early habit: find a more useful way to work with information.","work":"A working collection of Excel experiments covering multi-criteria lookups, visualization challenges, an email generator, and spreadsheet-based visual tools.","approach":"Explore how formulas, structure, and visual presentation can make repetitive work easier to understand.","context":"Personal experiments and learning materials from my hospitality-era archive, using practice datasets and spreadsheet challenges.","tags":["Excel","Lookups","Data exploration","Visualization"],"sources":[{"label":"Dropbox · Hilton / Excel","detail":"Spreadsheet exercises, lookup experiments and visual tools."}]},{"id":"aero","name":"aerosmartliving.com","category":"Brand","kind":"Early business & identity exploration","caption":"Connect the business idea with a visual direction.","work":"Early planning material and identity references for an Aero Smart Living concept, with a focus on smart-home and home-services visual directions.","approach":"Explore positioning and identity together, considering how a service can communicate what it does before a visitor reads the details.","context":"An early business concept explored through planning and third-party identity references.","tags":["Concept development","Brand research","Service positioning"],"sources":[{"label":"Dropbox · Aero Smart Living","detail":"Early planning and identity references."}]},{"id":"renewed-vision","name":"Renewed Vision media","category":"Media","kind":"Presentation & media workflow","caption":"Bring the right visual to the right moment.","work":"A presentation-media library organized around countdowns, foregrounds, backgrounds, images, audio, and community presentation assets.","approach":"Curate and organize media for live use, where timing, readability, and consistency matter as much as the individual asset.","context":"Live-media preparation and curation using Renewed Vision tools and a mixed library of community and third-party assets.","tags":["ProPresenter","Media organization","Live presentation","Curation"],"sources":[{"label":"Dropbox · Renewed Vision","detail":"Presentation library and live-media preparation assets."}]},{"id":"youth-identity","name":"Youth identity explorations","category":"Brand","kind":"Logo concepts","caption":"Explore how a name becomes a recognizable visual idea.","work":"Youth-oriented identity studies, with sample concepts, layered Photoshop files, and an Illustrator vector file for Generación Escogida.","approach":"Work through variations in shape and typography, keeping the identity adaptable across screen and print.","context":"Early identity concepts and variations from the Youth Logo Ideas collection.","tags":["Logo design","Illustrator","Photoshop","Identity studies"],"sources":[{"label":"Dropbox · Youth Logo Ideas","detail":"Layered Photoshop concepts and Generación Escogida vector artwork."}]},{"id":"la-duni","name":"La Duni","category":"Hospitality","kind":"Hospitality & motion design","caption":"The human side of a well-designed experience.","work":"Bartending experience alongside a creative archive containing an editable logo-animation project, vector artwork and a finished motion render.","approach":"Carry the atmosphere of a hospitality brand into motion. The animation work adds a visual-design dimension to my experience of serving people in the same setting.","context":"The retained animation source and rendered video establish motion work in the archive. The existing company identity is distinguished from original logo authorship.","tags":["After Effects","Motion design","Hospitality","Customer experience"],"sources":[{"label":"Dropbox · La Duni","detail":"La Duni Logo Animate.aep, rendered MOV and vector artwork; owner hospitality account."}]},{"id":"mach-heating-air","name":"MACH Heating & Air","category":"Brand","kind":"Identity & vehicle graphics","caption":"A service identity designed to travel.","work":"Identity artwork, vehicle-art source and exported service graphics connect the brand to its presence on the road.","approach":"Think about the mark at several scales: a recognizable identity, a readable vehicle layout and the practical information a customer needs.","context":"The archive includes authored design files and presentation exports. Licensed van mockups are presentation materials, separate from the identity and layout work.","tags":["Illustrator","Identity","Vehicle graphics"],"sources":[{"label":"Dropbox · MACH Heating & Air","detail":"MACH.ai, Van Art_Mach Air.ai and exported vehicle graphics."}]},{"id":"taxes-on-the-move","name":"Taxes On The Move","category":"Brand","kind":"Bilingual campaign system","caption":"One message, two languages, many everyday formats.","work":"A coordinated print archive spanning identity, business cards, door hangers, yard signs, vehicle magnets and newsletters, including English-front and Spanish-back campaign pieces.","approach":"Keep recognition and hierarchy consistent while adapting the message to language, viewing distance and the physical format.","context":"Ready-for-print exports and working files document campaign preparation. Distribution, conversion and commercial outcomes are not inferred from those files.","tags":["Bilingual design","Print","Campaigns"],"sources":[{"label":"Dropbox · Taxes On The Move","detail":"Print-production folders and English/Spanish exports."}]},{"id":"lockton-fabrication","name":"Lockton · design to fabrication","category":"Brand","kind":"Event objects & 3D-print preparation","caption":"From a vector drawing to something you can hold.","work":"SOC earring designs and PRIDE keychain/bag-tag work connect Illustrator and SVG artwork to front/back 3MF print models.","approach":"Adapt a graphic for physical form, considering shape, scale and the transition from flat artwork to a prepared model.","context":"Vector and fabrication files establish design and print preparation. Finished-object photography and event distribution are not established by the inspected files.","tags":["Illustrator","SVG","3MF","Physical design"],"sources":[{"label":"Dropbox · Lockton · design to fabrication","detail":"SOC 2025 earring artwork and models; PRIDE keychain/bag-tag vectors and final 3MF."}]},{"id":"972-clothing","name":"972 Clothing","category":"Brand","kind":"Retail creative archive","caption":"An identity across the image, the promotion and the storefront.","work":"An archive spanning logo work, photoshoots, promotional materials, store content and website assets.","approach":"Explore how photography and identity can hold together across a retail campaign and its digital presentation.","context":"Retained project folders establish the range of material. They do not independently establish business ownership, sales results or authorship of every reference asset.","tags":["Photography","Identity","Retail","Web assets"],"sources":[{"label":"Dropbox · 972 Clothing","detail":"Logo, photoshoot, promotional, store and website project folders."}]},{"id":"cloudcap","name":"CloudCap","category":"Brand","kind":"Physical product exploration","caption":"Design the object and the practical questions around it.","work":"Product and display models in STL and 3MF, supported by cost calculators and branding exploration for a smoking accessory.","approach":"Connect shape, print preparation, presentation and cost considerations while exploring how a small physical product could be made.","context":"A product-prototyping archive. Planning and AI-assisted marketing notes are not evidence of launch, sales or product safety.","tags":["3D modeling","Prototyping","Cost modeling"],"sources":[{"label":"Dropbox · CloudCap","detail":"STL/3MF product and display files, cost workbooks and planning documents."}]},{"id":"hud-motion","name":"HUD motion study","category":"Media","kind":"Motion graphics & compositing","caption":"Information imagined in motion.","work":"An After Effects project and rendered driving sequence explore a heads-up-display visual treatment.","approach":"Use composition, timing and layered interface graphics to make an imagined information display read within moving footage.","context":"A motion and compositing study, not a working vehicle HUD or live driving-assistance system.","tags":["After Effects","Compositing","Motion design"],"sources":[{"label":"Dropbox · HUD motion study","detail":"HUD Project.aep and HUD Drive.mov."}]},{"id":"sephora-team-media","name":"Sephora · team media","category":"Media","kind":"Video & internal communications","caption":"Give a shared moment a visual form.","work":"A retained video edit, title renders and layered “We Miss You” artwork document creative work around team communication.","approach":"Bring pacing, imagery and typography together around a message meant for people who know one another.","context":"Team-media work in the personal archive. Corporate commissioning and original authorship of licensed or stock elements are not implied.","tags":["Video editing","Typography","Compositing"],"sources":[{"label":"Dropbox · Sephora · team media","detail":"Finished video, title renders, editing notes and layered artwork."}]},{"id":"gipsy-lime","name":"Gipsy Lime","category":"Hospitality","kind":"Menu & information design","caption":"Help someone find what they want.","work":"Retained menu documents, a menu PDF and a supporting identity folder connect hospitality experience with practical information design.","approach":"Use ordering, hierarchy and legibility to make a dense set of choices easier to explore.","context":"An archived menu-design project. The retained files do not establish a current menu, current pricing or an ongoing client engagement.","tags":["Menu design","Print","Hospitality"],"sources":[{"label":"Dropbox · Gipsy Lime","detail":"2016 menu files, 2017 update document and logo folder."}]},{"id":"project-lit","name":"Project Lit","category":"Brand","kind":"Poster & composition studies","caption":"Let composition carry the mood.","work":"Layered poster studies, variations and rendered pieces document an archive of visual experimentation.","approach":"Explore typography, imagery and contrast through alternate compositions, keeping the working layers as part of the creative record.","context":"A mixture of personal studies, references and templates. Individual pieces need attribution before the original images are exhibited; the project record does not claim authorship of reference imagery.","tags":["Photoshop","Posters","Composition"],"sources":[{"label":"Dropbox · Project Lit","detail":"Layered sample PSDs, poster studies and rendered folders."}]},{"id":"photography-practice","name":"Photography practice","category":"Media","kind":"A visual archive","caption":"Notice the subject, shape the frame.","work":"A curated photography archive organized by subject supports a broader practice of image-making alongside hospitality and brand work.","approach":"Use selection, framing and editing to build coherent visual sequences rather than treating every photograph as an isolated asset.","context":"The archive contains personal and mixed-source material. This entry records the practice; it does not expose private photographs or assign blanket authorship to the entire library.","tags":["Photography","Selection","Image editing"],"sources":[{"label":"Dropbox · Photography practice","detail":"Subject-based photography archive and portfolio selections."}]},{"id":"lead-management-ux","name":"Lead Management UX","category":"Brand","kind":"Interface design study","caption":"Make the next action in a workflow visible.","work":"A layered interface draft and an External Lead Controller prototype explore how a lead-management workspace could be organized.","approach":"Use information hierarchy and screen structure to help a user move from a record to an action.","context":"Photoshop and Adobe XD design artifacts establish an interface prototype. A deployed CRM or connected production workflow was not established.","tags":["Adobe XD","Photoshop","UX design"],"sources":[{"label":"Dropbox · Lead Management UX","detail":"Draft.psd and External Lead Controller.xd."}]},{"id":"microgive","name":"microGIVE","category":"Brand","kind":"Product interface prototype","caption":"An early product idea made tangible on screen.","work":"A retained Adobe XD prototype preserves interface exploration under the microGIVE name.","approach":"Use the prototype as a concrete starting point for discussing hierarchy, flow and interaction rather than leaving the idea only in notes.","context":"The inspected source establishes a design artifact. Its complete feature scope, backend implementation and launch were not established.","tags":["Adobe XD","Product design","Prototyping"],"sources":[{"label":"Dropbox · microGIVE","detail":"microGIVE.xd in the retained prototype archive."}]}],"projectChapters":{"employee-sentiment-intelligence":[{"title":"Voice Lab","href":"/work/voice-lab","detail":"Product design, settings evolution, installation and team training."},{"title":"Total Rewards analytics","href":"/work/total-rewards-analytics","detail":"Survey normalization, importance versus satisfaction and benefits priorities."},{"title":"NAICS Finder","href":"/work/naics-finder","detail":"Company classification and the research behind a useful peer group."},{"title":"Culture & sentiment taxonomy","href":"/work/culture-taxonomy","detail":"Topic models and query design that shape what the analysis can detect."},{"title":"Reliable ratings & write-back","href":"/work/esa-data-reliability","detail":"Output-layer diagnosis and Smartsheet updates that preserve existing values."},{"title":"Presentation automation","href":"/work/pptx-template-update","detail":"Editable templates and explanations shaped for the client conversation."},{"title":"Report asset preparation","href":"/work/esa-report-assets","detail":"The image, workbook and preparation tools around the final deck."}],"local-ai-orchestration":[{"title":"Cross-machine AgentOps","href":"/work/cross-machine-agentops","detail":"Work queues, shared context and visible health across the desktop, laptop and NAS."},{"title":"Video-to-research pipeline","href":"/work/video-research-pipeline","detail":"Timestamped transcripts, frames and OCR connected to retrieval."},{"title":"ScoreForge","href":"/work/scoreforge","detail":"A separate music application putting local processing into a musician’s workflow."}],"tdc-design-review":[{"title":"Recovery assessment","href":"/work/tdc-design-review#recovery-assessment","detail":"The WordPress archive investigation and the evidence behind a rebuild decision."}]},"earlierExperience":[{"title":"Auditor","organization":"United Way of Metropolitan Dallas","dates":"June 2017–March 2018","detail":"Contract audit and data-quality support."},{"title":"National Sales Data Analyst","organization":"Hilton Worldwide","dates":"February 2015–May 2017","detail":"Revenue reporting and frontend/functionality contributions to an internal lead-automation system."},{"title":"Workforce Analyst & A/R Billing","organization":"CSC ServiceWorks","dates":"March–November 2014","detail":"Reduced a recurring billing and data‑merging workflow from roughly three days to about five hours."}],"benefitPaths":[{"id":"ltd","label":"Long-term disability","inputs":["Coverage election","Compensation","Plan / designation"],"rules":["Rate lookup","Salary cap","Monthly basis"],"output":"Employer + employee LTD","detail":"Separate employer and employee paths join rate references, apply salary caps, and prepare itemized billing calculations."},{"id":"std","label":"Short-term disability","inputs":["Benefit amount","Plan class","Deduction frequency"],"rules":["Class mapping","Rate reference","Monthly costs"],"output":"STD itemized detail","detail":"A plan’s class and rate are resolved before the workflow calculates billing subtotals and monthly employee / employer costs."},{"id":"life","label":"Life & critical illness","inputs":["Coverage","Employee / spouse age","Benefit selection"],"rules":["Age-band mapping","Coverage-specific logic","Plan mapping"],"output":"Life + CI itemized detail","detail":"Age bands support the relevant coverage paths. Basic and supplemental life have separate outputs; critical illness joins its own mapping and compares calculated costs."}],"exceptionPaths":[{"id":"location","label":"Missing location class","source":"Location mapping","reason":"The record has no resolved billing location class.","review":"Identify the affected record and the missing classification.","owner":"The client confirms or corrects source details; the analyst reviews the mapping before the next run."},{"id":"benefit","label":"Missing employer benefit","source":"Benefit completeness checks","reason":"An expected employer-paid benefit is absent from the calculated output.","review":"Compare expected basic-life and LTD coverage with the outputs, then investigate eligibility before treating every flag as an error.","owner":"The client confirms valid group exceptions or corrects source errors; the analyst retains the reason and reviews the next run."}],"u1Journey":[{"stage":"Research","title":"Start with what the customer needs to do.","body":"Mobbin research compared service-business heroes, product comparison tables, request forms, and next-step sections. Airtasker, Synthesia, Jobber, and Daylight helped frame clearer choices: browse equipment, compare options, or request an installation.","lesson":"Use patterns to answer a specific UX question. Implement independently; do not borrow another company’s claims or assets."},{"stage":"Plan","title":"Map the whole journey before choosing the host.","body":"The public website, office dashboard, and field app share a business context but have different access needs. The plan separated application code, database records, uploaded files, roles, and external providers, while preserving the original website and mail setup.","lesson":"A domain name is only the address. The runtime, authentication, storage, and database connection have to work together."},{"stage":"Implement","title":"Build the front end and the system behind it.","body":"The public refinement improved service discovery, guided shopping, comparison, and request flows. Next.js server routes, Prisma data access, NextAuth sessions, and role checks supported the operational system. The public redesign preserved the accepted dashboard and field layouts.","lesson":"Connect the experiences through shared data and permissions without forcing every role into the same interface."},{"stage":"Test & fail","title":"A local pass did not guarantee a hosted pass.","body":"The host rejected direct PostgreSQL connections. Early imports failed even when private Preview ran. A wrapped release then failed the provider’s health check. Later, the owner setup form returned 403 in the real browser despite earlier diagnostic success.","lesson":"Treat each failure as evidence about a specific boundary. Do not confuse a running preview with a published, usable application."},{"stage":"Research again","title":"Make the failing condition small enough to understand.","body":"Transport probes established that secure WebSockets worked. Package inspection identified missing runtime files. Host-specific tests separated provider liveness from app access. A browser diagnostic finally reproduced the owner form’s null Origin and traced it to the referrer policy.","lesson":"When a test misses the bug, improve the reproduction before repeating the same deployment or asking the user to retry."},{"stage":"Retry & verify","title":"Close the loop with a real hosted sign-in.","body":"The corrected release used Neon’s WebSocket driver, a self-contained integrity-checked package, and a narrow liveness response. Three included hosting apps served the approved addresses. A same-origin form policy fixed owner setup while retaining origin checks; the owner then signed in successfully.","lesson":"Success meant a visible website, protected applications, the intended database, and a human who could actually use their account."}],"u1Failures":[{"title":"Database connection blocked","failure":"Direct PostgreSQL TCP failed on the actual host.","research":"Test the transport separately from the credentials and schema.","repair":"Use the official Neon WebSocket driver with the matching Prisma adapter; retain strict TLS and the working local adapter.","proof":"Host connectivity read-back, migration rehearsal, and packaged-runtime session checks."},{"title":"Preview worked; publication failed","failure":"Early imports failed, and one published package omitted a required runtime helper.","research":"Compare the imported artifact with the qualified application, including every required runtime file.","repair":"Deliver one self-contained wrapper with payload and per-file integrity checks, then cold-start the final package.","proof":"The same qualified release bytes were published and checked across all three apps."},{"title":"Hosting assumptions broke","failure":"The provider health check used an internal hostname; the website app accepted only one custom domain.","research":"Inspect the health-check behavior and the actual plan’s domain and app limits.","repair":"Return neutral liveness only at the internal root, keep other unknown-host requests denied, and use included app slots for the remaining addresses.","proof":"HTTPS, hostname enforcement, shared build identity, and dashboard/field access gates verified."},{"title":"The owner form rejected the browser","failure":"A real form submission returned 403. An earlier diagnostic had omitted the policy that triggered it.","research":"Reproduce the browser submission with the actual response headers and synthetic data.","repair":"Change the setup form’s referrer policy to same-origin while retaining null-origin, foreign-origin, and CSRF rejection.","proof":"The owner’s retry created the account, followed by successful password login to the hosted dashboard."}],"navigation":{"work":{"label":"Work","features":[{"label":"Ultimate Lawncare","href":"/work/ultimate-lawncare","image":"/media/websites/ultimate-lawncare.webp","description":"Three archived lawn-care website tiers"},{"label":"Seren’s Fades","href":"/work/serens-fades","image":"/media/websites/serens-fades.webp","description":"A mobile barber’s brand, brought to life"},{"label":"Templo de Cristo","href":"/work/tdc-design-review","image":"/media/websites/templo-de-cristo.webp","description":"A bilingual welcome for a church community"}],"links":[{"label":"All projects","href":"/work","description":"Search the complete project library"},{"label":"Websites","href":"/websites","description":"Client websites and brand experiences"},{"label":"Systems","href":"/systems","description":"Automation, AI, and connected workflows"},{"label":"Creative gallery","href":"/gallery","description":"Identity, interfaces, and experiments"},{"label":"Solutions","href":"/solutions","description":"Ways we can work together"}]},"labs":{"label":"Labs","features":[{"label":"Browser Lab","href":"https://lab.miguel.systems/","image":"/media/browser-lab.png","description":"Make something, solve something, or take a playful break"},{"label":"Industry Showroom","href":"https://industries.miguel.systems/","image":"/media/showroom/industry-showroom.png","description":"Explore 12 fictional business experiences"}],"links":[{"label":"Browser Lab","href":"https://lab.miguel.systems/","description":"Useful tools that run in your browser"},{"label":"Industry Showroom","href":"https://industries.miguel.systems/","description":"Try 12 fictional website directions"},{"label":"Interactive stories","href":"/lab/stories","description":"Try the workflows behind the project stories"},{"label":"FAULTLINE Lab","href":"/lab/faultline","description":"Replay and inspect an agent reliability experiment"}]},"about":{"label":"About","features":[{"label":"The person behind the work","href":"/about","image":"/miguel-rodriguez.jpg","description":"Data, code, and design. One connected practice."}],"links":[{"label":"About Miguel","href":"/about","description":"My background and how I work"},{"label":"Résumé","href":"/resume","description":"Experience, skills, and reported results"},{"label":"Privacy","href":"/privacy","description":"Browser preferences and optional analytics"}]},"contact":{"label":"Contact","links":[{"label":"GitHub","href":"https://github.com/MRodriguez2010"},{"label":"LinkedIn","href":"https://www.linkedin.com/in/miguel-rodriguez-3573b485/"}]}},"resumes":[{"id":"generalist","label":"Generalist","description":"Analytics, automation, and systems","target":"Senior Analytics and Automation Professional","summary":"Analytics and automation professional with 13+ years across workforce and benefits operations, business reporting, data products, and stakeholder delivery. Builds practical tools from complex requirements and evidence. Current freelance and independent work spans business applications, local software, and AI evaluation, using AI-assisted implementation with rigorous review, reproducible tests, and clear ownership of outcomes.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_General-Analytics-Automation.pdf","skills":[{"label":"Analytics and systems","text":"Power BI, DAX, Power Query, Python, Alteryx, Excel, workflow automation, API integration, data quality"},{"label":"Product and execution","text":"Requirements discovery, user experience, stakeholder consulting, AI orchestration, evaluation, Git, documentation"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct freelance and independent projects from requirements and design through AI-assisted implementation, testing, and iteration, maintaining active practice across analytics and software delivery.","Break complex work into bounded tasks, preserve reusable context, and coordinate handoffs across tools to reduce avoidable rework and keep progress reviewable.","Evaluate generated code and analysis against requirements, source evidence, and test outcomes; require corrections to unsupported claims or incomplete behavior before accepting work."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions.","Built Power BI dashboards across thousands of proprietary data points, using DAX, Power Query, industry benchmarking, privacy-aware executive views, and longitudinal analysis.","Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions.","Partnered with consultants and senior stakeholders to turn ambiguous questions into benchmark analyses and executive presentations supporting acquisition and retention conversations."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed a connected customer website, owner dashboard, and field interface using Next.js, TypeScript, Prisma, and PostgreSQL. Combined UX research, shared workflows, permissions, and browser verification in a hosted owner-review rollout.","href":"/work/u1-mechanical"},{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a Python/PostgreSQL lab comparing conventional recovery with a bounded local model. Independent record checks, captured failures, and reproducible evidence show how AI results are evaluated before they are trusted.","href":"/work/faultline"},{"name":"Memory Relief","status":"Local desktop project","body":"Directed a Python and React/GTK utility for memory diagnostics and storage review. Kept cleanup scoped and recoverable, with explicit permissions and protection for active work.","href":"/work?q=Memory%20Relief#project-ram-relief"}]},{"id":"analytics-bi","label":"Analytics & BI","description":"Reporting, data quality, and business insight","target":"Senior Data Analyst | Business Intelligence","summary":"Senior data analyst with 13+ years across analytics, workforce and benefits operations, reporting, and automation. Scaled employee sentiment analysis into a national capability and built Power BI and Python tools for consulting teams. Current freelance and independent projects extend this work into operational applications and AI evaluation, combining faster iteration with source validation, reproducible checks, and clear business explanations.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_Analytics-BI-01.pdf","skills":[{"label":"Analytics","text":"Power BI, DAX, Power Query, Excel, Python, Alteryx, benchmarking, data quality, executive reporting"},{"label":"Delivery","text":"Requirements discovery, workflow design, stakeholder consulting, AI orchestration, output evaluation, Git"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct AI-assisted analytics and application work from requirements through implementation review, testing, and revision, retaining ownership of scope and acceptance decisions.","Break complex work into scoped tasks, reuse project context and handoff notes, and run focused checks to control rework across research, software, and design.","Evaluate generated analysis against source evidence and test results; challenge unsupported claims, reconcile inconsistent outputs, and require corrections before accepting a deliverable."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions.","Built Power BI dashboards across thousands of proprietary data points, using DAX, Power Query, industry benchmarking, privacy-aware executive views, and longitudinal analysis.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review.","Validated company identity, competitor lists, industry mappings, source availability, and rating dimensions before turning research into client-facing reporting."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions.","Partnered with consultants and senior stakeholders to turn ambiguous questions into benchmark analyses and executive presentations supporting acquisition and retention conversations."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed a connected website, owner dashboard, and field interface with shared customer and request workflows. Applied role-based access and browser acceptance checks to a Next.js, TypeScript, Prisma, and PostgreSQL application.","href":"/work/u1-mechanical"},{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a Python/PostgreSQL lab that checks record identity, amounts, completeness, and duplicate effects after a proposed repair. Made failed AI attempts visible alongside successful results so a plausible explanation cannot stand in for correct data.","href":"/work/faultline"},{"name":"Memory Relief","status":"Local desktop project","body":"Directed a Python and React/GTK application for memory diagnostics and storage review. Kept observation separate from cleanup authority and used scoped, recoverable actions to protect active work.","href":"/work?q=Memory%20Relief#project-ram-relief"}]},{"id":"data-products","label":"Data Products & Automation","description":"Stakeholder needs, data products, and workflows","target":"Senior Data Analyst | Data Products and Automation","summary":"Analytics and data-product professional with 13+ years spanning business reporting, workforce operations, automation, and stakeholder delivery. Connects ambiguous business questions to repeatable research, dashboards, and usable tools. Current freelance and independent work adds AI-assisted product development and system evaluation, with explicit requirements, reusable workflows, and evidence-based review throughout delivery.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_Analytics-BI-02.pdf","skills":[{"label":"Data products","text":"Power BI, DAX, Power Query, Python, Alteryx, Excel, data modeling, dashboard design, data validation"},{"label":"Execution","text":"Stakeholder discovery, process automation, API integration, acceptance criteria, AI orchestration, Git, documentation"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Translate business and user needs into application workflows, data requirements, and acceptance criteria; coordinate AI-assisted research, implementation, and testing against that scope.","Use bounded tasks and reusable context to move complex projects through small, reviewable changes, checking interfaces and data behavior before expanding scope.","Review AI outputs for factual support, functional completeness, and usability; use independent checks and documented failure cases to decide what is ready to accept."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions.","Designed Full, Comparative, and Benchmark offerings around review volume, analytical depth, and client needs, giving consultants a repeatable delivery approach.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review.","Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions.","Partnered with consultants and senior stakeholders to turn ambiguous questions into benchmark analyses and executive presentations supporting acquisition and retention conversations."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed customer discovery, guided product comparison, and operational dashboard workflows in one shared application. Connected requirements to persistent records, permissions, and tested user journeys across public, office, and field entry points.","href":"/work/u1-mechanical"},{"name":"Local App Blueprint","status":"Published reusable infrastructure project","body":"Directed a lean NAS application blueprint and Python/SQLite example covering persistent state, health checks, and concurrent writes. Reusable Docker Compose templates separate development from durable application data.","href":"/work?q=Local%20App%20Blueprint#project-local-app-infrastructure"},{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a reproducible comparison of restart, runbook, and bounded model recovery. An independent evaluator reconciles resulting business records, providing concrete evidence for whether an automated workflow actually succeeded.","href":"/work/faultline"}]},{"id":"power-bi","label":"Power BI & DAX","description":"Dashboards, models, and executive reporting","target":"Power BI Developer and Data Analyst","summary":"Power BI and analytics professional experienced in DAX, Power Query, semantic-model workflows, executive reporting, and Python automation. Developed employee sentiment and total rewards dashboards and translated stakeholder questions into comparable measures and usable reports. Current freelance and independent projects apply the same requirements, data-validation, and user-review discipline to AI-assisted applications and analytical tools.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_Analytics-Power-BI-DAX.pdf","skills":[{"label":"Business intelligence","text":"Power BI Desktop and Service, DAX, Power Query, M, semantic models, refresh workflows, benchmarking"},{"label":"Supporting practice","text":"Python, Alteryx, Excel, PowerPoint, source reconciliation, stakeholder discovery, AI output review, Git"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct freelance and independent application projects using explicit data definitions, user workflows, and acceptance checks to keep reporting and interface behavior consistent.","Coordinate AI-assisted implementation through scoped tasks, shared requirements, and targeted tests; review generated logic and explanations against the intended business behavior.","Validate source coverage and output completeness before presenting results, carrying established dashboard quality practices into current software and AI evaluation work."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Built Power BI dashboards across thousands of proprietary data points, using DAX, Power Query, industry benchmarking, privacy-aware executive views, and longitudinal analysis.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review.","Validated company identity, competitor lists, industry mappings, source availability, and rating dimensions before turning research into client-facing reporting.","Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Converted public employee-review and rating data into workforce findings across compensation, culture, leadership, inclusion, and career-growth themes.","Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"Employee Sentiment and Total Rewards Reporting","status":"Delivered at Lockton","body":"Built DAX and Power Query reporting around sentiment, ratings, industry benchmarks, and longitudinal comparisons. Supported Desktop authoring, Service publishing, semantic-model refresh, and executive PowerPoint delivery.","href":"/work/employee-sentiment-intelligence"},{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed operational dashboard and customer-request workflows backed by shared PostgreSQL records. Applied role-based visibility, clear status definitions, and browser checks to make different users' views consistent with the underlying data.","href":"/work/u1-mechanical"},{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a Python/PostgreSQL data-quality lab whose evaluator checks individual records even when aggregate totals balance. Used visible exceptions and recorded outcomes to explain why automated results pass or fail.","href":"/work/faultline"}]},{"id":"sql-python","label":"SQL & Python Analytics","description":"Reconciliation, research, and data validation","target":"Senior Data Analyst | Python and SQL Data Workflows","summary":"Senior analytics professional with 13+ years across business data, workforce operations, automation, and executive reporting. Combines Python research tooling and Power BI delivery with current AI-assisted PostgreSQL application and evaluation projects. Brings a disciplined approach to source reconciliation, record-level validation, exception handling, and communicating what an analysis supports.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_Analytics-SQL-Python.pdf","skills":[{"label":"Data work","text":"Python, SQL/PostgreSQL project workflows, Power BI, DAX, Power Query, Alteryx, JSON, data modeling"},{"label":"Quality and delivery","text":"Reconciliation, data validation, reproducible evaluation, stakeholder consulting, AI orchestration, Git"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct AI-assisted Python and PostgreSQL projects that connect data ingestion, persistent records, recovery behavior, and independent verification using synthetic test data.","Define expected outcomes before accepting generated work; inspect mismatches, preserve source evidence, and require record-level checks that can expose errors hidden by aggregate totals.","Use scoped implementation tasks, reusable context, and focused regression checks to advance complex projects while retaining final analytical and product judgment."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts.","Built Power BI dashboards across thousands of proprietary data points, using DAX, Power Query, industry benchmarking, privacy-aware executive views, and longitudinal analysis.","Validated company identity, competitor lists, industry mappings, source availability, and rating dimensions before turning research into client-facing reporting.","Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions.","Partnered with consultants and senior stakeholders to turn ambiguous questions into benchmark analyses and executive presentations supporting acquisition and retention conversations."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Administered benefits and monthly vendor billing for fully insured and self-insured clients in ERISA- and HIPAA-sensitive environments."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a Python/PostgreSQL workflow that persists sale and refund events, injects duplicate delivery and interrupted writes, and compares recovery approaches. Independent checks verify identity, exact amounts, completeness, and quarantine against a separate expected-record manifest.","href":"/work/faultline"},{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed shared customer, opportunity, estimate, and operational workflows using Prisma and PostgreSQL. Versioned schema migrations, access controls, and disposable database fixtures support repeatable application checks.","href":"/work/u1-mechanical"},{"name":"Local App Blueprint","status":"Published reusable infrastructure project","body":"Directed a Python/SQLite example and Docker Compose templates that make persistent state and concurrent writes testable. Documented deployment and data-storage responsibilities so project setup can be reused.","href":"/work?q=Local%20App%20Blueprint#project-local-app-infrastructure"}]},{"id":"data-engineering","label":"Data Engineering & ETL","description":"Ingestion, transformation, and reliable data","target":"Analytics Engineering and Data Integration","summary":"Analytics and automation professional focused on reliable data acquisition, transformation, validation, and downstream reporting. Built configurable Python research tools and integrated research with Power BI and executive delivery. Current freelance and independent projects extend this background into PostgreSQL workflows, reproducible failure analysis, and AI-assisted application engineering, with clear contracts and independently checked results.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_Data-Engineering-ETL.pdf","skills":[{"label":"Data integration","text":"Python, SQL/PostgreSQL project workflows, ETL, JSON schemas, HTML parsing, Power Query, Alteryx, Power BI"},{"label":"Engineering practice","text":"API integration, schema validation, deduplication, reconciliation, Docker, Git, AI orchestration, regression checks"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct AI-assisted data and application projects across ingestion, schema design, persistent storage, and downstream validation, keeping expected behavior explicit at system boundaries.","Coordinate scoped tasks and reusable project handoffs; check generated implementation against data contracts, failure scenarios, and reproducible evidence before accepting changes.","Use synthetic fixtures and isolated environments to examine duplicate effects, interrupted processing, incompatible records, and recovery without changing operational data."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review.","Validated company identity, competitor lists, industry mappings, source availability, and rating dimensions before turning research into client-facing reporting.","Coordinated team-supported delivery while retaining ownership of platform architecture, automation strategy, and analytics quality standards."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Converted public employee-review and rating data into workforce findings across compensation, culture, leadership, inclusion, and career-growth themes.","Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a Python/PostgreSQL ingestion and ledger lab with tenant-scoped event identity, transaction boundaries, quarantine, and recovery receipts. Compared resulting records against an independent manifest to catch duplicate effects and incomplete or incorrect processing.","href":"/work/faultline"},{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed a shared application data layer using Prisma, PostgreSQL, and versioned migrations. Linked customer requests to operational records and permissions, with reproducible database fixtures and migration checks supporting delivery.","href":"/work/u1-mechanical"},{"name":"Local App Blueprint","status":"Published reusable infrastructure project","body":"Directed reusable Docker Compose layouts and a runnable Python/SQLite example. Separated durable data and backups from release code, with health, persistence, and concurrent-write checks for repeatable local deployment.","href":"/work?q=Local%20App%20Blueprint#project-local-app-infrastructure"}]},{"id":"ai-orchestration","label":"AI Orchestration & Product","description":"Applied AI, evaluation, and product delivery","target":"Applied AI Product Builder and Workflow Orchestrator","summary":"Analytics and applied AI product builder with 13+ years across data products, workflow automation, stakeholder delivery, and user enablement. Directs AI-assisted projects from problem definition through implementation and evaluation. Uses bounded agent tasks, reusable context, and explicit acceptance criteria to work through complex systems while retaining responsibility for evidence quality, usability, and final decisions.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_AI-Orchestration-Product.pdf","skills":[{"label":"Applied AI","text":"Agent orchestration, tool calling, MCP integrations, structured outputs, context handoffs, model evaluation, human review"},{"label":"Product and delivery","text":"Requirements, workflow design, Python, React/TypeScript projects, PostgreSQL, Docker, Git, testing, user enablement"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct freelance and independent software projects with AI coding tools, coordinating research, implementation, testing, and revision through bounded tasks and explicit review criteria.","Evaluate AI output for source support, functional correctness, and usability; reject unsupported claims and incomplete behavior, then use failed checks to guide the next revision.","Use reusable prompts, project context, and handoff documentation to coordinate work efficiently across tools, preserving human decisions at consequential action and release boundaries."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review.","Built a configurable Python Research Toolkit for profile searches and HTML collection and parsing; used JSON-driven schemas and packaged EXE tools for nontechnical analysts.","Coordinated team-supported delivery while retaining ownership of platform architecture, automation strategy, and analytics quality standards."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions.","Partnered with consultants and senior stakeholders to turn ambiguous questions into benchmark analyses and executive presentations supporting acquisition and retention conversations."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes.","Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed a bounded comparison of a runbook and a local Qwen3 4B recovery selector. Recorded results showed 15/15 runbook scenarios repaired versus 20/30 model attempts; an independent record evaluator exposed every failed interrupted-write attempt.","href":"/work/faultline"},{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed product requirements, UX research, and AI-assisted delivery of connected public, owner, and field interfaces. Used test evidence and browser verification to resolve integration failures while keeping production acceptance distinct from the hosted review milestone.","href":"/work/u1-mechanical"},{"name":"Memory Relief","status":"Local desktop project","body":"Directed a Python and React/GTK utility with memory diagnostics, storage review, and protection for active AI work. Bounded permissions and recoverable cleanup illustrate human control around consequential automated actions.","href":"/work?q=Memory%20Relief#project-ram-relief"}]},{"id":"people-analytics","label":"HR & People Analytics","description":"Workforce intelligence and HR operations","target":"People Analytics and Workforce Intelligence","summary":"People analytics and HR operations professional with 13+ years across employee sentiment, benefits, workforce management, reporting, and automation. Scaled a national analytics capability and translated employee feedback into executive decisions. Current freelance and independent projects maintain active technical practice in data quality, workflow design, and supervised AI, with careful handling of evidence and human review.","pdf":"/resumes/2026-09-22_Miguel-Rodriguez_HR-People-Analytics.pdf","skills":[{"label":"People analytics","text":"Employee sentiment, workforce reporting, benefits operations, industry benchmarking, privacy-aware reporting, data sufficiency"},{"label":"Tools and enablement","text":"Power BI, DAX, Power Query, Python, Alteryx, Excel, stakeholder consulting, training, AI output evaluation"}],"experience":[{"title":"Independent Analytics and AI Project Work","dates":"Freelance work and applied R&D | Current","bullets":["Direct freelance and independent projects that combine user discovery, data workflows, and AI-assisted implementation, keeping analytical and technical skills active through ongoing delivery.","Translate complex system behavior into practical workflows and plain-language explanations, drawing on experience supporting nontechnical analysts and operational teams.","Review generated insights for evidence, completeness, and appropriate conclusions; use explicit acceptance criteria and human decisions to prevent unsupported output from becoming business advice."]},{"title":"Lockton | Senior Data Analyst","dates":"Plano, TX | May 2025 - April 2026","bullets":["Scaled Employee Sentiment Analysis from divisional work into a national, multi-division analytics capability supporting executive client-acquisition decisions.","Designed Full, Comparative, and Benchmark offerings around review volume, analytical depth, and client needs, giving consultants a repeatable delivery approach.","Built Power BI dashboards across thousands of proprietary data points, using DAX, Power Query, industry benchmarking, privacy-aware executive views, and longitudinal analysis.","Designed a workflow connecting Smartsheet intake, automated research, Power BI dashboards, templated PowerPoint reporting, and AI-assisted insights with analyst review."]},{"title":"Lockton | Data Research Analyst","dates":"Dallas, TX | August 2023 - May 2025","bullets":["Converted public employee-review and rating data into workforce findings across compensation, culture, leadership, inclusion, and career-growth themes.","Established data-sufficiency thresholds and analytical tiers so limited review volume did not become unsupported conclusions."]},{"title":"Lockton | HRO Data Analyst","dates":"Dallas, TX | May 2022 - August 2023","bullets":["Administered benefits and monthly vendor billing for fully insured and self-insured clients in ERISA- and HIPAA-sensitive environments.","Automated billing reconciliation, invoice creation, carrier census templates, COBRA-related notices, and reporting with Excel, Power Query, M, macros, and Alteryx.","Delivered Power Query training for analysts and taught client-management teams recurring billing, HRIS, carrier-management, and benefits processes."]},{"title":"Lockton | Benefits Analyst and Benefits Specialist","dates":"Dallas-Fort Worth, TX | November 2018 - May 2022","bullets":["Supported benefits administration, enrollment, client onboarding, reporting, and vendor coordination. Concurrent Lockton contractor assignment at MoneyGram (March 2020 - May 2022) covered reimbursement and benefit-invoice reporting."]}],"projects":[{"name":"Employee Sentiment Intelligence","status":"Delivered at Lockton","body":"Connected public employee feedback, industry comparisons, and executive reporting across compensation, culture, leadership, and career growth. Structured delivery tiers and data-sufficiency rules made the service repeatable without overstating limited evidence.","href":"/work/employee-sentiment-intelligence"},{"name":"U1 Mechanical","status":"Ongoing owner-review application","body":"Directed workflows for different operational roles, with shared records, access controls, and clear next actions. Applied stakeholder discovery and usability review to a connected website, owner dashboard, and field interface.","href":"/work/u1-mechanical"},{"name":"FAULTLINE","status":"Published synthetic-data evaluation lab","body":"Directed an evaluation lab that makes incorrect automated results visible even when an AI action is accepted. Applied independent checks and documented failures to demonstrate accountable use of AI in business-data workflows.","href":"/work/faultline"}]},{"id":"systems-and-automation","label":"Systems and Automation","description":"Operational automation, data quality and analyst-friendly systems","target":"Systems and Automation","summary":"Systems and automation professional building reusable business solutions since 2014. Designs maintainable automation around end users and their workflows, combining creative problem solving with benefits and HR operations experience, source-preserving integration, validation, and exception handling.","pdf":"/resumes/2026-10-14_Miguel-Rodriguez_Systems-and-Automation_r6.pdf","skills":[{"label":"Workflow automation","text":"Power Query (M), Alteryx Designer, analytic apps and macros, Power Automate, n8n, Excel/VBA."},{"label":"Analytics and integration","text":"Power BI/DAX, Python, SQL/PostgreSQL, REST APIs, JSON, Smartsheet, SharePoint, Alteryx Intelligence Suite."},{"label":"AI tools and interfaces","text":"Microsoft Copilot, ChatGPT, Codex, Claude/Claude Code, Abacus AI, OpenClaw, Hermes, Traycer, Pi, Nodeterm; CLI, Model Context Protocol (MCP)."},{"label":"Certification","text":"Alteryx Designer Core Certification."}],"experience":[],"projects":[],"bodyMarkdown":"## Professional Summary\n\nSystems and automation professional building reusable business solutions since 2014. Designs maintainable automation around end users and their workflows, combining creative problem solving with benefits and HR operations experience, source-preserving integration, validation, and exception handling.\n\n## Core Skills\n\n**Workflow automation:** Power Query (M), Alteryx Designer, analytic apps and macros, Power Automate, n8n, Excel/VBA.\n\n**Analytics and integration:** Power BI/DAX, Python, SQL/PostgreSQL, REST APIs, JSON, Smartsheet, SharePoint, Alteryx Intelligence Suite.\n\n**AI tools and interfaces:** Microsoft Copilot, ChatGPT, Codex, Claude/Claude Code, Abacus AI, OpenClaw, Hermes, Traycer, Pi, Nodeterm; CLI, Model Context Protocol (MCP).\n\n**Certification:** Alteryx Designer Core Certification.\n\n## Professional Experience\n\n**Lockton | Dallas and Plano, TX | November 2018 - April 2026**\n\n**Senior Data Analyst** | May 2025 - April 2026\n\nData Research Analyst | August 2023 - May 2025\n\nHRO Data Analyst | May 2022 - August 2023\n\nBenefits Analyst | March 2020 - May 2022\n\nBenefits Specialist | November 2018 - March 2020\n\n### Benefits and HR Operations\n\n- **Benefits Specialist:** Supported employee enrollment, life events, and claims inquiries across client plans, carriers, and HR platforms through the Benefits Assistance Center.\n- **Benefits Analyst:** Managed client-to-vendor feeds and built Power BI tools for employee inquiries; supported MoneyGram HR on site with platform setup, reporting templates, open enrollment, mail merge, and self-billing.\n- **HRO Data Analyst:** Supported multiple fully insured and self-insured clients; automated recurring HR work with advanced Power Query M and trained client teams on billing, HRIS, and carrier processes.\n\n### [Power Query and Alteryx Billing Automation](https://miguel.systems/work/billing-automation)\n\n- Automated self-bills and list-bill reconciliation across clients, vendors, and HR platforms; cut processing time by **approximately 96%** in a measured monthly Power Query workflow.\n- Built error handling and reviewable exception reports beyond balanced totals; investigated hundreds of missing employer-paid coverage flags, documented valid acquired-group eligibility exceptions, and identified duplicate HR profiles for source-owner correction.\n- Presented HRO Power Query automation at State of the Companies (SOC) and trained analysts, leading to participation in the Alteryx rollout.\n- At the following year's SOC, learned Alteryx Designer and built a reusable HRO analytic app in a two-week cohort challenge; presented its client/vendor-agnostic logic and simple interface to executives.\n- Project-managed a small analyst team a few months later; supported manager opt-in adoption of selected Alteryx workflows that processed larger datasets faster than Power Query.\n- Later used Markdown context to guide Microsoft Copilot in converting established Power Query M logic into preconfigured Alteryx nodes through XML.\n\n## Lockton Experience Continued\n\n### Python Automation with [Employee Sentiment Analysis](https://miguel.systems/work/employee-sentiment-intelligence) and [VoiceLab](https://miguel.systems/work/voice-lab)\n\n- Turned an internal ESA dashboard into a **revenue-generating in-house product**, with cross-division demand from producers and sales teams to analyze entire books of business.\n- Built a Python/JSON ESA Toolkit for nontechnical analysts, with project setup, light data collection, and Smartsheet and analytics vendor API connections.\n- Adapted VoiceLab after a vendor change to capture browser HTML and GraphQL data and generate editable client-facing PowerPoint decks with AI recommendations aligned to intake objectives and Lockton and client context; supported plain-English project focus, required template-mapping validation, and analyst review.\n- Secured **IT rollout approval**: reviewed the Windows package with the head of IT, explained intended Copilot API use, and supplied JSON diagnostics; installed VoiceLab and trained the receiving manager with runbooks and client-facing reporting standards.\n\n### Data Integration and Reporting\n\n- Connected Alteryx and Smartsheet APIs for project tracking, ROI analysis, and ESA datasets; built [Power BI reporting](https://miguel.systems/work/employee-sentiment-intelligence) with DAX and Power Query.\n- Improved [ESA data reliability](https://miguel.systems/work/esa-data-reliability) in Python: corrected ratings mappings, matched destination columns by title, retained row IDs, skipped missing values, and required review and confirmation before write-back.\n- Built [Power BI billing reporting](https://miguel.systems/work/billing-automation) from dynamic client folders while preserving originals; implemented Power Automate and SharePoint workflows with governance guidance and documentation.\n\n## Current Independent Work\n\n### [MergeFlow](https://miguel.systems/work/mergeflow) | Outlook Automation\n\n- Implemented MergeFlow for **first client U1Mechanical** with Microsoft Entra configuration and Outlook mailbox deployment. Separately verified conditional sends, attachments, saved drafts, duplicate prevention, and uncertain-outcome handling in an Outlook pilot; added OpenAI assistance.\n\n### [AgentOps](https://miguel.systems/work/cross-machine-agentops) | Agent and Hardware Orchestration\n\n- Developing agent and hardware orchestration across desktop, laptop, and NAS, with shared queues, retained context, worker heartbeats, and service-health visibility.\n- Use prompt and context engineering, reusable skills, instructions, configuration, and handoffs to improve first-pass execution across desktop, CLI, and TUI workflows; sanitize sensitive client data with attention to PHI and HIPAA requirements.\n\n### [Local Business Consulting](https://miguel.systems/websites) | Websites, Automation and AI\n\n- Deployed local-business websites and non-AI automations; provide AI consulting and develop client-facing and internal AI integrations.\n\n## Earlier Experience\n\n**United Way of Metropolitan Dallas | Auditor | June 2017 - March 2018**\n\nSupported donation reconciliation, secure transfers, and Salesforce transition and training.\n\n**Hilton Worldwide | National Sales Data Analyst | February 2015 - May 2017**\n\nTransitioned Excel dashboards to Power BI; later wrote a regional playbook for converting them to Tableau.\n\n**CSC ServiceWorks | Workforce Analyst and A/R Billing | March - November 2014**\n\nBuilt reusable VBA, HTML, and Excel tools; reduced Excel/PeopleSoft billing processing time by **approximately 79%**.\n\n## Education and Languages\n\nAssociate of Science | Dallas College, 2011 - 2015 | English and Spanish: bilingual\n","updated":"Updated Oct 14, 2026"}],"text.app-privacy-page.1":"PRIVACY","text.app-privacy-page.2":"Your visit, your choices.","text.app-privacy-page.3":"This portfolio presents the work of ","text.app-privacy-page.4":". Contact ","text.app-privacy-page.5":" with privacy questions.","text.app-privacy-page.6":"Preferences stored on your device","text.app-privacy-page.7":"The website remembers appearance, accessibility choices, analytics consent, and your explorer arrangement in browser storage. These preferences help the interface work and do not submit contact enquiries.","text.app-privacy-page.8":"Optional analytics","text.app-privacy-page.9":"When enabled and accepted, Google Analytics measures page views, project and archive openings, résumé downloads, and contact-link clicks. URLs are sent without query strings or fragments. Contact message contents, private previews, and editor activity are excluded. Advertising features are disabled.","text.app-privacy-page.10":"Google Analytics code does not load before you accept. Do Not Track and Global Privacy Control are respected. Your choice lasts 180 days on this browser; you can change it at any time.","text.app-privacy-page.11":"Hosting and external destinations","text.app-privacy-page.12":"Hosting providers process requests and operational logs to serve and protect the website. ChatGPT Sites also provides the owner with basic visitor and page-view counts. These hosting measurements are separate from the optional Google Analytics choice. Following a link to GitHub, LinkedIn, Google, or another website takes you to that provider’s privacy practices.","text.app-privacy-page.13":"Website demonstrations","text.app-privacy-page.14":"Archived demonstrations use fictional, resettable browser data. Their sample forms and dashboard actions do not send enquiries, make payments, or change original client records.","text.app-privacy-page.15":"Private administration","text.app-privacy-page.16":"The owner dashboard uses GitHub to verify the authorized owner and a secure session cookie. It records content revisions and administrative actions for recovery and accountability. Those records are not included in public analytics.","text.website-empty-title":"Website collection","text.website-empty-body":"No websites are currently published in this collection.","experienceSystems":[{"slug":"local-ai-orchestration","name":"Local AI Orchestration","verb":"Coordinate","status":"Ongoing","description":"Bounded capabilities, typed handoffs and a record of what happened. Qualified capabilities stay distinct from planned work.","steps":["Task & plan","Route","Execute & verify","Retained result"],"notes":["Begin with a task and explicit plan.","Choose a compatible runtime for the typed request.","Focused execution and review retain their own receipts.","Keep the result with a record of the work."],"image":"/brand/projects/local-ai-orchestration.png"},{"slug":"blackbox","name":"_Blackbox","verb":"Remember","status":"In development","description":"Recorded work becomes a searchable history. Follow a result back to the evidence that supports it.","steps":["Recorded work","Index & search","Review evidence","Source moment"],"notes":["Capture, transcripts, notes and OCR markers share a timeline.","Search brings recorded work back into view.","Review the timestamp attached to an answer.","Return to the moment in the original recording."],"image":"/brand/projects/blackbox.png"},{"slug":"tradelab","name":"TradeLab","verb":"Investigate","status":"Research prototype","description":"A research workbench for hypotheses, evidence and critique. The public example uses fictional holdings and has no trading authority.","steps":["Research claim","Gather sources","Challenge","Review evidence"],"notes":["Make the research hypothesis explicit.","Retain sources alongside the research.","Keep conflicting evidence visible during critique.","Review the evidence before drawing a conclusion."],"image":"/brand/projects/tradelab.png"},{"slug":"faultline","name":"FAULTLINE","verb":"Verify","status":"Completed v1","description":"An incident becomes a bounded investigation with original records, repair attempts and an evaluation of the result.","steps":["Incident & records","Fork","Repair","Evaluate"],"notes":["Start from the incident and original records.","Work in an isolated fork.","Apply a bounded repair.","Return verified records or a visible failure."],"image":null}],"experienceStudies":[{"id":"room-alive","title":"Room Alive","type":"Interaction","caption":"Small discoveries. A world of play.","image":"/media/story/room-alive.png","note":"Owned project artwork · interactive portfolio vignette","canvasCategory":"Interactive prototype","canvasCaption":"A small world of discovery.","canvasNote":"An interactive room built to explore play, detail, and atmosphere through 3D art and interaction."},{"id":"serens-fades","title":"Seren’s Fades","type":"Identity","caption":"A bold identity, with room to move.","image":"/media/websites/serens-fades.webp","note":"Portfolio format study · brand exploration"},{"id":"video-tagger","title":"Video Tagger","type":"Product","caption":"A moment is only useful if you can find it.","image":"/media/gallery-video-tagger.svg","note":"Media search study · fictional tags and timecodes"},{"id":"website-pipeline","title":"Website Pipeline","type":"Product","caption":"From source to something you can see.","image":"/media/gallery-website-pipeline.svg","note":"Interactive reconstruction · sample edits only"},{"id":"u1-mechanical","title":"U1 Mechanical","type":"Product","caption":"One job. A clearer customer journey.","image":"/media/websites/u1-mechanical.png","note":"Hosted owner-review preview"},{"id":"covenant-compass","title":"Covenant Compass","type":"Product","caption":"Make space for the next conversation.","image":"/media/gallery-covenant-compass.svg","note":"Pastor-guided, non-clinical prototype"},{"id":"identity","title":"MiMagery & identity","type":"Identity","caption":"A mark that works beyond one canvas.","image":null,"note":"New portfolio typography study"},{"id":"memory-relief","title":"Memory Relief","type":"Product","caption":"Make room. Keep the work.","image":null,"note":"Fictional care plan · no cleanup runs here"},{"id":"mermaid-local","title":"Mermaid Local","type":"Product","caption":"A small edit. A clearer diagram.","image":null,"note":"Interactive diagram reconstruction"},{"id":"local-systems","title":"Local systems","type":"Product","caption":"A request, a runtime, a retained result.","image":"/brand/projects/local-ai-orchestration.png","note":"Infrastructure study · abstract roles"},{"id":"alteryx","title":"Alteryx in motion","type":"Media","caption":"A workflow, made visible.","image":"/media/alteryx-automation-poster.webp","note":"Recorded workflow demonstration"}],"experienceSolutions":[{"id":"data","label":"Make the data useful","problem":"The numbers are there. The answer takes too long to find.","approach":"Bring fragmented records into a shared, readable view.","steps":["Sources","Patterns","Reports"],"proof":"Employee Sentiment Intelligence","slug":"employee-sentiment-intelligence","image":"/brand/projects/employee-sentiment-intelligence.png","summary":"Explore how this approach appears in the selected project.","problemTitle":"Scattered feedback","approachTitle":"Connect → analyze → explain"},{"id":"time","label":"Give people time back","problem":"Manual fixes and repeated handoffs consume the day.","approach":"Build a reviewable workflow around the recurring task.","steps":["Inputs","Rules","Exceptions"],"proof":"Billing automation","slug":"billing-automation","image":"/brand/projects/billing-automation.png","summary":"Explore how this approach appears in the selected project.","problemTitle":"Repeated manual work","approachTitle":"Prepare → automate → review"},{"id":"next","label":"Make the next step obvious","problem":"A visitor is interested, but the next step feels unclear.","approach":"Connect the information, decision and action.","steps":["Questions","Options","Action"],"proof":"U1 Mechanical","slug":"u1-mechanical","image":"/media/websites/u1-mechanical.png","summary":"Explore how this approach appears in the selected project.","problemTitle":"An unclear next step","approachTitle":"Discover → choose → act"},{"id":"voice","label":"Give an idea a visual voice","problem":"The presentation does not yet do the idea justice.","approach":"Shape an identity that carries across real situations.","steps":["Direction","Type","Expression"],"proof":"Creative gallery","slug":null,"image":"/media/websites/serens-fades.webp","summary":"Explore how this approach appears in the selected project.","problemTitle":"An idea without a voice","approachTitle":"Explore → shape → express"}],"caseOpeningResults":{"billing-automation":"A complex MetLife self-bill, benefit-specific calculations, and exceptions with a clear correction path.","employee-sentiment-intelligence":"Research, Python tooling and Power BI comparisons became a repeatable analytical offering and executive report.","blackbox":"Recorded work becomes searchable evidence; timestamped answers return to the source moment. In development.","tdc-design-review":"Web and media design, plus a separate review tool that keeps feedback attached to its page context.","tradelab":"Research, critique and source evidence stay connected in a reviewable workflow. Shadow-only research prototype.","local-ai-orchestration":"A task connects to a bounded capability and a retained result. The case separates qualified and planned capabilities.","dinos-subs":"A searchable menu and clearer visit information in an owner-review redesign."},"systemPresentation":{"blackboxDescription":"A question connects the moment behind the answer.","blackboxEyebrow":"DESKTOP PRODUCT","blackboxNotes":["Conversations, meetings and real work, captured in context.","Transcribe, structure and make it searchable across time.","See the actual words, not a summary."],"blackboxSourceCaption":"From product feedback call · 02:18","otherSourceCaption":"Selected project example"}},"components":{}},"revision":16,"preview":false}