Learn how Igor Dorovskikh, CEO and founder of web and mobile development company Engenious.io, navigated the shift from manual QA tester to test automation engineer without quitting his day job.


Imagine shifting your career from the traditional role of manual QA to the trailblazing sphere of test automation—without having to resign from your QA testing job.

Sounds too good to be true, right?

I’m here to tell you it’s not and to show you that my own career path is living proof.

From the bottom floor of manual testing at tech giants like Barnes & Noble, Expedia, and Apple, I’ve navigated my way up to spearheading test automation initiatives as an engineering leader at Tinder. 

Today, I’m the founder and CEO of my own app development company.

It was hard work but worth it. In today’s rapidly evolving software development landscape, the role of test automation can’t be overstated. 

Automation is an absolute hero of efficiency, precision, and unparalleled quality in our development processes.

If my journey has taught me anything, it’s the invaluable role test automation plays in fostering progress. (Plus, it pays way better and is way more interesting than manual QA.)

If you’re ready to join up but you’d rather not upend your life, you’re in the right place. 

In this post, you’ll get an overview of test automation, and I’ll clue you in on some things to consider when deciding whether to go the Android, iOS, web, or back-end app development route.

Best of all, you’ll get the lowdown on how I transitioned from QA tester to test automation engineer without quitting my day job.

So, let’s get to it!

Section 1: Understanding the Foundations

The Basics

You’ll be pleased to know that the transition to test automation begins with a deep-rooted understanding of manual testing. I know now that my early days in the trenches, learning the ins and outs of software testing cycles, were critical to laying the groundwork for my later success in automation. 

It’s crucial to grasp the essence of manual testing before adding the complexity of automation into the mix.

For example, for iOS, you need an understanding of Swift (or something similar) and the Xcode development environment. This knowledge will be crucial when the time comes to learn how to work with XCUITest (and that time will come).

All this is to say, be patient and don’t lose heart. 

All the basic stuff you’re learning now is part of the process. Put your heart into manual testing now, and you’ll be a better test automation engineer later.

Resolving the “Chicken or the Egg” Dilemma

The “chicken or egg” dilemma is a common starting point in the test-automation journey: Should you first dive into programming or start with learning automation tools? 

I’ve come to advocate for a balanced strategy that’s served me well over the years. 

A solid understanding of programming and the development environment is crucial. For me, mastering languages relevant to my domain and understanding how to leverage development tools were stepping stones to creating efficient automation scripts.

Therefore, it’s really important to grasp the basics of the programming language most relevant to your domain. If you’re in the iOS realm, Swift is an excellent starting point for beginners.

Understanding the development environment and getting a feel for basic app development will lay the groundwork for what comes next.

Choosing Your Domain

Specialization is king. Whether web, iOS, Android, or back-end, picking a domain and becoming proficient in it is essential. Your specialization will make you a valuable asset and will open doors to tailored opportunities in test automation. There are a couple of important factors to consider when deciding which route to take, one of which is pay.

As you can see below, the pay differential (listed highest to lowest) is significant. According to Indeed.com, the average back-end developer pulls in more than twice as much as the standard web developer:

back-end – $157,188

Android – $128,802

iOS – $125,661

Web – $79,788

However, Mom was right: There’s more to life than money.

When making your decision, ask yourself what you enjoy doing most. After all, this may be your job for the rest of your life. 

And a few hundred thousand dollars aren’t worth it if you’re miserable.

👉 IMPORTANT POINT
Regardless of your preferred platform, if you’ve got a manual QA job, stay where you’re at. If Android would make more sense than back-end automation at your job, go with Android. 
You’ll get a foundation in automation, and you can always learn your preferred platform later on.

Building a Portfolio

Showcasing your skills through a test automation engineering portfolio is your ticket to demonstrating your worth.

For my portfolio, I picked projects highlighting my ability to use automation to streamline testing processes and improve efficiencies. What you include will depend on your industry and interests.

Mobile is currently the trendiest industry. Since the world is focused on mobile, consider incorporating at least one mobile test automation project.

PRO TIP: Include more than just a basic sign-in process in your portfolio. Instead, display complete examples of how your code works across different pages.

Whatever your specialization, your portfolio should reflect two things:

  1. Your technical capabilities
  2. Your ability to solve testing challenges using innovative solutions

Section 2: Finding Your Opportunity

Learning by Doing

To echo Aristotle, “For the things we have to learn before we can do them, we learn by doing them.”

It’s ironic but true. To start with test automation, you have to dive in and start doing it.

My first foray was at Barnes & Noble when I had the opportunity to automate the web reader using Java, TestNG, and WebDriver.

