Zephyr Course: Intermediate

Led by IOMICO engineers with commercial Zephyr experience, this course is for embedded developers who completed Zephyr RTOS Fundamentals or have equivalent practical experience

Register

Certification

Certification

Participants may receive one of the following certificates:

Attendance Certificate

Awarded to participants who meet at least one of the following requirements:

  • Complete at least 4 homework assignments, or

  • Pass both the Midterm Test and the Final Test with a score of 80% or higher.

Completion Certificate

Awarded to participants who meet all of the following requirements:

  • Complete all homework assignments.

  • Pass both the Midterm Test and the Final Test with a score of 80% or higher.

Instructors

Instructors

Mikhail Seliadtsou

Mikhail Seliadtsou

Senior Embedded Engineer

Senior Embedded Engineer

Mikhail Seliadtsou is a Senior Embedded Engineer with around 10 years of experience in embedded systems, Linux development, and robotics. He combines deep technical expertise with hands-on experience building reliable embedded solutions. Passionate about knowledge sharing, Mikhail helps engineers develop practical skills and better understand modern embedded system design.

Mikhail Seliadtsou is a Senior Embedded Engineer with around 10 years of experience in embedded systems, Linux development, and robotics. He combines deep technical expertise with hands-on experience building reliable embedded solutions. Passionate about knowledge sharing, Mikhail helps engineers develop practical skills and better understand modern embedded system design.

Mariano Franceschetti

Mariano Franceschetti

Embedded Software Engineer

Embedded Software Engineer

Mariano Franceschetti is an Embedded Software Engineer with experience since 2018. Throughout his career, he has contributed to and enabled innovative solutions across a wide range of industries. Mariano has been working with the Zephyr RTOS for several years and has extensive experience in designing secure and scalable firmware architectures. He enjoys tackling complex engineering challenges and delivering robust, high-quality solutions.

Mariano Franceschetti is an Embedded Software Engineer with experience since 2018. Throughout his career, he has contributed to and enabled innovative solutions across a wide range of industries. Mariano has been working with the Zephyr RTOS for several years and has extensive experience in designing secure and scalable firmware architectures. He enjoys tackling complex engineering challenges and delivering robust, high-quality solutions.

Natalia Pluta

Natalia Pluta

Embedded Software Engineer

Embedded Software Engineer

Natalia Pluta is an Embedded Software Engineer at Iomico. Her journey with Zephyr RTOS began in 2022 at Nordic Semiconductor. Today, she uses that specialized knowledge to help Iomico's clients navigate the complexities of bringing their own projects to life. By pairing firmware expertise with solid testing and clear documentation, she ensures customers have the robust foundations needed to turn complex hardware ideas into reality.

Natalia Pluta is an Embedded Software Engineer at Iomico. Her journey with Zephyr RTOS began in 2022 at Nordic Semiconductor. Today, she uses that specialized knowledge to help Iomico's clients navigate the complexities of bringing their own projects to life. By pairing firmware expertise with solid testing and clear documentation, she ensures customers have the robust foundations needed to turn complex hardware ideas into reality.

Facundo Zingarelli

Facundo Zingarelli

Embedded Software Engineer

Embedded Software Engineer

Facundo is an Embedded Software Engineer with a deep passion for system integration and the intersection of hardware and software. Rooted in an electronic engineering background, he approaches firmware development with genuine curiosity and a continuous drive to learn—whether that means diving into Rust, writing C and C++, or tailoring Zephyr RTOS and Yocto build systems. Facundo loves tackling complex architectural challenges and exploring emerging areas like firmware security, always focused on understanding how systems work from the ground up to build thoughtful, reliable solutions.

Facundo is an Embedded Software Engineer with a deep passion for system integration and the intersection of hardware and software. Rooted in an electronic engineering background, he approaches firmware development with genuine curiosity and a continuous drive to learn—whether that means diving into Rust, writing C and C++, or tailoring Zephyr RTOS and Yocto build systems. Facundo loves tackling complex architectural challenges and exploring emerging areas like firmware security, always focused on understanding how systems work from the ground up to build thoughtful, reliable solutions.

