Software Engineer Hiring Anti-Pattern #3: Overemphasizing 'X Years of Experience'
Years of experience don't necessarily align with skill levels.
In this series:
Anti-Pattern #1: Asking About Impractical Knowledge the Team Hasn't Used in Years
Anti-Pattern #3: Overemphasizing 'X Years of Experience'
It's quite common to see job ads specifying the 'minimum years of experience' required. Here are two examples I quickly found on an Australian job-seeking site.
“Minimum 5 years' experience in a test automation role.”
“7+ years’ relevant work experience in Java”
Honestly, I don’t agree with that. For example, before 2005, I worked as a Java developer for eight years, with the last five years in a senior developer contractor role. However, after learning E2E test automation (not at a master level yet) through pair programming with a world-class programmer, my coding productivity increased at least three times within three months, and then 10X+ the following year.
See, software design skills (and productivity) are not necessarily aligned with the number of years of experience, except the first two years (maybe).
A motivated, self-learning-in-spare-time young programmer can surpass a senior engineer with 20 years of experience. Many readers may resonate with this. The software industry is rapidly evolving; for instance, my past experience with CORBA, EJB, UML, DCOM, BizTalk, and SOAP has become nearly irrelevant today. Nowadays, I develop apps in Ruby and C++ and create/maintain automated end-to-end test scripts in Ruby, despite having 15 years of professional experience in Java programming.
Certain software skills are highly applicable to nearly all software projects and accumulate over time, such as Linux, VI, shell scripting, text manipulation, XML parsing, design patterns, automation scripts, end-to-end test automation, domain-driven design, continuous testing, …, etc.
However, these skills are typically acquired through proactive self-learning or mentoring, and are not dependent on years of work experience.
I’d like to share a story about my daughter, Courtney. Fresh out of university, she began a three-month internship at a major telecom company, where her skills in test automation and continuous testing (I taught her) stood out. Impressed by her accomplishment in such a short time, the team leader recommended Courtney for a division-wide video conference presentation (during the COVID era). This caught the eye of a senior test automation engineer, who reached out to Courtney and mandated her to work with Playwright.
Courtney quickly implemented a suite of 29 tests in Playwright and set up daily runs (one Selenium suite and one Playwright suite) on the BuildWise Continuous Testing server. Interestingly, it turned out that the senior engineer had been struggling to maintain merely 12 Playwright tests, with several of them not running reliably. Yes, a fresh graduate crushed a seasoned senior test automation engineer! For more details, check out this article, “An IT Graduate’s Frustration with a Fake ‘Senior Test Automation Engineer’”.
A few years ago, I and my daughter published the book “Web Test Automation in Action: Volume 1, Hands-On Exercises with Selenium WebDriver and Playwright”. Despite being in her early 20s, Courtney’s technical capabilities in end-to-end test automation make her well-suited for a senior or principal role.
Not only my daughter, but many of my mentees have also accelerated their career paths quite rapidly. Here’s another example: An Inspiring Story of My Highly Successful Mentee: Transitioning from a casual Non-IT worker to a Test Automation Engineer Earning a Six-Figure Salary in Just Seven Months.
The fastest path to success is finding a great mentor. Since many people neglect to invest in their own growth, this step becomes even more valuable.
Related reading: