Yireo - Developer training

Open main menu

Get trained by Yireo on

Magento 2 Development

Configure DI XML with wisdom and build powerful extensions following from this

Configure DI XML with wisdom and build powerful extensions following from this

Magento 2 has arrived. This training gives developers the kickstart to start developing in Magento 2. It will cover new concepts like Dependency Injection and Plugins, but also help you migrate Magento 1 code to Magento 2. Essential for anyone willing to develop in this exciting new Magento!

Jisse Reitsma

Your teacher will be Jisse Reitsma

This training will be held with Jisse Reitsma as your guide. Jisse is the founder of Yireo, three times Magento Master, partner of ExtDN, trainer and author. Jisse has been in the Magento ecosystem for many years and has created numerous Magento extensions. He also has been pushing better coding practices, like CI/CD, clean coding, coding standards and testing.

Pick the learning method that fits you best

Because everyone has different needs


On Demand

  • 84 lessons with 15+ hours of video
  • Student notes (412+ pages)
  • Accessible at any moment
  • Learn at your own pace
per year per individual

Blended Learning

  • Everything under On Demand
  • Teacher support via email & slack
  • Prioritized requests for new lessons
  • Get the personalized help that you need
per year per individual

Custom Training

  • Everything under In-person training
  • Economical for groups of 5 and more
  • Freely debate company-specific topics
  • Online or on-site at your company

Custom pricing

per training

There are no scheduled live trainings available

At this moment, there are no trainings scheduled in our agenda. However, we are always busy with planning more, so make sure to check out our online agenda. Alternatively, checkout our on-demand content or feel free to contact us for a custom in-company training.

Current video lessons in one single view

We are constantly updating our courseware, but the following is a real-life snapshot