What you'll learn

What you'll learn

What You Will Learn

  • Understand Zephyr execution behavior, scheduling, priorities, and real-time system design principles.

  • Build safe concurrent applications using synchronization mechanisms and shared-resource management.

  • Design efficient event-driven systems with timers, work queues, and optimized execution flows.

  • Create scalable system architectures using messaging, events, queues, and modular software design.

  • Manage memory, system resources, and reliability in resource-constrained embedded devices.

  • Debug and analyze complex systems using logging, tracing, debugging tools, and runtime diagnostics.

  • Develop automated unit and integration tests using the Zephyr ztest framework - intermediate level.

  • Apply embedded security principles, including secure boot, firmware protection, access control, and threat mitigation with Zephyr.

Format

Format

The course is designed to provide maximum flexibility while ensuring participants receive continuous support throughout the program.

  • Self-paced video lectures – All lectures are pre-recorded, allowing you to learn at your own pace, at a time that's convenient for you, and revisit the material whenever needed. New lectures are released weekly, with one new lesson becoming available each week. Every lecture is accompanied by a practical hands-on assignment to help you apply the concepts covered in the lesson.

  • Live Q&A sessions – Interactive live meetings are held every two weeks, giving you the opportunity to ask questions about the previous two lectures, review assignments with the instructors, discuss key concepts, and receive guidance on any challenges you encounter.

  • Progress assessments – The course includes three assessments to help you track your progress:

    • Prerequisite Assessment – Evaluate your readiness and identify any knowledge gaps before the course begins.

    • Midterm Assessment – Covers Lessons 1–4 and helps you measure your progress while encouraging you to catch up if needed.

    • Final Assessment – Evaluates your overall understanding of the course material and is required to earn the Course Completion Certificate.

  • Community support – Participants will have access to a dedicated community group for course announcements, discussions, asking questions, and receiving timely support with homework and technical issues throughout the course.

Course Schedule

Course Schedule

Week / Dates

Activities

Aug 5

Course Kick-off / Orientation

Aug 6 – Aug 12

Module 1: Kernel and Scheduling

Aug 13 – Aug 19

Module 2: Synchronization and Shared-State Safety

Aug 19

Live Meeting 1

Aug 20 – Aug 26

Module 3: Deferred Execution and Execution Flow

Aug 27 – Sept 2

Module 4: Communication and Event-Driven Architecture

Sept 2

Live Meeting 2

Sept 3 – Sept 9

Midterm Assessment (Modules 1–4)

Sept 10 – Sept 16

Module 5: Memory, Resource Constraints and Reliability

Sept 17 – Sept 23

Module 6: Tracing, Debugging and Runtime Analysis

Sept 23

Live Meeting 3

Sept 24 – Sept 30

Module 7: Security

Oct 1 – Oct 7

Module 8: Unit Testing (Intermediate)

Oct 7

Live Meeting 4

Oct 8 – Oct 14

Final Assessment

Nov 2 – Nov 6

Final Certificates Issued

Live Meeting Schedule:
Biweekly on Wednesdays at 8:00 PM CET / 3:00 PM Buenos Aires / 2:00 PM EST.

Note:
All live meetings will be recorded and made available for replay. Each module includes a practical hands-on assignment that participants should complete before the corresponding live session to maximize discussion and learning during the meeting.

Week / Dates

Activities

Aug 5

Course Kick-off / Orientation

Aug 6 – Aug 12

Module 1: Kernel and Scheduling

Aug 13 – Aug 19

Module 2: Synchronization and Shared-State Safety

Aug 19

Live Meeting 1

Aug 20 – Aug 26

Module 3: Deferred Execution and Execution Flow

Aug 27 – Sept 2

Module 4: Communication and Event-Driven Architecture

Sept 2

Live Meeting 2

Sept 3 – Sept 9

Midterm Assessment (Modules 1–4)

