Career RoadMap for Functional Test Automation Developers

Babu Manickam
4 min readNov 19, 2020

--

All of my articles are free to read. If you don’t have a Medium subscription, you can still read by clicking this link.

Test Automation skills are most demanding in the present market and most of the Senior QA leaders that I work with and network, are advising to choose test automation engineering as a career path and become QA champions in their organization.

What is the starting point to become an automation champion?

Learn a programming language in-depth preferably one of these 4 — Java, JavaScript, Python, or C#.

Vertical vs Horizontal Learning

I personally vote for vertical learning and not a big fan of horizontal. What does that mean? If you learn one language in-depth then you can become an expert in another language may be in weeks. So, learn one language in depth.

For example, if you like to learn Java as your preferred language of automation then begin with a deeper understanding of below listed 5 areas:

  1. How Java (JDK/JRE/JVM) works? on how to design classes, methods, variables, conditional statements, and loops, etc?
  2. OOPS concepts — Inheritance, Encapsulation, Abstraction, Polymorphism
  3. Arrays, String, and Regular Expressions
  4. Specific Collection (List, Set, Map) Implementations.
  5. Exception handling, Basic thread concepts

If you are interested to crack product company interviews, then focus more on data structures and algorithms in addition to above.

Stack 2 — Front end automation tools engineering

The front end automation can be largely broken into — web, mobile, desktop applications. There are several tools available in each of these technologies.

Disclaimer — I have mentioned only the tools and frameworks that I personally used in my last 20+ years of development, test automation engineering experiences over 50+ enterprise customers across the globe.

Web — Selenium, Protractor, Webdriver.io, Puppeteer, Cypress, UFT

Mobile — Appium, Espresso, XCUITest

Desktop — UFT, UiPath

Out of these tools, if you are a beginner to test automation, then learn Selenium Webdriver in-depth preferably with Java bindings due to the popularity and highest market demand.

By the way, just tools alone will not be enough to become a front end automation champion but you need to sharpen skills in -

Design Patterns — Factory, Adaptor, Decorator, Page design, BDD, Proxy

BDD — Cucumber, SpecFlow, RSpec

Runners — TestNg, JUnit, PyTest, Mocha, Jasmine

Reports — ExtentReports, Allure, ReportPortal, ReportNG

Just learning alone does not help!! You need to implement them rigorously with a minimum of 200+ test cases in a short period to become a champion.

Stack 3 — Back end automation tools engineering

The back end automation can be largely broken by protocols and architectures — SOAP, RESTful, GraphQL, gRPC. There are several tools, frameworks available to build automated tests in each of these.

SOAP — SoapUI

RESTful, GraphQL — PostMan, RestAssured,RestSharp,Karate

gRPC — BloomRPC

Considering the need for microservices growing in the present era, focus more on REST and GraphQL will be the best choice. That too, if your learning stack in java, then preferably RestAssured with the integration of Cucumber, TestNG, ExtentReports can be a delicious choice. In addition, spend quality skilling on mocking tools like:

Mocking tools — WireMock, Mockito, PowerMock, EasyMock

If you are automating the asynchronous messages, events — then you may have to skill up more.

Stack 4 — DevOps automation

DevOps is a combination of practices, which automates the processes between teams, in order to build, test, and deploy applications faster. In the DevOps ecosystem — test automation is powered by several tools in the following category:

Code & Build — Git, Bitbucket, Maven, Gradle, WebPack, Slack, Docker

Packaging—Docker, Ansible, Puppet, Chef

Release & Configure — Jenkins, Docker Swarm, Kubernetes, GitLab, GitHub Actions

Out of these — Jenkins, Docker can be a good skill to have, and official certification on these tools can create a wealth of opportunities.

Stack 5— Cloud automation

Cloud automation services simplify provisioning and managing infrastructure, deploying test automation code, automating test processes, and monitoring your tests and infrastructure performance.

There are several cloud providers in the market like AWS, Azure, Google, Alibaba so on. Out of these, AWS leads the cloud with a 32% market share, and during these pandemic days, the demand for cloud automation has grown rapidly.

As an automation developer/lead/architect, you do not have to focus on 300+ services available; rather the following mandatory services can enable your career growth:

AWS Services — EC2, S3, Lambda, SNS, Glacier, RDS, VPC

Especially, the above said AWS services can help you to run your automation tests — both front and backend — in DevOps mode and in a highly scalable and cost-effective environment.

Again, the official AWS certification can accelerate your career opportunities, especially if you are above 8+ years of testing experience.

There is detailed documentation of the roadmap available here and it is a working version.

“YOU DON’T HAVE TO BE GREAT TO START, BUT YOU HAVE TO START TO BE GREAT.” –ZIG ZIGLAR

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Babu Manickam
Babu Manickam

Written by Babu Manickam

Author, Speaker, Mentor and Coach - Test Automation & DevOps

Responses (3)

Write a response