That’s precisely the type of hands-on, real-world application experience you need to learn the ropes. You can also find opportunities at your current job as a manual QA. Just give it some thought, and keep reading.

Choosing a Real Project

Identifying the right project to apply your automation skills is key. Ideally, you want to find opportunities that:

  • Challenge you
  • Have a tangible impact on your team’s efficiency

Look for the pain points in your current processes and try to address them through automation. 

For example, what’s that super slow manual process everyone complains about? Is the process automatable? If so, set to work figuring out how to make it faster with automation.

The great news is that you’re not alone. There are tons of online resources available to help you figure things out.

You can start with Engenious University’s collection of free materials. We’ve got:

You can even do a free 30-minute consult session with one of our industry-leading engineers.

What if You Don’t Have Access to Automation Opportunities?

You might work at a non-tech job, have a QA job without automation opportunities, or be unemployed. 

In those cases, you’ll have to find your own automation opportunities. But don’t worry!

There are endless open-source projects out there. All you have to do is find the right one and get involved. To find an open-source initiative that fits your plan, just do a quick Google search.

Section 3: Take the Deep Dive

How I Dove In

At some point, you’ve got to go for it and start automating. You’ll make mistakes and might even break something and have to fix it. But failure is part of the process, so expect, embrace, and learn from it.

Following is the balanced learning path I took, step by step. It’s also what I recommend to anyone standing at the crossroads, wondering whether to tackle programming languages or automation tools first.

  • Building a simple app helps you grasp the fundamentals of the development process, making it easier to understand where and how you can apply test automation effectively.
    It lays a practical foundation for learning how to automate tests by giving you a firsthand look at the application flow, behavior under different conditions, and points of potential failure, all of which are critical for crafting meaningful automated tests.
  • Initiating automation with basic tests is an excellent early step in learning test automation. It allows you to gradually familiarize yourself with test automation frameworks and tools without becoming overwhelmed.
    This approach helps build confidence and competence by tackling manageable tasks, laying a solid foundation for understanding more complex testing scenarios and automation concepts.
    Over time, as my understanding deepened, I refined these tests and ventured into more advanced concepts like CI/CD integration, network mocking, and parallel test execution.
  • Mastering Git, GitHub, and CI/CD Tools—Proficiency with these tools is non-negotiable. Automation tests inevitably become a part of the development process, requiring familiarity with version control and continuous integration tools like Jenkins.

Then, I progressed to using XCUITest for automation. With this iOS-tailored tool, I could apply my understanding of the Swift programming language and app development to create efficient and effective automated tests.

This phased approach made the transition to test automation smoother and ensured that I built a solid foundation in programming alongside my automation skills.

Test Automation Frameworks and Tools

It’s essential to familiarize yourself with the most commonly used test automation tools and frameworks. 

Learning to navigate through tools like WebDriver and frameworks like TestNG was pivotal during my transition. Each tool and framework has unique advantages and uses cases, and understanding which to apply and when is key to effective automation.

The list of commonly used automation platforms and tools below will get you started, but this is one of those things where you can never stop learning:

  • Selenium: Web automation testing across different browsers and platforms
  • Appium: Mobile automation for iOS and Android apps
  • Espresso: Android’s UI testing framework for fast feedback
  • Robotium: Simplified Android UI testing, primarily for black-box tests
  • LambdaTest: Cloud-based cross-browser testing platform
  • Frank: Automated iOS testing, supports cucumber framework
  • ACCELQ: Codeless test automation and management for web and API.
  • Cypress: Developer-friendly test automation for modern web applications.
  • XCUITest: Apple’s UI testing framework for iOS apps.

Section 4: Showcasing Your Expertise

Your Resume and LinkedIn

A solid LinkedIn profile and resume are potent tools for highlighting your automation expertise. 

I’ve learned to showcase not just my skills but the impact of my work through quantifiable achievements and detailed project descriptions. Following are some additional essential tips:

  • Emphasize Automation Skills: List languages and tools like Selenium and Appium.
  • Detail Projects: Describe automation projects, tools used, and results.
  • Include Certifications: Add relevant courses and certifications.
  • Quantify Achievements: Highlight how you improved processes or efficiency.
  • Professional Photo: Ensure a professional LinkedIn appearance.
  • Active Engagement: Share and comment on industry-relevant content.

These tips give you a great start, but a lot more goes into marketing yourself. Consider a resume or LinkedIn specialist, or look into EU’s job prep resources.

Networking and Community Engagement

Networking and community involvement will supercharge your job hunt efforts—and the best part is that they’re fun!

Attending meetups and conferences and engaging with online communities like LinkedIn and Discord have opened up so many new avenues for learning and career opportunities for me.