Sept 10 – Sept 16

Module 5: Memory, Resource Constraints and Reliability

Sept 17 – Sept 23

Module 6: Tracing, Debugging and Runtime Analysis

Sept 23

Live Meeting 3

Sept 24 – Sept 30

Module 7: Security

Oct 1 – Oct 7

Module 8: Unit Testing (Intermediate)

Oct 7

Live Meeting 4

Oct 8 – Oct 14

Final Assessment

Nov 2 – Nov 6

Final Certificates Issued

Live Meeting Schedule:
Biweekly on Wednesdays at 8:00 PM CET / 3:00 PM Buenos Aires / 2:00 PM EST.

Note:
All live meetings will be recorded and made available for replay. Each module includes a practical hands-on assignment that participants should complete before the corresponding live session to maximize discussion and learning during the meeting.

Technical Prerequisites

Technical Prerequisites

Prerequisites

Before taking this course, participants should have:

  • Proficiency in the C programming language

  • Understanding of Embedded Systems Fundamentals

  • Completion of the Zephyr RTOS Fundamentals (Basic) Course or equivalent hands-on experience with Zephyr

Trusted by engineers from

Trusted by engineers from

Testimonials

Testimonials

  • Highly recommend iomico's Zephyr Fundamentals course. It is well-structured, deeply practical, and offers excellent hands-on experience. The trainers provide great real-world exposure to debugging, unit testing, and Zephyr DTS.

    Muralitharan M

    Firmware Engineer, NXP

  • The Zephyr Fundamentals course provided an excellent. The curriculum strikes the perfect balance between theoretical concepts. I am already applying the skills I learned to accelerate the development of our IoT medical and clean energy projects at Vortan.

    Highly recommended for any engineer looking to master professional-grade firmware development.

    Elius Faustine

    Co-Founder/COO, Vortan

  • Thanks iomico, your knowledge and dedication have been invaluable both to us and to the Zephyr community. It was truly a pleasure to learn from such distinguished instructors as Dawid Marszałkiewicz and Natalia Pluta.

    Hazem Khaled Mohamed

    Embedded Software Engineer, Axxcelera

  • The course was a very valuable and practical. It helped me to build a strong foundation in Zephyr RTOS development through clear explanations and hands-on assignments. Also, it was well-structured, technically focused, and useful for anyone who wants to understand how Zephyr is used in real-world embedded systems.

    Muhammad Sufyan Raza

    Embedded Software Engineer, Alten

  • Overall, it was a good, practical course on the basics of Zephyr. It gave me a good overview of what Zephyr can do. The tutors were very skilled and answered all the questions that came up. I look forward to further courses on this topic.

    Daniel Hauschild

    Project Engineer,

    HTK Hamburg GmbH

  • The best course.

    George Emad

    Embedded Software Engineer, Cypod Solutions

  • Highly recommend iomico's Zephyr Fundamentals course. It is well-structured, deeply practical, and offers excellent hands-on experience. The trainers provide great real-world exposure to debugging, unit testing, and Zephyr DTS.

    Muralitharan M

    Firmware Engineer, NXP

  • The Zephyr Fundamentals course provided an excellent. The curriculum strikes the perfect balance between theoretical concepts. I am already applying the skills I learned to accelerate the development of our IoT medical and clean energy projects at Vortan.

    Highly recommended for any engineer looking to master professional-grade firmware development.

    Elius Faustine

    Co-Founder/COO, Vortan

  • Thanks iomico, your knowledge and dedication have been invaluable both to us and to the Zephyr community. It was truly a pleasure to learn from such distinguished instructors as Dawid Marszałkiewicz and Natalia Pluta.

    Hazem Khaled Mohamed

    Embedded Software Engineer, Axxcelera

  • The course was a very valuable and practical. It helped me to build a strong foundation in Zephyr RTOS development through clear explanations and hands-on assignments. Also, it was well-structured, technically focused, and useful for anyone who wants to understand how Zephyr is used in real-world embedded systems.

    Muhammad Sufyan Raza

    Embedded Software Engineer, Alten

  • Overall, it was a good, practical course on the basics of Zephyr. It gave me a good overview of what Zephyr can do. The tutors were very skilled and answered all the questions that came up. I look forward to further courses on this topic.

    Daniel Hauschild

    Project Engineer,

    HTK Hamburg GmbH

  • The best course.

    George Emad

    Embedded Software Engineer, Cypod Solutions

