Agile Certifications are Wrong!
Kent Beck, the father of Agile, labelled it: “dishonest”, “a pyramid scheme”, & “cancer”. Be aware of those ‘certified’ agile professionals.
Most IT people have heard of the Agile Alliance, a kind of governing body behind Agile. We also know that training/certification is a huge market now 🤑. You might have worked with or bumped into some scrum masters and agile coaches. However, there is no “Certified Agile Coach” according to Agile Alliance.
My interest in Agiles started in 2000 after reading the classic “Extreme Programming Explained: Embrace Change” by Kent Beck, the father of Agile. I presented the XP and Agile at one team’s brown bag meeting, the project manager ( a fan of Waterfall) hated the idea and commented: “it was a cowboy act”. I ignored him and continued reading/learning the agile stuff from Kent Beck, such as TDD and Martin Fowler, such as refactoring, in my spare time.
I worked on my first real agile project in 2005. The six weeks of pair programming with my mentor, a world-renown programmer, totally opened my eyes and changed my view of programming and software development. In 2006, I renamed my company to “AgileWay”. It is fair to say that I entered the Agile world earlier than most IT professionals. More importantly, I have been practising most of the original agile practices, such as “physical, non-digital user story cards”, “Done, Done with automated end-to-end tests” and “daily-production release”, faithfully in developing all my own apps (and client projects as well), with great success.
To my knowledge, the creators of Agile Manifesto dislike the idea of Agile Certification, hence there is no Agile certification by Agile Alliance. Though it will be a gold mine, Agile Alliance says NO to it.
“We are not a certification body and do not endorse any certification programs.” — Agile Alliance
In the article “AGILE IS DEAD (LONG LIVE AGILITY)”, Dave Thomas (a co-author of the Agile Manifesto and the classic “The Pragmatic Programmer” book) wrote: “The word “agile” has been subverted to the point where it is effectively meaningless, and what passes for an agile community seems to be largely an arena for consultants and vendors to hawk services and products.”
hawk — a person who preys on others, as a con artist. (dictionary.com)
The whole “Agile Training then Get Certified” process is bizarre
Kent Beck, the father of Agile, described the dubious training-then-certified process in this interview.
“You attend a 2 day training, and you get this title, and you can put CSM: Certified Scrum Master after your name, and it didn’t actually mean anything. It should have been AST: Attended Scrum Training….but certified, whoa, who doesn’t want to be certified…Scrum, okay, already with the branding. Master! Who doesn’t want to be a Master? It’s a lie though. After two days, you’re not a master, anyone who certifies you is lying, and to me that whole edifice, certified scrum trainers, certified scrum trainer trainers, and then blah blah blah, it’s starting to look like a Pyramid Scheme to me. And none of it is honest. It’s built on this “hey, I want to look better than I actually am”….and I brought this up at the time, and the answer was “but nobody would come to the classes then!” Okay? And then…? I’m not clever enough to build an edifice on deceit. And this is going to piss some people off…I’m back! I’m off the goat farm. Look out!”
In reality, however, the demand for Agile Certification is high (for example, so-called ScrumMaster certifications) despite the fact that certifications do not apply to Agile.
Certified Scrum Master and certified SAFe Agilist are probably the two most well-known agile certifications. I worked with a few of those who had such certified titles, but realised sadly that none of them knew real Agile. Thus, I agree with Kent Beck, most of them are dishonest people.
I am not against training on useful tech skills, my company offers training on test automation and continuous testing, but no certifications. Upon the attendants’ request, I can provide “Attended Zhimin Zhan’s Web Test Automation Training”, but that would be all. A potential marketing partner suggested certifications (for more financial gain), which I declined.
As a real test automation engineer/consultant, I value honesty and integrity. Also, for those who value the certfication paper more than the knowledge & skills, they will not be able to master test automation even though they attend my training as it will require certain personal attributes to be successful in this area.
Those Fake Agile “Certified Professionals” are often worse than those who have zero knowledge of agile
The “certified professionals” usually introduce bad practices, such as “Estimating User Story Points” and emphasize non-essential and wrong processes such as velocity charts, and the use of Jira and Retrospectives. Some even give those bad practices a fancy name: “Agile Ceremonies”.
Let’s hear what Kent Beck (again, the father of Agile) had to say about those ‘Agile Ceremonies” which almost made him cry.
I was in South Africa, at Agile Africa, and somebody came up to me and said “Well, we want to do software development, but we just can’t stand all this ceremony and Agile stuff. We just want to write some programs.” And tears came into my eyes…like…how can it be that we who set out to refocus development on essentials and get rid of stuff that didn’t matter, how can it be that we’re right back where we were 20 years ago? Like how can it be that “this is too much ceremony”? … No, this is wrong. I don’t know what to do about it.
By the way, you can hear Kent‘s talk by clicking the link above (or this Youtube link).
Test Automation is the foundation of Agile
Let’s take a minute to revisit the software development basics.
programmers produce defects along with the code.
Agile means changes often (at all stages)
a change means regression testing is required.Customers are really annoyed at regression errors.
usually quite understandable on defects of newly implemented featuresThe UI of modern apps is dynamic
using JavaScript, AJAX…, etc.“Release Early, Release Often” means a lot more regression testing
early and frequent“The only practical way to manage regression testing is to automate it”
For more on regression testing, check out this article: Regression Testing Clarified
So, … the importance of automated regression testing is quite obvious when it is pointed out, right? If a team’s limited regression testing is performed manually and takes one or more weeks, isn’t it pointless to talk about agile? Hence the certifications held by the agile coach are meaningless unless this agile coach focuses on automated regression testing (like this example).
Now, the question is: have you ever seen real successful test automation that enables frequent high-quality releases? Don’t answer it too quickly, let me show you a correct answer first.
“Facebook is released twice a day, and keeping up this pace is at the heart of our culture. With this release pace, automated testing with Selenium is crucial to making sure everything works before being released.” — DAMIEN SERENI, Engineering Director at Facebook, at Selenium 2013 conference.
I worked as a research scientist in my early career and developed a habit of showing at least two separate sources. Here is another one.
“LinkedIn now releases new web and app features twice per day, compared with once per month before”
“Newly-added code is subjected to an elaborate series of automated tests designed to weed out any bugs”
— “The Software Revolution Behind LinkedIn’s Gushing Profits”
In case you ask, I have been releasing all my software on a daily basis since 2010 thanks to my Continuous Testing process. Some of my clients achieved that too.
60+% work in Agile SDLC is Automated End-to-End Testing
Once a company starts real Agile, the team members will realize that test automation is where the most efforts are. At my company, >70% of all SDLC is on Test Automation, especially automated end-to-end testing via UI. In return, we gained at least 10X productivity.
According to The European Software Testing Benchmark Report 2022, 38% think 51+% (yes, more than half) of SDLC is spent on Testing. For more, check out this article.
If 60+% of SDLC in real agile is automated end-to-end testing alone, before someone shows me the automated test scripts and how they are run in a Continuous Testing server (with past execution history), I am not interested in any other so-called ‘Agile’/’DevOps’ practices.
Also, there is an obvious but often neglected factor in automated end-to-end testing (via UI). There is no excuse for an “Agile coach”, “ScrumMaster”, or “SAFe Agilist” not to implement that. Why? Automated End-to-End Testing is universally applicable. For example, if one coach/tech lead has ever done real test automation (driving Chrome browser to functional testing) before, its practices can be directly used on another web project with little or no changes. Since 2005, except for the client projects led by my mentor and me, every so-called ‘Agile’ software project I witnessed was fake. Many so-called ‘agile coaches’, ‘scrum masters’, and ‘SAFe Agilist’ are fear of Test Automation, i.e. the foundation of Agile. These fakers who claim ‘loving agile’ are fear of real Agile. Sounds crazy, right? A Chinese idiom described that over 2000 years ago.
Finally, I want to point out that I am not against doing certification for learning purposes. If the purpose of training is to get certified, it makes no sense at all. As Kent Beck said: “It didn’t mean anything”. If a business analyst or IT manager wants to learn real Agile, there is a practical and fulfilling way. Check out the following articles: