How we trained 8 “Magento 2 Certified Professional Front End Developers” in 6 weeks…

Yes, it feels like a bit of a ‘click bait’ title right? But genuinely this is what we’ve been working towards for the last 6 weeks and this is our story of how we did it…

Why?

As some of you in the ‘Magentosphere’ may be aware, especially those on the solution partner side of things, Magento have recently outlined stricter rules on the number of certifications partners at various levels must have. The partner listings page is also now ranked based on the number of certified developers you have and anyone with under 4 certifications has been removed altogether (as of January 2019).

I’ve always been passionate about the development of developers themselves, not just code, and coinciding with the above we decided there is no time like the present. So, we dusted off something that’s been on the ‘back burner’ (lower down the priority list) for a while now and started to lay the groundwork for what we’ve named ‘Fisheye Academy’ – our internal certification / training programme and related resources.

Really the end goal was less about certifications / partner ranking (we were already over the threshold of the 4 certifications required). More about improving our teams overall skills and knowledge, but most importantly the confidence and sense of achievement it brings to each member of the team.


Our journey

Kicking off the process

After we’d outlined our aims at management level the rest was delegated to me in terms of outlining the course structure, proposing the certification and participants, preparing material, running the sessions and monitoring progress/success… it’s fair to say I had some to work to do!

Selecting the certification and participants

So why did we choose the frontend certification? If this was purely a numbers game about getting as many certifications as quickly as possible then we’d have likely gone with the Solution Specialist exam. That’s not to discredit the value and knowledge required to pass it*, but the developer exams do require more time to pass in my experience due to the addition of needing to get hands on and dig into the codebase.

*I’m a firm believer in the importance of the Solution Specialist exam and that anyone working with Magento in any capacity should work towards obtaining this certification.

We choose the frontend certification because I felt it was the best fit for our team and meant we could include a substantial number of participants, including backend developers and even those relatively new to our team / Magento.

The frontend certification is heavy on layout XML, templating, RequireJS, Knockout, translations and more that I think are valuable to any developer working with Magento 2 regardless of their focus / experience level.

We ended up with 8 participants from this process and I’d probably say that’s the maximum I’d advise before you consider splitting into multiple study groups / sessions.

Outlining the course structure and preparing materials

Next up was devising the course content and structure. As you might be able to tell by this point it wasn’t just a case of handing out study guides and regrouping in 6 weeks for the exam.

I outlined a 4 week intensive training plan with multiple touchpoints and resources made up of:

  • Classroom sessions and slide decks
  • Code examples and challenges
  • Study guides
  • Practice tests

I decided on having 2 x 2 hour classroom sessions a week, the first 6 (3 weeks) covering topics from the study guide and the final 2 being revision / recap sessions in the run up to the exam.

Firstly I reviewed the course contents by looking at the official study guide, this was split into 10 sections, which I condensed into 6 to match our sessions.

To create content for each sessions slide deck I leaned heavily again on the official study guide and used the questions asked within each section to create Q&A style slides.

For the initial answers I utilised the awesome Swift Otter study guides that provide great responses to each of the questions in the official guide.

I then customised these further by either rewording questions or even adding supplementary questions where I felt relevant* and replaced many of the initial answers with my own responses based on my own experiences and added in code snippets to support where required.

*Again as noted earlier, the main motivator was improving staff skill / knowledge. If I felt the exam didn’t cover a topic that I thought was still useful within the remit of learning Magento 2 frontend development then I covered it. Having more context helps to reinforce understanding of the subject matter in general, which benefits greatly when you have a scenario based exam.

What I ended up with was 6 six slide decks containing a total of over 630 slides!

An example of the Q&A style slides with code examples.

At the end of each slide deck I outlined approximately 3 code challenges based on the content of the slides and a link to any code examples I had to reinforce the code embedded in the slides themselves.

The practice tests were one area I needed no input for, I again utilised resources from Swift Otter, who provide an excellent selection of 48 practice questions specific to this certification.

Preparing the participants and setting expectations

I ran an introductory session for the team and outlined how the certification process works (as for many this was their first Magento exam) and the plans / schedule for our course.

I got a few gasps when I mentioned we we’re aiming for a 4 week intensive course, but everyone was onboard by the end of the session and I outlined the key pillar-stones of our programme:

  • Work hard (revise)
  • Unlimited support for anyone that needed it at any time
  • It’s ok to fail, so long as you try

The last one I feel was important to discuss as it removes some of the element of fear and encourages a safe and supportive learning environment.

Running the course and monitoring progress

After our initial overview the starting point of the course was to get everyone to take a practice test cold, no revision / no sessions, just a chance to get a feel for where everyone was at with no expectations or goals to meet.

We purchased each team member a months worth of unlimited retakes for the Swift Otter practice questions and I got everyone to give it a go and provide their score and breakdown by section to me.

No one passed first time and scores ranged from about 30% to 60% (the pass rate is 63%).

The next day we began our first session and immediately it was clear the Q&A format was the way to go (at this point I’d only written the first sessions slide deck). This approach ensured participation of everyone in the class and that they stayed engaged.

At the end of each session we generally had free time left for the team to go away and look into the code examples and have a look into the challenges set.

Every week (2 sessions) I asked the team to take another test and I collated all the scores and the breakdown per area into a Google sheet and used this to help me monitor progress throughout the course.

Anonymised version of the sheets I used to track progress based on practice test results

Essentially we carried on in this way for the first 3 weeks until we hit the revision / exam week.


Exams

Preparing for the main event

At this stage we had 2 sub groups within our study group based on practice test results, which was to be expected as they could essentially be split into the following:

  • Those who had either or both numerous years of Magento (1 or 2) experience and substantial experience of working with the Magento 2 frontend day to day
  • Those new to Magento (less than one year) and / or minimal to no experience of working with the Magento 2 frontend

We had 4 in each group and we took the joint decision that the latter group would delay taking their exams for a little longer, whilst the other 4 went straight in.

After just over a weeks sabbatical for Christmas / New Year the second group came back in for a for a further weeks revision before themselves heading in for their exams.

Revision sessions

The sessions for revision were tailored around the common weak areas I’d highlighted from the practice test scores (surprise, surprise, Knockout was one of those areas!) and the Q&A format of the original slides again worked well here for validating knowledge learnt throughout the course to date.

We also put more focus on code challenges / examples during these sessions, even doing some ‘code along’ type scenarios for some areas. The other thing we did, which was of great use, was run through the practice test as a group and review the answers at the end (we got 1 wrong!)

Exam setup

We decided to make use of the option to take the exams remote and used our meeting room as our testing centre. I won’t go into further detail on how we set this up as Andreas von Studnitz at integer_net already has a great write up on this.

However, I feel being able to take the tests in a comfortable and familiar environment is a big help for those taking the test (I’ve taken 2 of my certifications this way in the past also), plus it saves on travel costs and loss of time for travel etc.

The results…

I’m delighted to say since we began a little under 6 weeks ago we’ve now got a further 7 ‘Magento 2 Certified Professional Front End Developers’!

Out of the first group of 4 everyone passed first time (after just 4 weeks from the course start) and from the second group we had 2 who missed the pass rate by such narrow margins it could be deemed almost cruel - 1% and 1.5% respectively!

Following that we’ve had one successful retake already, with other the scheduled imminently.

Update: we had our final retake this week (Monday 21st January 2019) and I’m now delighted to share that all 8 of the team that were involved are now certified!

To say I’m proud of the team is an understatement, everyone put their all into the process, regardless of their experience levels and prior expectations, and I think the results speak for themselves.


The outcome

The biggest external impact is obviously our standing within the Magento Solution Partner listings. Just a couple of weeks ago, we had just five Magento 2 certifications, four of which were my own!

Now we’ve got a got a total of 12 certifications across 8 different developers and fingers crossed that’ll raise to 13 and 9 respectively very soon!

We’re now up near the top of the rankings for solution partners in the ‘Professional’ tier in Europe (and the world) and sitting amongst some very respectable agencies as you can see!

Most importantly the course has definitely had a positive impact on the skill level of the team members involved. The process also helped to create a bond between them and an unforeseen, but very welcome side effect, was the collaboration / co-operation they provided one another, especially when working on code challenges and during the revision phase.

I think it’s also given the wider team a new found respect for frontend development, especially in relation to the current Magento 2 stack and the amount of complexity it has and the skills needed to master it.

Lastly, the whole team has felt a boost, even those not included in this particular course, and everyone is excited to start their first (or another) certification.


What next?

We’ve now outlined the further certifications / progression paths for each member of our team and we’re aiming to have over 50 certifications by the end of year. For an agency with a team of around 25 (~60% developers) I’d like to think that’s a fairly ambitious goal, but I’d rather try and fail than not try at all!

We’ve picked 2 more certifications to aim for in our next round of training: Solution Specialist for mostly our non technical side of the team and Associate Developer for the majority of our development team. We’ll then follow up with further certifications later in the year, likely including those yet to be released (such as PWA).


Learnings

Improvements

This is mainly a list for myself in order to be more organised and provide an even better course!

  1. Prepare slide decks further in advance of the sessions!
  2. Create a full suite of working code examples, not just examples embedded in slides. This will probably coincide with another ‘small’ project I’m working on.
  3. Spend (or provide) more time for participants to spend working through code examples and even review output.
  4. Book exams sooner, they can book up quickly if you leave it till last minute and once booked they can be rescheduled anytime up to 24 hours before the exam at no cost. It also makes everything feel ‘more real’ for the exam taker once the exam is booked!

Top tips for success

I thought I’d provide some of the things that worked well from our process, but there are no silver bullets to be found here I’m afraid…

  1. Pick a course leader / subject expert: choose someone (or perhaps multiple people) to lead the line, be the advocate and ensure they are passionate about what they are teaching. The success of your students depends upon this more than anything else.
  2. Dedicate time: plan in the required time to undertake the training sessions, provide time for revision and of course the exams themselves. Make sure everyone in your company (from management down to junior staff) is aware and on board otherwise you’ll find you’ll always de-prioritise it over billable work.
     — 
    I’d be lying if I said we had no interruptions during our sessions, but these we’re reserved for what we deem ‘critical incidents’ only and thankfully we had 1 real instance of this during the whole course where 1 or 2 people had to jump out of the session for a small period of time.
     — 
    Also don’t under estimate the time your course leader needs. Those 630+ slides took me a good 3-4 working days to put together, never-mind the rest of the material and general management of the course.
  3. Manage / monitor practice test usage carefully
     — 
    There are only 48 questions in the practice tests and you can get full feedback on the questions you got wrong included the right answers. It’s very easy to fall into the trap of memorising the answers, meaning you’ll ace the practice test. However, this then means it’s no longer useful as a measure of how well prepared for the exam you are. Swift Otter do provide a ‘readiness for exam’ metric in their results, which they note is in beta and we didn’t feel it was of huge value at this time (but I’m intrigued to see where they take it)
     — 
    Essentially, I was very strict about practice test usage and whilst I didn’t enforce tests being taken only once per week, I advised not to overtake the test and not to reference the correct answers until the final revision week.
  4. Take it seriously, but have some fun: that might sound contradictory, but it’s not…
     — 
    Treat the subject matter and the difficulty of it with respect and work hard. Unless you know this stuff inside out and can write XML with your eyes closed and one hand behind your back then I can’t emphasise enough how important revision is to your chance of success.
     — 
    However, when you’re running / participating in sessions you don’t want it to be dry as everyone ‘switches off’ / loses interest. Injecting some humour and student participation helps make things memorable and reinforce concepts – especially if you can relate them to a real world use case / scenario. For each our sessions I ensured the slide decks started with a meme / gif poking fun at the topic which always meant we started off on a positive note and lightened the mood.
My choice of gif to begin the Knockout JS slides! Source: https://gfycat.com/meageroblongastrangiacoral

A big thank you to…

My fellow directors / senior management team at Fisheye for agreeing to take the leap and entrusting me to roll out this plan.

Swift Otter – the study guides not only saved a ton of time in creating resources, but the practice tests were a great way to validate and monitor progression and well worth the small fee. As many others have said before me these resources are invaluable if you’re taking any Magento certification.

Peter Manijak (Head of Certification & Training Programs at Magento), everyone associated with certifications at Magento and those in the community who have helped with creating the exam questions.

Want to know more?

Finally, if you’re interested in knowing any more about any part of this or are interested in doing the same thing at your agency then feel free to reach out. If you want to discuss anything further with me or about what did and didn’t work for us then get in touch, Twitter is usually best place to get hold of me.