Zephyr Course: Intermediate

Led by IOMICO engineers with commercial Zephyr experience, this course is for embedded developers who completed Zephyr RTOS Fundamentals or have equivalent practical experience

Register

Certification

Participants may receive one of the following certificates:

Attendance Certificate

Awarded to participants who meet at least one of the following requirements:

  • Complete at least 4 homework assignments, or

  • Pass both the Midterm Test and the Final Test with a score of 80% or higher.

Completion Certificate

Awarded to participants who meet all of the following requirements:

  • Complete all homework assignments.

  • Pass both the Midterm Test and the Final Test with a score of 80% or higher.

Instructors

Mikhail Seliadtsou

Senior Embedded Engineer

Mikhail Seliadtsou is a Senior Embedded Engineer with around 10 years of experience in embedded systems, Linux development, and robotics. He combines deep technical expertise with hands-on experience building reliable embedded solutions. Passionate about knowledge sharing, Mikhail helps engineers develop practical skills and better understand modern embedded system design.

Mariano Franceschetti

Embedded Software Engineer

Mariano Franceschetti is an Embedded Software Engineer with experience since 2018. Throughout his career, he has contributed to and enabled innovative solutions across a wide range of industries. Mariano has been working with the Zephyr RTOS for several years and has extensive experience in designing secure and scalable firmware architectures. He enjoys tackling complex engineering challenges and delivering robust, high-quality solutions.

Natalia Pluta

Embedded Software Engineer

Natalia Pluta is an Embedded Software Engineer at Iomico. Her journey with Zephyr RTOS began in 2022 at Nordic Semiconductor. Today, she uses that specialized knowledge to help Iomico's clients navigate the complexities of bringing their own projects to life. By pairing firmware expertise with solid testing and clear documentation, she ensures customers have the robust foundations needed to turn complex hardware ideas into reality.

Facundo Zingarelli

Embedded Software Engineer

Facundo is an Embedded Software Engineer with a deep passion for system integration and the intersection of hardware and software. Rooted in an electronic engineering background, he approaches firmware development with genuine curiosity and a continuous drive to learn—whether that means diving into Rust, writing C and C++, or tailoring Zephyr RTOS and Yocto build systems. Facundo loves tackling complex architectural challenges and exploring emerging areas like firmware security, always focused on understanding how systems work from the ground up to build thoughtful, reliable solutions.

Format

The course is designed to provide maximum flexibility while ensuring participants receive continuous support throughout the program.

  • Self-paced video lectures – All lectures are pre-recorded, allowing you to learn at your own pace, at a time that's convenient for you, and revisit the material whenever needed. New lectures are released weekly, with one new lesson becoming available each week. Every lecture is accompanied by a practical hands-on assignment to help you apply the concepts covered in the lesson.

  • Live Q&A sessions – Interactive live meetings are held every two weeks, giving you the opportunity to ask questions about the previous two lectures, review assignments with the instructors, discuss key concepts, and receive guidance on any challenges you encounter.

  • Progress assessments – The course includes three assessments to help you track your progress:

    • Prerequisite Assessment – Evaluate your readiness and identify any knowledge gaps before the course begins.

    • Midterm Assessment – Covers Lessons 1–4 and helps you measure your progress while encouraging you to catch up if needed.

    • Final Assessment – Evaluates your overall understanding of the course material and is required to earn the Course Completion Certificate.

  • Community support – Participants will have access to a dedicated community group for course announcements, discussions, asking questions, and receiving timely support with homework and technical issues throughout the course.

What you'll learn