LessonChapterVideo lengthCreatedAction
Design patterns   Prerequisites00m 00s10 Nov 2021Get access
Clean coding   Prerequisites00m 00s27 Nov 2021Get access
Object Calisthenics   Prerequisites00m 00s10 Nov 2021Get access
Magento Admin Panel overview Magento basics10m 37s13 Dec 2021Watch for free
Configuration files Magento basics05m 27s13 Dec 2021Watch for free
Application entrypoints Magento basics04m 10s13 Dec 2021Watch for free
Global - Website - Store View (GWS)   Magento basics00m 00s29 Nov 2021Get access
Product types   Magento basics00m 00s07 Nov 2021Get access
Product attributes   Magento basics00m 00s07 Nov 2021Get access
Order flow   Magento basics00m 00s07 Nov 2021Get access
Frontend landscape   Theming basics00m 00s10 Nov 2021Get access
Requiring a composer package Magento and composer20m 00s13 Dec 2021Watch for free
Semantic versioning   Magento and composer29m 22s27 Nov 2021Get access
Composer repositories   Magento and composer13m 25s12 Aug 2021Get access
Local composer repositories Magento and composer30m 02s13 Dec 2021Watch for free
Magento composer plugins   Magento and composer00m 00s16 Aug 2021Get access
Minimum system requirements   Magento installation08m 23s14 Aug 2021Get access
Development platform   Magento installation21m 03s04 Dec 2021Get access
Disabling Two Factor Authentication   Magento installation03m 07s16 Aug 2021Get access
Installing Magento   Magento installation26m 52s16 Aug 2021Get access
Installing sample data   Magento installation10m 51s16 Aug 2021Get access
Upgrading Magento   Magento installation24m 46s16 Aug 2021Get access
Development tools Magento installation12m 34s13 Dec 2021Watch for free
Development performance Magento installation17m 28s21 Jun 2021Watch for free
Deployment modes   Magento installation24m 04s19 Jun 2021Get access
Deploying to production   Deployment00m 00s12 Nov 2021Get access
Static Content Deployment   Deployment16m 35s19 Jun 2021Get access
Developer Tools   Magento environment00m 00s09 Aug 2021Get access
Setting up PHPStorm   Magento environment17m 49s10 Aug 2021Get access
Running cron   Magento environment08m 32s27 Oct 2021Get access
Using Magerun   Magento environment08m 24s10 Aug 2021Get access
Cache clean vs flush   Magento environment00m 00s08 Nov 2021Get access
Cache handling   Magento environment09m 13s06 Sep 2021Get access
Changing the admin path   Magento environment00m 00s10 Nov 2021Get access
Maintenance mode   Magento environment09m 37s27 Oct 2021Get access
Redis caching   Magento environment09m 05s10 Nov 2021Get access
Installing a module   Magento modules21m 38s06 Sep 2021Get access
Preparing for module creation   Magento modules08m 53s06 Sep 2021Get access
Creating a module   Magento modules05m 11s06 Sep 2021Get access
Composer file   Magento modules05m 47s06 Sep 2021Get access
Module XML file   Magento modules04m 18s31 Oct 2021Get access
Module registration   Magento modules03m 44s31 Oct 2021Get access
Module commands   Magento modules09m 54s31 Oct 2021Get access
Module entrypoints   Magento modules03m 28s31 Oct 2021Get access
Adding Blocks via XML layout   Magento modules16m 48s31 Oct 2021Get access
Using the store configuration   Magento modules11m 53s31 Oct 2021Get access
Adding a simple CLI command   Magento modules09m 14s31 Oct 2021Get access
Logging   Magento modules05m 35s31 Oct 2021Get access
Creating a custom logger   Magento modules00m 00s08 Nov 2021Get access
Application layers   Architecture14m 31s11 Feb 2021Get access
Interfaces and Service Contracts   Architecture13m 41s11 Feb 2021Get access
Sandbox script   Dependency Injection07m 12s27 Aug 2021Get access
Introduction to Dependency Injection   Dependency Injection12m 00s27 Nov 2021Get access
Object Manager   Dependency Injection13m 55s27 Aug 2021Get access
DI preferences   Dependency Injection16m 04s27 Aug 2021Get access
Injecting a Store Configuration value   Dependency Injection20m 33s30 Aug 2021Get access
Injecting the current product   Dependency Injection07m 08s01 Nov 2021Get access
DI types aka constructor argument replacement   Dependency Injection20m 15s29 Aug 2021Get access
Virtual Types essentials   Dependency Injection33m 39s29 Aug 2021Get access
DI factories   Dependency Injection39m 22s27 Aug 2021Get access
Injecting URLs into your class   Dependency Injection08m 52s26 Aug 2021Get access
Creating a custom factory   Dependency Injection20m 30s09 Aug 2021Get access
DI proxies   Dependency Injection37m 39s04 Sep 2021Get access
DI interceptor plugins   Dependency Injection08m 43s05 Sep 2021Get access
Injecting the current customer session   Dependency Injection05m 41s01 Nov 2021Get access
Injecting the layout into your class   Dependency Injection08m 16s01 Nov 2021Get access
Using the product repository   Catalog development13m 51s10 Nov 2021Get access
Using product stock   Catalog development10m 23s06 Dec 2021Get access
Adding console commands   Console commands00m 00s31 Oct 2021Get access
Frontend routes   Controllers17m 42s31 Oct 2021Get access
Action results   Controllers11m 20s09 Aug 2021Get access
Dealing with form keys   Controllers00m 00s10 Nov 2021Get access
Adding messages   Controllers04m 21s06 Dec 2021Get access
Adding complex messages   Controllers23m 18s06 Dec 2021Get access
Adding a cronjob   Adding cronjobs05m 01s06 Dec 2021Get access
Creating an email template   Dealing with emails00m 00s09 Aug 2021Get access
Block caching   Caching00m 00s11 Feb 2021Get access
Adding database changes via a module   Module setup07m 18s28 Dec 2021Get access
InstallSchema   Module setup10m 55s28 Dec 2021Get access
InstallData   Module setup12m 50s28 Dec 2021Get access
Declaritive schemas   Module setup21m 34s28 Dec 2021Get access
Declarative Schema patches   Module setup17m 09s29 Dec 2021Get access
Scenario: Add CMS Block to PHTML   Module samples00m 00s09 Aug 2021Get access
Scenario: Add product pricing per customer   Module samples00m 00s09 Aug 2021Get access

These videos are available as an On-Demand video training (with notes). See the pricing for details.

These are the options we give you:

Prepare for certification

Our Magento 2 trainings are not part of the Magento U program. However, Yireo is known for providing training with high quality. Many M2 developers have reached official certification, thanks to Yireo. Additionally, we can supply our own Yireo Training Certificates.

At your place or ours?

Everyone learns at her/his own pace. We provide both in-house training and public training throughout Europe - whatever suits your team best. When 3 or more developers are attending, a custom training is often more economical. Contact us for more details.

You'll get courseware

Every workshop is accompanied with official Yireo coursematerial. Attendees are sent a digital version of this material after the training. It contains slides, comments and references. Additionally, our GitHub repos contain numerous more code samples.

Online classrooms

Online trainings are also our training: Via Zoom or Google Hangout sessions, our teacher is able to connect with your team. The benefit here is that the team is able to connect from various places itself as well, timeframes are more flexible. Afterwards, a video recording will be shared with all attendees for reference.

On-demand self-paced training

This training is also available as an On-Demand training: Via numerous video lessons, including accompanying student notes (equalling a book on their own), you'll learn about the topics in your own pace. And when you bump into questions, you can fall back to the teachers guidance.

This training is part of the following series