That’s why EU has an exclusive Discord community for our students, where they can interact with one another and industry experts.

Join our community of professionals on Discord!

Engaging through content creation is another awesome way to network. It can also help establish you as a thought leader in automation testing.

Not only that, but sharing your journey and insights through platforms like YouTube or GitHub enriches your own journey, allows you to give back to the community, and supports your growth.

I’ve learned the effectiveness of this kind of engagement from personal experience.

Section 5: Landing Your First Automation Job

Applying Within

It’s a no-brainer. If you already work in tech, look for automation opportunities within your company.

Leveraging my existing network and showcasing my newfound skills led to countless new roles instrumental in my career progression.

Choosing the Right Path

If you don’t work in tech, don’t work period, or don’t like your tech job, you’ve got a decision to make.

There’s a big difference between working for a startup or an established corporation. Each has pros and cons, so familiarize yourself with them and think hard before you decide.

You’ll also need to determine the level of position to aim for. Research the roles and requirements for various test automation jobs, then do an honest self-assessment before you send out applications.

software tester career path from https://www.payscale.com/career-path-planner?tk=nav-individuals

https://www.payscale.com/career-path-planner?tk=nav-individuals

I’ve always carefully weighed all the options and all the pros and cons based on my career aspirations and personal growth goals. This decision-making process has been a decisive factor in getting me to where I am today.

Prepare for Interviews

To be ready for interviews, you’ve got to take a deep dive into the theoretical and practical aspects of test automation. And it’s a good idea to reach out to experienced engineers for advice.

In my webinar, I plan to share insights into the interview process to help prepare candidates for what lies ahead. (Spoiler: It’s free to attend!)

For now, the following quick tips can help you start wrapping your mind around the interviewing process:

  • Understand Core Concepts: Understand test automation fundamentals, such as frameworks, test case design, and the difference between black-box and white-box testing.
  • Know Your Tools: Have hands-on experience and theoretical knowledge of key tools (see the list above) and programming languages relevant to the role.
  • Explain Your Process: Be prepared to discuss how you approach writing, maintaining, and optimizing automated tests. Include how you select what to automate.
  • Discuss Challenges: Talk about challenges you’ve faced in test automation and how you overcame them, highlighting problem-solving skills.
  • Showcase Projects: Bring examples of projects you’ve worked on. Be ready to explain your role, the tools used, and the outcomes.
  • CI/CD Knowledge: Understand Continuous Integration/Continuous Deployment (CI/CD) pipelines and how automated testing fits within them.
  • Version Control: Be familiar with version control systems like Git, emphasizing collaboration and code management in automation projects.
  • Prepare for Technical Test: You may be asked to write or review code. Practice coding exercises and review your own projects’ code. (Ideally, have an experienced engineer review it, too.)
  • Soft Skills: Communicate clearly, show teamwork and adaptability, and demonstrate a continuous learning mindset.
  • Ask Questions: Prepare insightful questions about their automation processes, tools, and team dynamics to show interest and assess if it fits you.

Check out our quick video tutorial:

engineering interview preparation
engineering interview preparation

Section 6: Continuous Learning and Growth

Staying Updated

In the fast-paced world of test automation, staying up-to-date with the latest tools, trends, and techniques is essential.

The best ways to accomplish this are networking (see above), online courses, and online informational resources, like blogs. Below is a list of some of the top informational resources to get you started:

  • Engenious University Blog (of course 😉): Insights and tutorials on the latest in software testing and automation
  • LambdaTest blog: Updates and tips on cross-browser testing and test automation tools
  • Guru99: Comprehensive guides and tutorials for beginners in software testing and automation
  • Trishkhoo: Expert advice on continuous testing and DevOps practices

Set aside time to seek new learning opportunities and discover what’s new in best practices regularly. It’s the only way to keep your skills relevant and competitive.

Wrapping Up

My journey into the realm of test automation has been a path of continuous learning, growth, and opportunities— filled with challenges and rewards. 

The best part? It’s allowed me to explore new career horizons without stepping away from my roots in manual testing.

By focusing on specialization and leveraging the power of networking and continuous learning, you can also transform your career and enter the pioneering world of test automation.

Embrace the journey! Take advantage of every opportunity to learn by doing and connect with the dynamic community of test automation professionals.

If you do all this, you’ll be well on your way to becoming the next super-elite test automation engineer.

Start by saving your seat in my upcoming webinar:

Accelerate your journey from QA to Developer—your future starts now!

Do you have any questions about transitioning to test automation? I’d love to answer them! Please ask away in the Discord!

Leave a comment

Your email address will not be published. Required fields are marked *