What You Will Learn

  • Understand Zephyr execution behavior, scheduling, priorities, and real-time system design principles.

  • Build safe concurrent applications using synchronization mechanisms and shared-resource management.

  • Design efficient event-driven systems with timers, work queues, and optimized execution flows.

  • Create scalable system architectures using messaging, events, queues, and modular software design.

  • Manage memory, system resources, and reliability in resource-constrained embedded devices.

  • Debug and analyze complex systems using logging, tracing, debugging tools, and runtime diagnostics.

  • Develop automated unit and integration tests using the Zephyr ztest framework - intermediate level.

  • Apply embedded security principles, including secure boot, firmware protection, access control, and threat mitigation with Zephyr.

Course Schedule

Week / Dates

Activities

Aug 5

Course Kick-off / Orientation

Aug 6 – Aug 12

Module 1: Kernel and Scheduling

Aug 13 – Aug 19

Module 2: Synchronization and Shared-State Safety

Aug 19

Live Meeting 1

Aug 20 – Aug 26

Module 3: Deferred Execution and Execution Flow

Aug 27 – Sept 2

Module 4: Communication and Event-Driven Architecture

Sept 2

Live Meeting 2

Sept 3 – Sept 9

Midterm Assessment (Modules 1–4)

Sept 10 – Sept 16

Module 5: Memory, Resource Constraints and Reliability

Sept 17 – Sept 23

Module 6: Tracing, Debugging and Runtime Analysis

Sept 23

Live Meeting 3

Sept 24 – Sept 30

Module 7: Security

Oct 1 – Oct 7

Module 8: Unit Testing (Intermediate)

Oct 7

Live Meeting 4

Oct 8 – Oct 14

Final Assessment

Nov 2 – Nov 6

Final Certificates Issued

Live Meeting Schedule:
Biweekly on Wednesdays at 8:00 PM CET / 3:00 PM Buenos Aires / 2:00 PM EST.

Note:
All live meetings will be recorded and made available for replay. Each module includes a practical hands-on assignment that participants should complete before the corresponding live session to maximize discussion and learning during the meeting.

Technical Prerequisites

Prerequisites

Before taking this course, participants should have:

  • Proficiency in the C programming language

  • Understanding of Embedded Systems Fundamentals

  • Completion of the Zephyr RTOS Fundamentals (Basic) Course or equivalent hands-on experience with Zephyr

Trusted by engineers from

Testimonials

  • Highly recommend iomico's Zephyr Fundamentals course. It is well-structured, deeply practical, and offers excellent hands-on experience. The trainers provide great real-world exposure to debugging, unit testing, and Zephyr DTS.

    Muralitharan M

    Firmware Engineer, NXP

  • The Zephyr Fundamentals course provided an excellent. The curriculum strikes the perfect balance between theoretical concepts. I am already applying the skills I learned to accelerate the development of our IoT medical and clean energy projects at Vortan.

    Highly recommended for any engineer looking to master professional-grade firmware development.

    Elius Faustine

    Co-Founder/COO, Vortan

  • Thanks iomico, your knowledge and dedication have been invaluable both to us and to the Zephyr community. It was truly a pleasure to learn from such distinguished instructors as Dawid Marszałkiewicz and Natalia Pluta.

    Hazem Khaled Mohamed

    Embedded Software Engineer, Axxcelera

  • The course was a very valuable and practical. It helped me to build a strong foundation in Zephyr RTOS development through clear explanations and hands-on assignments. Also, it was well-structured, technically focused, and useful for anyone who wants to understand how Zephyr is used in real-world embedded systems.

    Muhammad Sufyan Raza

    Embedded Software Engineer, Alten

  • Overall, it was a good, practical course on the basics of Zephyr. It gave me a good overview of what Zephyr can do. The tutors were very skilled and answered all the questions that came up. I look forward to further courses on this topic.

    Daniel Hauschild

    Project Engineer,

    HTK Hamburg GmbH

  • The best course.

    George Emad

    Embedded Software Engineer, Cypod Solutions