{
  "schemaVersion": 1,
  "reviewedAt": "2026-11-04",
  "methodology": "Editorial learning suggestions, practice projects, and priority mappings. Linked resources support further learning, not mandatory role requirements or employment guarantees.",
  "skills": [
    {
      "slug": "ai-literacy",
      "name": "Understand AI’s capabilities & limits",
      "category": "Foundations",
      "level": "Foundation",
      "description": "Recognize where generative AI helps and where human judgment is needed.",
      "why": "Choosing the right kind of task is more useful than trying every new tool.",
      "objectives": [
        "Distinguish generation from prediction",
        "Recognize uncertainty and missing context",
        "Identify tasks needing human ownership"
      ],
      "practice": "Choose five recurring work tasks. Explain which could use AI, which should stay human-led, and why.",
      "proof": "A task map with clear boundaries and a reason for each choice.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "manage-projects",
        "find-team-knowledge"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Introduction to generative AI and agents",
        "url": "https://learn.microsoft.com/en-us/training/modules/fundamentals-generative-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "prompting-and-context",
      "name": "Give AI clear briefs & context",
      "category": "Foundations",
      "level": "Foundation",
      "description": "Turn a vague request into a clear goal, useful context, constraints, and a reviewable output.",
      "why": "Better instructions make it easier to judge whether the result meets your actual need.",
      "objectives": [
        "State the audience and outcome",
        "Provide relevant examples and context",
        "Revise against explicit acceptance criteria"
      ],
      "practice": "Write three versions of a prompt for the same work task. Compare the outputs against a checklist you define first.",
      "proof": "A reusable brief and an annotated comparison of the three outputs.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "write-and-edit",
        "create-visuals"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Work smarter with AI",
        "url": "https://learn.microsoft.com/en-us/training/paths/work-smarter-with-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "verify-ai-output",
      "name": "Verify AI outputs",
      "category": "Foundations",
      "level": "Foundation",
      "description": "Check facts, numbers, citations, and omissions before relying on an AI response.",
      "why": "A polished answer can still be incomplete or wrong. Your review is part of the work.",
      "objectives": [
        "Trace claims to original evidence",
        "Recalculate important numbers",
        "Record uncertainty and corrections"
      ],
      "practice": "Audit an AI-generated summary against the source document. Flag unsupported claims and write a corrected version.",
      "proof": "A claim-by-claim review with source locations and corrections.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "research-evidence",
        "write-and-edit",
        "analyze-data"
      ],
      "resource": {
        "provider": "NIST",
        "label": "AI Risk Management Framework",
        "url": "https://www.nist.gov/itl/ai-risk-management-framework"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "safe-data-handling",
      "name": "Handle data safely with AI",
      "category": "Foundations",
      "level": "Foundation",
      "description": "Decide what information an AI tool may access and who may see its outputs.",
      "why": "Useful assistance should not require exposing confidential work or personal information unnecessarily.",
      "objectives": [
        "Classify data before sharing",
        "Review access and retention settings",
        "Use synthetic examples for experiments"
      ],
      "practice": "Create a data-sharing checklist for one workflow and test it using fictional records.",
      "proof": "A documented permission boundary and a redacted example input.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "find-team-knowledge",
        "automate-workflows"
      ],
      "resource": {
        "provider": "OWASP",
        "label": "GenAI application security resources",
        "url": "https://owasp.org/projects/top-10-for-large-language-model-applications"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-data-analysis",
      "name": "Analyze data with AI assistance",
      "category": "Data & decisions",
      "level": "Applied",
      "description": "Use AI to help explore data while checking definitions, calculations, and missing values.",
      "why": "You need to distinguish a real business signal from a convincing chart or explanation.",
      "objectives": [
        "Check data quality and units",
        "Verify generated formulas or queries",
        "Explain uncertainty to decision-makers"
      ],
      "practice": "Analyze a small public dataset, reproduce one AI-assisted calculation manually, and explain one limitation.",
      "proof": "A reproducible analysis with verified calculations and source data.",
      "prerequisites": "Basic spreadsheet skills",
      "tasks": [
        "analyze-data",
        "finance-accounting"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Get started with Microsoft data analytics",
        "url": "https://learn.microsoft.com/en-us/training/paths/data-analytics-microsoft/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "workflow-automation",
      "name": "Build reliable AI workflows",
      "category": "Automation",
      "level": "Applied",
      "description": "Connect an AI step to a repeatable process with checks, approvals, and a recovery path.",
      "why": "The useful skill is designing a process that works when the model or integration fails.",
      "objectives": [
        "Map triggers and inputs",
        "Validate outputs before actions",
        "Test failures and human handoffs"
      ],
      "practice": "Build a sandbox workflow that drafts an update from sample records, pauses for review, and logs failed inputs.",
      "proof": "A working demo with a failure case and an approval step.",
      "prerequisites": "Comfort with a visual workflow editor",
      "tasks": [
        "automate-workflows",
        "manage-projects"
      ],
      "resource": {
        "provider": "n8n Academy",
        "label": "Workflows, integrations, and AI testing",
        "url": "https://learn.n8n.io/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-assisted-coding",
      "name": "Develop & review code with AI",
      "category": "Software engineering",
      "level": "Applied",
      "description": "Use a coding assistant to implement changes, then inspect and test the result.",
      "why": "Engineering judgment still determines whether generated code solves the right problem.",
      "objectives": [
        "Give repository-specific context",
        "Inspect diffs and dependencies",
        "Test behavior beyond the generated happy path"
      ],
      "practice": "Implement a small feature in a practice repository. Review the diff and add a regression test that fails before the fix.",
      "proof": "A reviewed change with meaningful tests and an explanation of tradeoffs.",
      "prerequisites": "Basic programming and version control",
      "tasks": [
        "write-and-test-code"
      ],
      "resource": {
        "provider": "GitHub Docs",
        "label": "Review output from Copilot",
        "url": "https://docs.github.com/en/copilot/how-tos/copilot-on-github/use-copilot-agents/review-copilot-output"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-evaluation",
      "name": "Evaluate AI systems",
      "category": "Software engineering",
      "level": "Advanced",
      "description": "Define representative tests and measure the errors that matter for a specific workflow.",
      "why": "A good demo does not establish reliability on unfamiliar inputs.",
      "objectives": [
        "Build a representative test set",
        "Choose metrics for the cost of errors",
        "Compare versions against a baseline"
      ],
      "practice": "Create a small labeled classification dataset. Compare two approaches and explain false positives and false negatives.",
      "proof": "An evaluation report showing failure examples and a justified acceptance threshold.",
      "prerequisites": "Basic statistics and test design",
      "tasks": [
        "write-and-test-code",
        "cybersecurity",
        "analyze-data"
      ],
      "resource": {
        "provider": "Google for Developers",
        "label": "Accuracy, recall, and precision",
        "url": "https://developers.google.com/machine-learning/crash-course/classification/accuracy-precision-recall"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-security",
      "name": "Secure AI applications & agents",
      "category": "Security",
      "level": "Advanced",
      "description": "Review how untrusted input, tools, and permissions can affect an AI application.",
      "why": "An assistant with access to business systems needs carefully bounded authority.",
      "objectives": [
        "Identify prompt-injection boundaries",
        "Restrict tool permissions",
        "Test sensitive-data exposure in a sandbox"
      ],
      "practice": "Threat-model a fictional internal assistant. Test malicious document instructions with dummy data and record defenses.",
      "proof": "A threat model, safe test cases, and a least-privilege tool policy.",
      "prerequisites": "Application security fundamentals",
      "tasks": [
        "cybersecurity",
        "write-and-test-code"
      ],
      "resource": {
        "provider": "OWASP",
        "label": "GenAI application security resources",
        "url": "https://owasp.org/projects/top-10-for-large-language-model-applications"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "knowledge-retrieval",
      "name": "Ground AI in trusted knowledge",
      "category": "Knowledge systems",
      "level": "Applied",
      "description": "Organize approved sources so an assistant can retrieve relevant information and cite it.",
      "why": "Relevant context and access controls matter as much as the model you choose.",
      "objectives": [
        "Curate current source documents",
        "Check retrieval relevance and citations",
        "Respect document-level permissions"
      ],
      "practice": "Build a small knowledge assistant over public documents. Test answerable, ambiguous, and unanswerable questions.",
      "proof": "A source inventory and a tested set of grounded answers and refusals.",
      "prerequisites": "Document organization; coding optional for a no-code prototype",
      "tasks": [
        "find-team-knowledge",
        "research-evidence"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Retrieval-augmented generation in AI Search",
        "url": "https://learn.microsoft.com/en-us/azure/search/retrieval-augmented-generation-overview"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-use-cases",
      "name": "Choose valuable AI use cases",
      "category": "Business leadership",
      "level": "Applied",
      "description": "Select a focused business problem and define what a successful AI pilot would change.",
      "why": "A clear outcome helps distinguish an improvement from a novelty.",
      "objectives": [
        "Map process costs and constraints",
        "Set a baseline and success measure",
        "Compare build, buy, and non-AI options"
      ],
      "practice": "Write a one-page pilot proposal for one workflow with a baseline, owner, cost estimate, and stop condition.",
      "proof": "A decision-ready pilot brief with measurable success criteria.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "manage-projects",
        "analyze-data"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Transform your business with AI",
        "url": "https://learn.microsoft.com/en-us/training/paths/transform-your-business-with-microsoft-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-change-management",
      "name": "Lead AI adoption & team learning",
      "category": "Business leadership",
      "level": "Applied",
      "description": "Help a team redesign work, learn new habits, and review the effects of AI adoption.",
      "why": "Adoption depends on useful workflows and feedback, not just access to software.",
      "objectives": [
        "Map changing responsibilities",
        "Plan hands-on practice and feedback",
        "Measure quality alongside time saved"
      ],
      "practice": "Design a small team pilot with a training exercise, feedback channel, and review meeting.",
      "proof": "A rollout plan that names owners, support needs, and quality checks.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "manage-projects",
        "recruit-talent"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Transform your business with AI",
        "url": "https://learn.microsoft.com/en-us/training/paths/transform-your-business-with-microsoft-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-governance",
      "name": "Set AI ownership & oversight",
      "category": "Business leadership",
      "level": "Advanced",
      "description": "Define who approves AI use, reviews risks, and responds when a system causes problems.",
      "why": "Teams need clear accountability as AI becomes part of normal operations.",
      "objectives": [
        "Assign decision owners",
        "Document intended use and limits",
        "Set review and incident procedures"
      ],
      "practice": "Draft a lightweight use-case register for three fictional AI projects, including owners and review triggers.",
      "proof": "An ownership matrix and an escalation procedure the team can follow.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "manage-projects",
        "cybersecurity"
      ],
      "resource": {
        "provider": "NIST",
        "label": "AI Risk Management Framework",
        "url": "https://www.nist.gov/itl/ai-risk-management-framework"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "sales-research",
      "name": "Research accounts & personalize outreach",
      "category": "Sales & customer work",
      "level": "Applied",
      "description": "Use public evidence to prepare account briefs and useful, accurate sales messages.",
      "why": "Personalization works best when it reflects a real customer need rather than invented familiarity.",
      "objectives": [
        "Separate evidence from assumptions",
        "Draft relevant questions and messages",
        "Keep CRM notes traceable"
      ],
      "practice": "Prepare a brief for a fictional prospect using public company information, then write an outreach draft with checked claims.",
      "proof": "A source-linked brief and a reviewed message matched to a stated need.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "sales-outreach",
        "write-and-edit"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Work smarter with AI",
        "url": "https://learn.microsoft.com/en-us/training/paths/work-smarter-with-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "service-agent-design",
      "name": "Design service agents & handoffs",
      "category": "Sales & customer work",
      "level": "Applied",
      "description": "Create support flows that use approved knowledge and hand over when they cannot help.",
      "why": "Service quality includes knowing when an automated answer is insufficient.",
      "objectives": [
        "Define the agent’s scope",
        "Test knowledge-based answers",
        "Design escalation for unresolved requests"
      ],
      "practice": "Create a sample FAQ assistant and test ordinary questions, missing information, and a request requiring a human.",
      "proof": "A tested conversation set with a working human handoff.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "customer-support",
        "automate-workflows"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Test an agent’s knowledge sources",
        "url": "https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-test"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-content-production",
      "name": "Create & review AI content",
      "category": "Creative work",
      "level": "Applied",
      "description": "Use AI for drafts and visual concepts while retaining editorial and brand control.",
      "why": "Output volume is less useful than content that is accurate, distinctive, and appropriate for its audience.",
      "objectives": [
        "Write a creative brief",
        "Review claims and brand fit",
        "Check provenance and usage terms"
      ],
      "practice": "Produce three campaign concepts for a fictional product. Select one and document factual, accessibility, and rights checks.",
      "proof": "A finished asset with the brief, revisions, and review notes.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "create-visuals",
        "write-and-edit",
        "create-video-audio"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Work smarter with AI",
        "url": "https://learn.microsoft.com/en-us/training/paths/work-smarter-with-ai/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "forecast-validation",
      "name": "Validate forecasts & planning scenarios",
      "category": "Operations",
      "level": "Applied",
      "description": "Review demand forecasts and distinguish model output from planning assumptions.",
      "why": "A forecast is useful only when you understand its errors and operational consequences.",
      "objectives": [
        "Compare with a simple baseline",
        "Check seasonality and unusual events",
        "Explain scenario assumptions"
      ],
      "practice": "Use historical sample demand data to compare a forecast with a naive baseline and describe the biggest planning risk.",
      "proof": "A backtest and a scenario note explaining inventory or capacity implications.",
      "prerequisites": "Basic spreadsheets and forecasting concepts",
      "tasks": [
        "plan-supply-chain",
        "analyze-data"
      ],
      "resource": {
        "provider": "Microsoft Learn",
        "label": "Analyze demand plans with Copilot",
        "url": "https://learn.microsoft.com/en-us/dynamics365/supply-chain/demand-planning/demand-planning-copilot"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "industrial-ai-validation",
      "name": "Evaluate industrial AI pilots",
      "category": "Operations",
      "level": "Advanced",
      "description": "Assess inspection or maintenance models against the conditions in which they will operate.",
      "why": "Performance on familiar examples may not hold across equipment, shifts, or sites.",
      "objectives": [
        "Check representative operating data",
        "Identify costly missed detections",
        "Define supervised pilot boundaries"
      ],
      "practice": "Design a defect-detection pilot using sample images. Separate test conditions and document how errors would be reviewed.",
      "proof": "A pilot protocol with error criteria and a human review plan.",
      "prerequisites": "Domain process knowledge and basic statistics",
      "tasks": [
        "analyze-data",
        "design-engineering"
      ],
      "resource": {
        "provider": "Google for Developers",
        "label": "Understanding overfitting",
        "url": "https://developers.google.com/machine-learning/crash-course/overfitting/overfitting"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "generative-design-review",
      "name": "Review generative engineering designs",
      "category": "Engineering",
      "level": "Advanced",
      "description": "Translate engineering requirements into constraints and review generated alternatives.",
      "why": "Generated geometry must still satisfy real design and manufacturing requirements.",
      "objectives": [
        "Specify loads and constraints",
        "Compare design alternatives",
        "Document validation before production"
      ],
      "practice": "Set up a non-production design study and compare two outcomes against documented requirements.",
      "proof": "A design review that records constraints, tradeoffs, and remaining validation.",
      "prerequisites": "Engineering fundamentals and CAD experience",
      "tasks": [
        "design-engineering"
      ],
      "resource": {
        "provider": "Autodesk",
        "label": "Generative design criteria",
        "url": "https://help.autodesk.com/cloudhelp/ENU/Fusion-GenerativeDesign/files/GD-DESIGN-CRITERIA.htm"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "research-literacy",
      "name": "Research with sources & uncertainty",
      "category": "Research",
      "level": "Applied",
      "description": "Use AI to organize evidence while inspecting the original material and its limitations.",
      "why": "A summary should help you examine evidence rather than replace that examination.",
      "objectives": [
        "Track source provenance",
        "Separate findings from interpretation",
        "Identify conflicting or missing evidence"
      ],
      "practice": "Build an evidence table from three public documents. Compare an AI summary with the original claims.",
      "proof": "A source-linked synthesis with limitations and unresolved questions.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "research-evidence",
        "find-team-knowledge"
      ],
      "resource": {
        "provider": "Google",
        "label": "Gemini Notebook plans and source limits",
        "url": "https://support.google.com/gemininotebook/answer/16213268"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "ai-learning-design",
      "name": "Design learning with AI",
      "category": "Education",
      "level": "Applied",
      "description": "Use AI to prepare learning activities while preserving teacher judgment and learner agency.",
      "why": "A useful lesson supports understanding, not merely faster content generation.",
      "objectives": [
        "Align activities to learning goals",
        "Review age and context suitability",
        "Design assessment that reveals understanding"
      ],
      "practice": "Adapt one lesson with an AI-assisted activity and a follow-up task that requires the learner’s own explanation.",
      "proof": "A lesson plan with learning goals, review notes, and an assessment rubric.",
      "prerequisites": "No technical prerequisites",
      "tasks": [
        "lesson-planning",
        "create-visuals"
      ],
      "resource": {
        "provider": "UNESCO",
        "label": "AI competency framework for teachers",
        "url": "https://www.unesco.org/en/articles/ai-competency-framework-teachers"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "document-audit",
      "name": "Review AI-extracted documents",
      "category": "Professional practice",
      "level": "Applied",
      "description": "Check extracted fields and summaries against the original document and retain a review trail.",
      "why": "Small omissions in structured outputs can change downstream decisions.",
      "objectives": [
        "Define an extraction schema",
        "Check every critical field",
        "Record source locations and reviewer decisions"
      ],
      "practice": "Extract dates and obligations from a fictional agreement or administrative form and verify them against the original.",
      "proof": "A reviewed extraction table with source references and unresolved items.",
      "prerequisites": "Familiarity with the relevant document type",
      "tasks": [
        "legal-research",
        "clinical-documentation",
        "finance-accounting"
      ],
      "resource": {
        "provider": "NIST",
        "label": "AI Risk Management Framework",
        "url": "https://www.nist.gov/itl/ai-risk-management-framework"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "fair-ai-hiring",
      "name": "Assess fairness in AI-assisted hiring",
      "category": "People operations",
      "level": "Applied",
      "description": "Examine whether recruitment workflows rely on appropriate evidence and meaningful human review.",
      "why": "Automated recommendations need scrutiny before they influence opportunities for people.",
      "objectives": [
        "Recognize biased data and proxies",
        "Compare outcomes across relevant groups",
        "Document human accountability"
      ],
      "practice": "Audit a fictional screening workflow using synthetic records. Identify questionable signals and redesign the review step.",
      "proof": "An audit of the workflow with fairness questions and an accountable review process.",
      "prerequisites": "Recruitment process knowledge; this is not legal compliance training",
      "tasks": [
        "recruit-talent"
      ],
      "resource": {
        "provider": "Google for Developers",
        "label": "Machine learning fairness",
        "url": "https://developers.google.com/machine-learning/crash-course/fairness/"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "geospatial-ai-literacy",
      "name": "Interpret geospatial data for AI",
      "category": "Spatial & environmental work",
      "level": "Applied",
      "description": "Understand imagery, location, and time when preparing or reviewing spatial analysis.",
      "why": "Field conditions and data resolution determine what a map can reasonably support.",
      "objectives": [
        "Distinguish raster and vector data",
        "Filter imagery by time and location",
        "Record resolution and coverage limits"
      ],
      "practice": "Compare public imagery for one area over two dates and explain what cannot be inferred reliably.",
      "proof": "An annotated map with provenance, time coverage, and limitations.",
      "prerequisites": "Basic mapping concepts; JavaScript useful for Earth Engine",
      "tasks": [
        "analyze-data",
        "research-evidence"
      ],
      "resource": {
        "provider": "Google for Developers",
        "label": "Get started with Earth Engine",
        "url": "https://developers.google.com/earth-engine/guides/getstarted"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "sql-with-ai",
      "name": "Write & review SQL with AI",
      "category": "Databases & data",
      "level": "Applied",
      "description": "Draft SQL with an assistant, then check it against the real schema and known results.",
      "why": "Generated SQL can run without errors and still return the wrong answer.",
      "objectives": [
        "Give the assistant the schema and business definitions",
        "Explain each join and filter before trusting a query",
        "Compare results with a figure you already know"
      ],
      "practice": "Ask an assistant for a monthly revenue query on a sample database. Then check row counts, null handling and duplicate joins against a hand-calculated total.",
      "proof": "A reviewed query with a note of what was checked and one error that was corrected.",
      "prerequisites": "Basic SELECT, JOIN and GROUP BY",
      "tasks": [
        "database-sql"
      ],
      "resource": {
        "provider": "PostgreSQL Documentation",
        "label": "Queries",
        "url": "https://www.postgresql.org/docs/current/queries.html"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "query-tuning",
      "name": "Tune slow queries with AI",
      "category": "Databases & data",
      "level": "Advanced",
      "description": "Use AI to interpret execution plans, then prove each suggested change with measurements.",
      "why": "A suggested index can speed up one query while slowing writes and other queries.",
      "objectives": [
        "Read an execution plan and find the costly step",
        "Test a rewrite or index on realistic data volumes",
        "Record the before and after timings and the write cost"
      ],
      "practice": "Capture EXPLAIN ANALYZE output for a slow query on a test database, ask an assistant for three options, and measure each one.",
      "proof": "A before-and-after plan comparison with the option you chose and why.",
      "prerequisites": "Comfortable writing SQL; access to a test database",
      "tasks": [
        "database-tuning"
      ],
      "resource": {
        "provider": "PostgreSQL Documentation",
        "label": "Using EXPLAIN",
        "url": "https://www.postgresql.org/docs/current/using-explain.html"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "schema-design",
      "name": "Design schemas & review migrations",
      "category": "Databases & data",
      "level": "Applied",
      "description": "Use AI to draft data models and migrations, then review constraints, locks and rollback.",
      "why": "Schema mistakes are expensive to undo once production data depends on them.",
      "objectives": [
        "Model entities, keys and constraints from real requirements",
        "Check a migration for locking and data loss risks",
        "Write and test a rollback or recovery path"
      ],
      "practice": "Draft a schema for a small ordering system with AI, then run its migration on a test copy with sample data and undo it.",
      "proof": "A reviewed schema and a migration tested in both directions.",
      "prerequisites": "Basic SQL and table design",
      "tasks": [
        "data-modelling",
        "database-administration"
      ],
      "resource": {
        "provider": "PostgreSQL Documentation",
        "label": "Data Definition",
        "url": "https://www.postgresql.org/docs/current/ddl.html"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "safe-database-access",
      "name": "Give AI safe database access",
      "category": "Databases & data",
      "level": "Advanced",
      "description": "Connect AI tools to databases with limited permissions, and treat generated SQL as untrusted.",
      "why": "An assistant or agent with broad credentials can expose or destroy data through one bad statement.",
      "objectives": [
        "Use read-only, least-privilege accounts for AI tools",
        "Keep production data away from tools that have not been approved",
        "Require parameterised queries and human approval for writes"
      ],
      "practice": "Create a read-only role on a test database, connect an assistant, and confirm that write attempts and restricted tables are refused.",
      "proof": "A tested access setup with the refused actions recorded.",
      "prerequisites": "Database users and permissions",
      "tasks": [
        "database-administration",
        "database-sql"
      ],
      "resource": {
        "provider": "OWASP",
        "label": "SQL Injection Prevention Cheat Sheet",
        "url": "https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "database-recovery",
      "name": "Plan & test database recovery",
      "category": "Databases & data",
      "level": "Applied",
      "description": "Use AI to draft backup and recovery runbooks, then prove them with a real restore.",
      "why": "A backup only counts once a restore has worked within the time the business can accept.",
      "objectives": [
        "Set recovery point and recovery time targets",
        "Draft a runbook and have it reviewed",
        "Restore to a separate environment and verify the data"
      ],
      "practice": "Back up a test database, delete a table, restore it by following an AI-drafted runbook, and correct whatever the runbook got wrong.",
      "proof": "A corrected runbook with the measured restore time.",
      "prerequisites": "Basic database administration",
      "tasks": [
        "database-administration"
      ],
      "resource": {
        "provider": "PostgreSQL Documentation",
        "label": "Backup and Restore",
        "url": "https://www.postgresql.org/docs/current/backup.html"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "data-pipeline-testing",
      "name": "Test data pipelines with AI",
      "category": "Databases & data",
      "level": "Applied",
      "description": "Use AI to draft transformations and data tests, then confirm they catch real faults.",
      "why": "A broken pipeline can keep running and quietly feed wrong numbers into every report.",
      "objectives": [
        "Define freshness, uniqueness and null checks for key tables",
        "Draft tests with AI and review what they miss",
        "Introduce a known fault and confirm a test fails"
      ],
      "practice": "Build one small transformation with tests on sample data, then add duplicate and missing rows and check that the tests catch them.",
      "proof": "A pipeline with tests, plus a record of the faults they caught.",
      "prerequisites": "SQL and basic pipeline concepts",
      "tasks": [
        "data-pipelines"
      ],
      "resource": {
        "provider": "dbt Developer Hub",
        "label": "Add data tests to your DAG",
        "url": "https://docs.getdbt.com/docs/build/data-tests"
      },
      "reviewedAt": "2026-11-04"
    },
    {
      "slug": "hdl-review-with-ai",
      "name": "Review AI-generated RTL & HDL",
      "category": "Hardware & electronics",
      "level": "Applied",
      "description": "Use AI to draft Verilog, SystemVerilog or VHDL, then prove it with lint, simulation and synthesis.",
      "why": "Generated HDL often compiles but infers latches, misses resets, or breaks timing, and silicon mistakes are expensive.",
      "objectives": [
        "Write a precise spec before prompting for RTL",
        "Lint, simulate and synthesise every generated block",
        "Spot latches, clock-domain crossings and reset bugs"
      ],
      "practice": "Solve ten HDL practice problems yourself, then ask an assistant for the same designs and compare results in simulation.",
      "proof": "A log of each generated module, the bugs simulation caught, and the fixes you made.",
      "prerequisites": "Digital logic basics and one HDL",
      "tasks": [
        "chip-design",
        "fpga-design"
      ],
      "resource": {
        "provider": "HDLBits",
        "label": "Verilog practice problems with an online simulator",
        "url": "https://hdlbits.01xz.net/wiki/Main_Page"
      },
      "reviewedAt": "2026-11-12"
    },
    {
      "slug": "ai-assisted-verification",
      "name": "Use AI in design verification",
      "category": "Hardware & electronics",
      "level": "Advanced",
      "description": "Apply AI to testbenches, assertions, coverage and debug without weakening sign-off.",
      "why": "AI can speed up UVM boilerplate and failure triage, but coverage closure and sign-off stay an engineer’s responsibility.",
      "objectives": [
        "Generate UVM components and assertions from a spec",
        "Use AI to triage regressions and waveforms",
        "Keep coverage and sign-off criteria independent of the AI"
      ],
      "practice": "Take a small open-source block, have AI draft its testbench and assertions, then measure the coverage and bugs it actually finds.",
      "proof": "A verification plan with coverage results and a note on what the AI missed.",
      "prerequisites": "SystemVerilog and basic UVM",
      "tasks": [
        "chip-design"
      ],
      "resource": {
        "provider": "Verification Academy (Siemens)",
        "label": "UVM: Universal Verification Methodology",
        "url": "https://verificationacademy.com/topics/uvm-universal-verification-methodology/"
      },
      "reviewedAt": "2026-11-12"
    },
    {
      "slug": "ai-pcb-review",
      "name": "Check AI-generated schematics & PCB layouts",
      "category": "Hardware & electronics",
      "level": "Applied",
      "description": "Use AI for component selection, schematics and routing, then verify against datasheets, ERC and DRC.",
      "why": "AI tools can pick the wrong footprint, misread a pinout, or route a board that fails EMC, and a respin costs weeks.",
      "objectives": [
        "Trace every AI-chosen part back to its datasheet",
        "Run ERC, DRC and power-budget checks",
        "Review high-speed, power and thermal choices by hand"
      ],
      "practice": "Design a small sensor board with AI help in KiCad, then check every pinout, footprint and rail against the datasheets.",
      "proof": "A design-review checklist showing each AI suggestion, how you checked it, and what you changed.",
      "prerequisites": "Basic circuit analysis",
      "tasks": [
        "pcb-electronics"
      ],
      "resource": {
        "provider": "KiCad",
        "label": "Getting started in KiCad",
        "url": "https://docs.kicad.org/9.0/en/getting_started_in_kicad/getting_started_in_kicad.html"
      },
      "reviewedAt": "2026-11-12"
    },
    {
      "slug": "ai-firmware-on-hardware",
      "name": "Test AI-written firmware on real hardware",
      "category": "Hardware & electronics",
      "level": "Applied",
      "description": "Use AI to write and debug embedded C/C++, then confirm it on target hardware and under real timing.",
      "why": "Firmware that passes on a laptop can fail on the device: wrong registers, race conditions, stack overflow, or power issues.",
      "objectives": [
        "Give the assistant the exact MCU, SDK and datasheet context",
        "Test on target with a debugger and logic analyser",
        "Check memory, timing and failure modes before shipping"
      ],
      "practice": "Have an assistant write a driver for a sensor on a dev board, then debug it on the board and record every correction.",
      "proof": "Working firmware with a test log from real hardware and a list of AI errors you caught.",
      "prerequisites": "C programming and one microcontroller",
      "tasks": [
        "embedded-firmware"
      ],
      "resource": {
        "provider": "Zephyr Project",
        "label": "Zephyr RTOS getting started guide",
        "url": "https://docs.zephyrproject.org/latest/develop/getting_started/index.html"
      },
      "reviewedAt": "2026-11-12"
    },
    {
      "slug": "edge-ai-deployment",
      "name": "Deploy and check ML on embedded devices",
      "category": "Hardware & electronics",
      "level": "Advanced",
      "description": "Train, compress and deploy small models to microcontrollers, and measure accuracy, latency and power on the device.",
      "why": "Edge models lose accuracy when quantised and behave differently on real sensor data than in training.",
      "objectives": [
        "Collect and label representative sensor data",
        "Quantise a model and measure on-device accuracy and latency",
        "Plan monitoring and updates in the field"
      ],
      "practice": "Build a keyword-spotting or vibration model, deploy it to a dev board, and compare on-device results with the training metrics.",
      "proof": "A short report with on-device accuracy, latency, memory use and known failure cases.",
      "prerequisites": "Basic Python and embedded development",
      "tasks": [
        "embedded-firmware",
        "statistics-modelling"
      ],
      "resource": {
        "provider": "Edge Impulse",
        "label": "Edge Impulse documentation",
        "url": "https://docs.edgeimpulse.com/"
      },
      "reviewedAt": "2026-11-12"
    },
    {
      "slug": "safe-instrument-automation",
      "name": "Let AI drive instruments & controls safely",
      "category": "Hardware & electronics",
      "level": "Applied",
      "description": "Script lab instruments, test benches and plant controls with AI help, with limits, read-only modes and human approval.",
      "why": "An AI that sets the wrong voltage or writes the wrong PLC tag can damage equipment or hurt someone.",
      "objectives": [
        "Automate instruments with SCPI and VISA",
        "Set hard limits, simulation and read-only modes first",
        "Keep a human approval step before any write to live equipment"
      ],
      "practice": "Write a measurement script with AI help against a simulated instrument, add limits and logging, then run it on real hardware under supervision.",
      "proof": "A tested script with its safety limits, a dry-run log and a sign-off record.",
      "prerequisites": "Basic Python and lab safety training",
      "tasks": [
        "test-instrumentation",
        "plc-automation"
      ],
      "resource": {
        "provider": "PyVISA",
        "label": "PyVISA documentation: control instruments from Python",
        "url": "https://pyvisa.readthedocs.io/en/latest/"
      },
      "reviewedAt": "2026-11-12"
    }
  ]
}
