11 Role-Based Learning Paths
Curated Tracks for Your Career Goals
11.1 Choose Your Path
TipPersonalized Learning Journeys
Select your role or goal to get a curated sequence of chapters, tools, and projects designed for your specific needs.
11.2 Select Your Role
11.3 Your Learning Path
Show code
learningPaths = ({
"IoT Engineer": {
title: "IoT Engineer Path",
subtitle: "Master hardware, protocols, and system design",
color: "#3498DB",
icon: "🛠",
duration: "8-12 weeks",
description: "Build complete IoT systems from sensors to cloud. Learn hardware selection, protocol implementation, and production deployment.",
milestones: [
{
name: "Foundation",
duration: "Week 1-2",
chapters: [
{title: "IoT Overview", path: "../applications-and-use-cases/overview-of-iot.qmd", time: "30 min"},
{title: "Data Representation", path: "../fundamentals/data-representation.qmd", time: "25 min"},
{title: "Binary & Hex Converter", path: "../fundamentals/animations/binary-hex-converter.qmd", time: "15 min", type: "tool"},
{title: "Signal Processing Essentials", path: "../fundamentals/signal-processing-essentials.qmd", time: "30 min"},
{title: "ADC Resolution", path: "../fundamentals/animations/adc-resolution-visualizer.qmd", time: "15 min", type: "tool"}
],
project: "Build a temperature logging system with averaging"
},
{
name: "Sensing & Hardware",
duration: "Week 3-4",
chapters: [
{title: "Sensing Fundamentals", path: "../sensing-and-actuation/sensing-fundamentals.qmd", time: "35 min"},
{title: "Sensor Calibration Tool", path: "../sensing-and-actuation/animations/sensor-calibration.qmd", time: "20 min", type: "tool"},
{title: "RC Filter Designer", path: "../sensing-and-actuation/animations/rc-filter-designer.qmd", time: "20 min", type: "tool"},
{title: "Hardware Characteristics", path: "../architectures/foundations/hardware-and-device-characteristics.qmd", time: "30 min"},
{title: "Hardware Selector", path: "../design-strategies-and-prototyping/animations/hardware-selector.qmd", time: "25 min", type: "tool"}
],
project: "Design a multi-sensor data acquisition system"
},
{
name: "Networking & Protocols",
duration: "Week 5-6",
chapters: [
{title: "Protocol Selection Framework", path: "../fundamentals/protocol-selection-framework.qmd", time: "30 min"},
{title: "Protocol Comparison", path: "../networking-and-communications/fundamentals/animations/protocol-comparison-simulator.qmd", time: "20 min", type: "tool"},
{title: "MQTT Fundamentals", path: "../networking-and-communications/app-protocols/mqtt.qmd", time: "35 min"},
{title: "MQTT Message Flow", path: "../networking-and-communications/animations/mqtt-pubsub.qmd", time: "15 min", type: "tool"},
{title: "LoRaWAN Overview", path: "../networking-and-communications/long-range-app/lorawan-overview.qmd", time: "30 min"},
{title: "LoRaWAN SF Simulator", path: "../networking-and-communications/animations/lorawan-sf.qmd", time: "15 min", type: "tool"}
],
project: "Build an MQTT-based sensor network with QoS levels"
},
{
name: "Architecture & Design",
duration: "Week 7-8",
chapters: [
{title: "IoT Reference Models", path: "../architectures/foundations/iot-reference-models.qmd", time: "35 min"},
{title: "Reference Architecture Builder", path: "../architectures/foundations/animations/reference-architecture.qmd", time: "25 min", type: "tool"},
{title: "Edge vs Cloud", path: "../data-management-and-analytics/animations/edge-cloud-decision.qmd", time: "20 min", type: "tool"},
{title: "Power Budget Calculator", path: "../design-strategies-and-prototyping/animations/power-budget.qmd", time: "20 min", type: "tool"},
{title: "Process Control & PID", path: "../architectures/foundations/process-control-and-pid.qmd", time: "30 min"},
{title: "PID Tuner", path: "../architectures/foundations/animations/pid-tuner.qmd", time: "25 min", type: "tool"}
],
project: "Design a complete IoT architecture for smart home"
},
{
name: "Production & Security",
duration: "Week 9-10",
chapters: [
{title: "IoT Security Overview", path: "../privacy-and-security/iot-security-overview.qmd", time: "35 min"},
{title: "Zero Trust Simulator", path: "../privacy-and-security/animations/zero-trust-simulator.qmd", time: "20 min", type: "tool"},
{title: "Network Segmentation", path: "../privacy-and-security/animations/network-segmentation-visualizer.qmd", time: "20 min", type: "tool"},
{title: "Troubleshooting Flowchart", path: "troubleshooting-flowchart.qmd", time: "15 min", type: "tool"},
{title: "Code Snippet Library", path: "code-snippet-library.qmd", time: "20 min", type: "reference"}
],
project: "Secure and deploy your IoT system"
}
],
capstone: {
title: "Smart Environment Monitor",
description: "Build a complete air quality monitoring system with temperature, humidity, CO2, and particulate matter sensors. Deploy to cloud with real-time dashboard.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
},
"Software Developer": {
title: "Software Developer Path",
subtitle: "Focus on IoT backends, APIs, and integrations",
color: "#9B59B6",
icon: "💻",
duration: "6-8 weeks",
description: "Build IoT applications, APIs, and cloud integrations. Learn data handling, messaging protocols, and scalable architectures.",
milestones: [
{
name: "IoT Fundamentals",
duration: "Week 1",
chapters: [
{title: "IoT Overview", path: "../applications-and-use-cases/overview-of-iot.qmd", time: "30 min"},
{title: "Data Formats for IoT", path: "../fundamentals/data-formats-for-iot.qmd", time: "25 min"},
{title: "Packet Structure", path: "../fundamentals/packet-structure-and-framing.qmd", time: "25 min"},
{title: "Code Snippet Library", path: "code-snippet-library.qmd", time: "20 min", type: "reference"}
],
project: "Parse and process IoT sensor data in Python"
},
{
name: "Messaging Protocols",
duration: "Week 2-3",
chapters: [
{title: "MQTT Fundamentals", path: "../networking-and-communications/app-protocols/mqtt.qmd", time: "35 min"},
{title: "MQTT Message Flow", path: "../networking-and-communications/animations/mqtt-pubsub.qmd", time: "15 min", type: "tool"},
{title: "Protocol State Playground", path: "../networking-and-communications/fundamentals/animations/protocol-state-playground.qmd", time: "20 min", type: "tool"},
{title: "CoAP Fundamentals", path: "../networking-and-communications/app-protocols/coap-fundamentals.qmd", time: "30 min"},
{title: "REST vs MQTT vs CoAP", path: "../networking-and-communications/app-protocols/protocol-comparison.qmd", time: "25 min"}
],
project: "Build MQTT pub/sub system with multiple clients"
},
{
name: "Data Management",
duration: "Week 4-5",
chapters: [
{title: "Database Selection Tool", path: "../data-management-and-analytics/animations/database-selector.qmd", time: "20 min", type: "tool"},
{title: "Time Series Databases", path: "../data-management-and-analytics/time-series-databases.qmd", time: "30 min"},
{title: "Query Analyzer", path: "../data-management-and-analytics/animations/query-analyzer.qmd", time: "20 min", type: "tool"},
{title: "Big Data Pipeline", path: "../data-management-and-analytics/animations/bigdata-pipeline.qmd", time: "25 min", type: "tool"},
{title: "Edge vs Cloud", path: "../data-management-and-analytics/animations/edge-cloud-decision.qmd", time: "20 min", type: "tool"}
],
project: "Design data pipeline with time-series storage"
},
{
name: "Cloud & APIs",
duration: "Week 6",
chapters: [
{title: "Cloud Computing", path: "../architectures/foundations/cloud-computing.qmd", time: "30 min"},
{title: "IoT Reference Architectures", path: "../architectures/foundations/iot-reference-architectures.qmd", time: "35 min"},
{title: "Reference Architecture Builder", path: "../architectures/foundations/animations/reference-architecture.qmd", time: "25 min", type: "tool"}
],
project: "Deploy IoT backend with REST API"
}
],
capstone: {
title: "IoT Data Platform",
description: "Build a scalable IoT data platform with MQTT ingestion, time-series storage, REST API, and real-time dashboard.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
},
"Product Manager": {
title: "Product Manager Path",
subtitle: "Understand IoT for product decisions",
color: "#E67E22",
icon: "💼",
duration: "4-6 weeks",
description: "Learn enough IoT to make informed product decisions. Focus on use cases, architecture trade-offs, and business models.",
milestones: [
{
name: "IoT Landscape",
duration: "Week 1",
chapters: [
{title: "IoT Overview", path: "../applications-and-use-cases/overview-of-iot.qmd", time: "30 min"},
{title: "Application Domains", path: "../applications-and-use-cases/application-domains.qmd", time: "30 min"},
{title: "IoT Use Cases", path: "../applications-and-use-cases/iot-use-cases.qmd", time: "25 min"},
{title: "Use Case Builder", path: "../applications-and-use-cases/animations/use-case-builder.qmd", time: "20 min", type: "tool"}
],
project: "Define 3 IoT use cases for your domain"
},
{
name: "Business & Strategy",
duration: "Week 2",
chapters: [
{title: "IoT Business Models", path: "../applications-and-use-cases/iot-business-models.qmd", time: "30 min"},
{title: "Business Model Canvas", path: "../applications-and-use-cases/animations/business-model-canvas.qmd", time: "25 min", type: "tool"},
{title: "Monetizing IoT", path: "../applications-and-use-cases/monetizing-iot.qmd", time: "25 min"},
{title: "Industry 4.0 Maturity", path: "../applications-and-use-cases/animations/industry40-maturity.qmd", time: "20 min", type: "tool"}
],
project: "Create business model for IoT product"
},
{
name: "Technical Decisions",
duration: "Week 3-4",
chapters: [
{title: "Protocol Selection Framework", path: "../fundamentals/protocol-selection-framework.qmd", time: "30 min"},
{title: "Protocol Selector Wizard", path: "../fundamentals/protocol-selector-wizard.qmd", time: "20 min", type: "tool"},
{title: "Architecture Planner", path: "../fundamentals/architecture-planner.qmd", time: "25 min", type: "tool"},
{title: "Edge vs Cloud Decision", path: "../data-management-and-analytics/animations/edge-cloud-decision.qmd", time: "20 min", type: "tool"},
{title: "Hardware Selector", path: "../design-strategies-and-prototyping/animations/hardware-selector.qmd", time: "20 min", type: "tool"}
],
project: "Make architecture decisions for product"
},
{
name: "Security & Compliance",
duration: "Week 5",
chapters: [
{title: "IoT Security Overview", path: "../privacy-and-security/iot-security-overview.qmd", time: "35 min"},
{title: "Privacy Compliance", path: "../privacy-and-security/animations/privacy-compliance.qmd", time: "20 min", type: "tool"},
{title: "Failure Case Studies", path: "failure-case-studies.qmd", time: "25 min"}
],
project: "Create security requirements document"
}
],
capstone: {
title: "IoT Product Roadmap",
description: "Create a complete product roadmap for an IoT product including use cases, architecture decisions, business model, and security requirements.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
},
"Data Scientist": {
title: "Data Scientist Path",
subtitle: "Focus on IoT data analytics and ML",
color: "#27AE60",
icon: "📊",
duration: "6-8 weeks",
description: "Learn IoT data characteristics, time-series analysis, and machine learning for IoT applications.",
milestones: [
{
name: "IoT Data Fundamentals",
duration: "Week 1-2",
chapters: [
{title: "Data Representation", path: "../fundamentals/data-representation.qmd", time: "25 min"},
{title: "Signal Processing Essentials", path: "../fundamentals/signal-processing-essentials.qmd", time: "30 min"},
{title: "Sampling Visualizer", path: "../fundamentals/animations/sampling-visualizer.qmd", time: "15 min", type: "tool"},
{title: "ADC Resolution", path: "../fundamentals/animations/adc-resolution-visualizer.qmd", time: "15 min", type: "tool"},
{title: "Sensor Calibration", path: "../sensing-and-actuation/animations/sensor-calibration.qmd", time: "20 min", type: "tool"}
],
project: "Clean and preprocess raw sensor data"
},
{
name: "Time-Series Analysis",
duration: "Week 3-4",
chapters: [
{title: "Time Series Databases", path: "../data-management-and-analytics/time-series-databases.qmd", time: "30 min"},
{title: "Database Selector", path: "../data-management-and-analytics/animations/database-selector.qmd", time: "20 min", type: "tool"},
{title: "Query Analyzer", path: "../data-management-and-analytics/animations/query-analyzer.qmd", time: "20 min", type: "tool"},
{title: "Kalman Filter Simulator", path: "../data-management-and-analytics/animations/kalman-filter.qmd", time: "25 min", type: "tool"},
{title: "Anomaly Detection", path: "../data-management-and-analytics/animations/anomaly-detection.qmd", time: "20 min", type: "tool"}
],
project: "Build anomaly detection for sensor data"
},
{
name: "Advanced Analytics",
duration: "Week 5-6",
chapters: [
{title: "Sensor Fusion Calculator", path: "../architectures/foundations/animations/sensor-fusion-calculator.qmd", time: "25 min", type: "tool"},
{title: "RC Filter Designer", path: "../sensing-and-actuation/animations/rc-filter-designer.qmd", time: "20 min", type: "tool"},
{title: "Big Data Pipeline", path: "../data-management-and-analytics/animations/bigdata-pipeline.qmd", time: "25 min", type: "tool"},
{title: "Edge AI/ML", path: "../architectures/distributed-specialized/edge-ai-ml.qmd", time: "30 min"}
],
project: "Deploy ML model for edge inference"
}
],
capstone: {
title: "Predictive Maintenance System",
description: "Build a predictive maintenance system using sensor data to predict equipment failures before they occur.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
},
"Security Specialist": {
title: "Security Specialist Path",
subtitle: "Master IoT security and privacy",
color: "#E74C3C",
icon: "🔒",
duration: "6-8 weeks",
description: "Deep dive into IoT security challenges, attack surfaces, and defense strategies.",
milestones: [
{
name: "Security Foundations",
duration: "Week 1-2",
chapters: [
{title: "IoT Security Overview", path: "../privacy-and-security/iot-security-overview.qmd", time: "35 min"},
{title: "Attack Surfaces", path: "../privacy-and-security/attack-surfaces.qmd", time: "30 min"},
{title: "Common Vulnerabilities", path: "../privacy-and-security/common-vulnerabilities.qmd", time: "30 min"},
{title: "Zero Trust Simulator", path: "../privacy-and-security/animations/zero-trust-simulator.qmd", time: "25 min", type: "tool"}
],
project: "Map attack surface for IoT system"
},
{
name: "Network Security",
duration: "Week 3-4",
chapters: [
{title: "Network Segmentation", path: "../privacy-and-security/animations/network-segmentation-visualizer.qmd", time: "25 min", type: "tool"},
{title: "Secure Communication", path: "../privacy-and-security/secure-communication.qmd", time: "30 min"},
{title: "Protocol Security", path: "../networking-and-communications/app-protocols/protocol-security.qmd", time: "30 min"},
{title: "Protocol State Playground", path: "../networking-and-communications/fundamentals/animations/protocol-state-playground.qmd", time: "20 min", type: "tool"}
],
project: "Design secure network architecture"
},
{
name: "Privacy & Compliance",
duration: "Week 5-6",
chapters: [
{title: "Privacy Compliance", path: "../privacy-and-security/animations/privacy-compliance.qmd", time: "25 min", type: "tool"},
{title: "Data Protection", path: "../privacy-and-security/data-protection.qmd", time: "30 min"},
{title: "Failure Case Studies", path: "failure-case-studies.qmd", time: "25 min"}
],
project: "Create security audit checklist"
}
],
capstone: {
title: "IoT Security Assessment",
description: "Conduct a complete security assessment of an IoT system including vulnerability analysis, risk assessment, and remediation plan.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
},
"Hobbyist/Maker": {
title: "Hobbyist/Maker Path",
subtitle: "Build fun IoT projects quickly",
color: "#16A085",
icon: "💫",
duration: "4-6 weeks",
description: "Get hands-on with IoT quickly. Build real projects with step-by-step guidance.",
milestones: [
{
name: "Getting Started",
duration: "Week 1",
chapters: [
{title: "IoT Overview", path: "../applications-and-use-cases/overview-of-iot.qmd", time: "30 min"},
{title: "Quick Reference Cards", path: "quick-reference-cards.qmd", time: "15 min", type: "reference"},
{title: "Code Snippet Library", path: "code-snippet-library.qmd", time: "20 min", type: "reference"},
{title: "Troubleshooting Flowchart", path: "troubleshooting-flowchart.qmd", time: "15 min", type: "tool"}
],
project: "Blink an LED with ESP32"
},
{
name: "Sensors & Data",
duration: "Week 2",
chapters: [
{title: "Sensor Calibration", path: "../sensing-and-actuation/animations/sensor-calibration.qmd", time: "20 min", type: "tool"},
{title: "ADC Resolution", path: "../fundamentals/animations/adc-resolution-visualizer.qmd", time: "15 min", type: "tool"},
{title: "Formula Calculator", path: "../fundamentals/animations/formula-calculator.qmd", time: "15 min", type: "tool"}
],
project: "Build a temperature/humidity logger"
},
{
name: "Connectivity",
duration: "Week 3",
chapters: [
{title: "MQTT Message Flow", path: "../networking-and-communications/animations/mqtt-pubsub.qmd", time: "15 min", type: "tool"},
{title: "Protocol Comparison", path: "../networking-and-communications/fundamentals/animations/protocol-comparison-simulator.qmd", time: "20 min", type: "tool"},
{title: "Wireless Range Calculator", path: "../fundamentals/animations/wireless-range-calculator.qmd", time: "15 min", type: "tool"}
],
project: "Send sensor data to cloud via MQTT"
},
{
name: "Complete Project",
duration: "Week 4",
chapters: [
{title: "Power Budget Calculator", path: "../design-strategies-and-prototyping/animations/power-budget.qmd", time: "20 min", type: "tool"},
],
project: "Build a battery-powered weather station"
}
],
capstone: {
title: "Smart Home Automation",
description: "Build a complete home automation system with sensors, actuators, and mobile app control.",
link: "../design-strategies-and-prototyping/capstone-projects.qmd"
}
}
})
// Get current path
currentPath = learningPaths[selectedRole]
html`
<div style="margin: 20px 0;">
<div style="background: linear-gradient(135deg, ${currentPath.color}22 0%, ${currentPath.color}11 100%);
border: 2px solid ${currentPath.color}; border-radius: 16px; padding: 25px; margin-bottom: 30px;">
<div style="display: flex; align-items: center; gap: 15px; margin-bottom: 15px;">
<span style="font-size: 48px;">${currentPath.icon}</span>
<div>
<h2 style="margin: 0; color: ${currentPath.color};">${currentPath.title}</h2>
<p style="margin: 5px 0 0 0; color: #666;">${currentPath.subtitle}</p>
</div>
</div>
<p style="color: #444; margin-bottom: 15px;">${currentPath.description}</p>
<div style="display: flex; gap: 20px; flex-wrap: wrap;">
<div style="background: white; padding: 10px 20px; border-radius: 20px;">
<strong>Duration:</strong> ${currentPath.duration}
</div>
<div style="background: white; padding: 10px 20px; border-radius: 20px;">
<strong>Milestones:</strong> ${currentPath.milestones.length}
</div>
</div>
</div>
${currentPath.milestones.map((milestone, i) => html`
<div style="background: white; border-radius: 12px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); margin-bottom: 20px; overflow: hidden;">
<div style="background: ${currentPath.color}; color: white; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center;">
<div>
<span style="opacity: 0.8; font-size: 12px;">MILESTONE ${i + 1}</span>
<h3 style="margin: 5px 0 0 0;">${milestone.name}</h3>
</div>
<span style="background: rgba(255,255,255,0.2); padding: 5px 15px; border-radius: 15px; font-size: 13px;">
${milestone.duration}
</span>
</div>
<div style="padding: 20px;">
<div style="display: flex; flex-direction: column; gap: 10px;">
${milestone.chapters.map(ch => html`
<a href="${ch.path}" style="text-decoration: none; color: inherit;">
<div style="display: flex; align-items: center; gap: 12px; padding: 12px 15px; background: #f8f9fa; border-radius: 8px; transition: background 0.2s;"
onmouseover="this.style.background='#e9ecef'" onmouseout="this.style.background='#f8f9fa'">
<span style="font-size: 18px;">${ch.type === 'tool' ? '🔧' : ch.type === 'reference' ? '📖' : '📚'}</span>
<span style="flex: 1; font-weight: 500; color: #2C3E50;">${ch.title}</span>
<span style="color: #999; font-size: 13px;">${ch.time}</span>
</div>
</a>
`)}
</div>
<div style="margin-top: 15px; padding: 15px; background: #FEF9E7; border-radius: 8px; border-left: 4px solid #F39C12;">
<strong style="color: #E67E22;">🎯 Milestone Project:</strong>
<span style="color: #5D4037;"> ${milestone.project}</span>
</div>
</div>
</div>
`)}
<div style="background: linear-gradient(135deg, #2C3E50 0%, #34495E 100%); color: white; border-radius: 16px; padding: 25px;">
<h3 style="margin-top: 0; display: flex; align-items: center; gap: 10px;">
<span style="font-size: 28px;">🏆</span> Capstone Project
</h3>
<h4 style="color: #F39C12; margin: 10px 0;">${currentPath.capstone.title}</h4>
<p style="opacity: 0.9;">${currentPath.capstone.description}</p>
<a href="${currentPath.capstone.link}" style="display: inline-block; margin-top: 10px; background: #F39C12; color: white; padding: 10px 25px; border-radius: 25px; text-decoration: none; font-weight: bold;">
View Capstone Details →
</a>
</div>
</div>
`11.4 Track Your Progress
Show code
html`
<div style="background: #f8f9fa; padding: 20px; border-radius: 12px; margin: 20px 0;">
<h4 style="margin-top: 0;">Your Progress on ${selectedRole} Path</h4>
<p style="color: #666;">Progress tracking coming soon! Your chapter visits and tool usage will automatically update your progress.</p>
<div style="display: flex; gap: 15px; margin-top: 15px;">
<a href="learning-recommendations.qmd" style="padding: 10px 20px; background: #3498DB; color: white; border-radius: 8px; text-decoration: none;">
View Recommendations
</a>
<a href="quizzes.qmd" style="padding: 10px 20px; background: #27AE60; color: white; border-radius: 8px; text-decoration: none;">
Take Quizzes
</a>
</div>
</div>
`11.5 Related Resources
- Learning Recommendations - Get personalized suggestions
- Visual Concept Map - See how topics connect
- Tool Discovery Hub - Find interactive tools
- Capstone Projects - Comprehensive projects
TipCommitment is Key
Consistency beats intensity. 30 minutes daily is better than 4 hours once a week. Use the streak tracker to stay motivated!