so that we'll be able to guide you all the way, step by step

Why Yireo?

  • Professional trainings at affordable prices
  • Highly involved in the Magento community
  • Passionate, enthousiastic, knowledgable

We have trained 1400+ Magento developers since 2009

Training topics

  • Design patterns
  • Clean coding
  • Object Calisthenics
  • Magento Admin Panel overview
  • Configuration files
  • Application entrypoints
  • Global - Website - Store View (GWS)
  • Product types
  • Product attributes
  • Order flow
  • Frontend landscape
  • Requiring a composer package
  • Semantic versioning
  • Composer repositories
  • Local composer repositories
  • Magento composer plugins
  • Minimum system requirements
  • Development platform
  • Disabling Two Factor Authentication
  • Installing Magento
  • Installing sample data
  • Upgrading Magento
  • Development tools
  • Development performance
  • Deployment modes
  • Deploying to production
  • Static Content Deployment
  • Developer Tools
  • Setting up PHPStorm
  • Running cron
  • Using Magerun
  • Cache clean vs flush
  • Cache handling
  • Changing the admin path
  • Maintenance mode
  • Redis caching
  • Installing a module
  • Preparing for module creation
  • Creating a module
  • Composer file
  • Module XML file
  • Module registration
  • Module commands
  • Module entrypoints
  • Adding Blocks via XML layout
  • Using the store configuration
  • Adding a simple CLI command
  • Logging
  • Creating a custom logger
  • Application layers
  • Interfaces and Service Contracts
  • Sandbox script
  • Introduction to Dependency Injection
  • Object Manager
  • DI preferences
  • Injecting a Store Configuration value
  • Injecting the current product
  • DI types aka constructor argument replacement
  • Virtual Types essentials
  • DI factories
  • Injecting URLs into your class
  • Creating a custom factory
  • DI proxies
  • DI interceptor plugins
  • Injecting the current customer session
  • Injecting the layout into your class
  • Using the product repository
  • Using product stock
  • Adding console commands
  • Frontend routes
  • Action results
  • Dealing with form keys
  • Adding messages
  • Adding complex messages
  • Adding a cronjob
  • Creating an email template
  • Block caching
  • Adding database changes via a module
  • InstallSchema
  • InstallData
  • Declaritive schemas
  • Declarative Schema patches
  • Scenario: Add CMS Block to PHTML
  • Scenario: Add product pricing per customer




Some Magento 1 experience
Knowledge of Magento 1 or 2 XML layout
Experience with PHP OOP

Frequently Asked Questions

There is a minimum number of attendees listed. What does this mean?

The training is only held when there is a number of attendees. This number is usually 4 but sometimes we bring this down to 2 or 3. This minimum number simply means that if a class is not "full", either you get a refund or your ticket is transferred to another date.

Jisse Reitsma

The teacher: Jisse Reitsma

Thus it came to be

When Jisse started with Magento, he already had years of experience programming in Joomla (back in the days when Joomla was actually the #1 CMS - believe it or not). Back then, open source cart solutions were lacking and Magento 1.0 brought a lot of hope.

Quickly Jisse dived into the new architecture: In 2009, he built his first extensions, among which the fundaments of a bridge between Joomla and Magento (MageBridge) and various project-specific extensions (among which payment providers and custom MVC/EAV modules).

A relieve

Over the years, he experienced what most Magento developers experienced with M1: A lot of power, but also frustration. After a couple of years, it no longer was cutting-edge and it barely adopted new developer standards. When the new Magento 2.0 alpha 1 came out, Jisse started playing with it. And he was relieved to see modern tools in its architecture: Composer, PHP namespacing, testability, CLI-driven management, proper design patterns.

Again, after building some modules and dummy projects, the first Magento 2 developer training was given in January 2017 (two months after the official release) and numerous M2 trainings have followed for both backend developers, frontend developers and devops.

Frontend sagas

Currently, with Magento 2 being several years old now, the fuzz is no longer about its backend architecture: It is the frontend that matters. Jisse has given numerous frontend development trainings, where people complain about LESS (and not SASS) being used, loading times to be slow (while in fact M2 allows for enough tuning to make it bloody fast), an archaic combo of Knockout/RequireJS (while they both serve their purpose in regards to backwards compatibility).

PWA is the new keyword. Jisse has dived into React, Redux & service workers in combination with GraphQL and NodeJS tools. He is currently working in various initiatives to help developers embrace the new frontend stack (ExtDN, Vue Storefront, DEITY). Also, he has added Docker and Kubernetes to his vocabulary.

As of yet, it is fair to say that Magento holds little surprises for Jisse. He is your guy to train you or your developers properly in both backend and frontend technology.


GitHub organizations

Legal information

Other Yireo sites

Get Social

About Yireo