Barely half a year ago, I couldn’t imagine myself leaving my job, changing industries, let alone moving to another city! But, the impossible actually happened, and I have spent the past six months working as a Junior Quality Assurance Engineer at Monterail.

If you’re wondering what a quality assurance engineer does, what sort of responsibilities come with the job, and what you need to know before applying for this particular position, make sure to read on, as in this post I’ll be taking you on a whole journey through the world of testing.

Let’s get to it, then, shall we?

What Does a QA Engineer Do?

The Internet is rather full of various definitions of the Quality Assurance Engineer position. But for the sake of clarity, let’s stick with one. In simple terms, a QA Engineer verifies whether an application works correctly, and reports any detected errors and instances of non-compliance with the specification of a given app. The Quality Assurance Engineer works with the product development team and other people responsible for drawing up its requirements to ensure that the final product is shipped without flaws.

My role as QA engineer goes beyond simply testing the quality of the product. It also uniquely positions me to bring fresh approaches and suggest new ideas about how the product should be designed. My role also requires me to have an overall view of the quality of the Agile process. As I examine a variety of tasks performed by different team members, I’m able to identify best practices that can help the rest of the team improve and develop great products.

Sounds pretty ambitious, doesn’t it?

Indeed, being a QA tester carries considerable responsibility, and it’s far from a piece-of-cake job. In the early stages of your career in QA, it’s particularly important to have someone to learn the ropes from. Our Monterail QA team currently consists of six members. That includes people with considerable job experience as well as junior engineers like myself.

During your first few weeks on the job, amazing people will be introducing you to the world of professional testing. They will help you choose the tools that will be useful at work and support you during and after your onboarding.

Additionally, each team member has a Mentor who, apart from giving feedback from other team members, also helps you prepare your professional development plan. Once a week, the QA staff gathers for an all-hands meeting, at which we learn new things, brag about our recent accomplishment, and talk about the difficulties we encountered.

How I Became a QA Engineer

You may be wondering what led me to apply for this position in the first place. Before I decided to make the change, I burnished by professional credentials working as a technical specialist at a marketing company in Warsaw. While the stint allowed me to gain and hone many skills in a fairly short timeframe, I still felt that I wanted to go further in the field and take on new challenges.

And it was this lack of new opportunities coming my way that pushed me toward looking for a job that would better suit my growing ambitions.

I liked my job as a tech specialist, because I was in touch with my clients and it gave me the opportunity for professional development. I knew, however, that the perfect combination would be a place where I could use both my technical and soft skills.

One day, I came across a book about software testing. It described the typical workday of a software tester and it appealed to me on so many levels that I knew this was the career path for me as soon as I read it. This, however, was only the beginning of my journey.

What did I have to do to land my dream job and what’s the best way to prepare for an interview for the position of QA Engineer?

Read on and I’ll make sure to answer those questions for you.

What You Need to Know as a Junior Tester

As a QA Engineer, both your hard and soft skills are equally important and both will come into play. Below, I’ll focus on the most important skills I use on a daily basis, to give you a better feel for what you might expect at the interview and help you approach it with a little more confidence (and be more confident on the job later down the line).

Technical Skills

General testing knowledge

It’s important to have a fundamental grasp of software testing principles and software testing techniques. Knowing the protocol for reporting bugs and the overall structure of the software lifecycle could be really helpful, too.

Fluent English is a must-have

Most of our clients come from English-speaking countries and many members of the Monterail team hail from abroad and communicate in English as well. That said, it goes without saying that it’s absolutely vital that you speak the language that most of your professional communication will take place in.

Experience with version control systems

Knowledge of version control systems really comes in handy when, for example, you want to test specific functions locally. This is an important skill to have if you want to develop further in the field of automated testing, but knowledge of basic commands will be enough to start you off here.

Basic programming skills

Some experience with HTML, CSS, and JavaScript could be seen as a bonus. Skills like these are especially useful when you want to develop professionally in the field, but also if you want to provide genuine support to programmers and not only find bugs, but also suggest ways of eliminating them.

Knowledge of basic console commands

Navigating project directories, creating folders, and deleting files will all be part of your everyday workload. Usually, most of these tasks can be accomplished from the console, so knowledge of its basic commands will be very useful.

Prior testing experience

If you’ve ever used a crowd testing platform or helped test an app or a friend’s website, that’s great! Past testing experience will also help you get the gist of what the day-to-day workload of a tester is like and make sure you really like doing it.

Responsiveness is key. The QAs check how an application works and looks on various devices.

Soft Skills

Communication skills

Working with your project team, you will often have provide some clarification to either involved developers or a Project Manager. Communication skills are very useful in this respect, as they smoothen collaboration between individual team members and ensure that potential errors are discussed openly.

Attention to detail

A job in testing will require a sharp eye for even the smallest detail, which will help you spot all the potential flaws in the product and notice every possible area for improvement, both of which you should swiftly report to your PM.

Some multitasking ability

There will be times when you will have juggle a few things at the same time, and will need to be able to prioritise tasks and work in blocks of time.

Ambition and a drive to learn new things

To excel at this position, you need to have a constant desire to develop professionally and expand your skills—this, in turn, will help you discover new opportunities, give you a feeling of satisfaction, and help you get even better at what you do.

The tester has many opportunities to develop their skillset. First of all, it's important to know that in addition to manual tests, you can move toward executing automated tests that require advanced programming skills.

Here at Monterail, we’re huge fans of Cypress, a tool that facilitates writing automatic tests. If you want to learn more about Cypress, and why we like it so much, I'd recommend giving our article a read.

Things to Love About Being a QA Engineer

Why am I so excited about working in QA? The reasons are many, so bear with me as I list those I consider the most important below.

Satisfaction and fulfilment

For me, the most important thing is the indescribable feeling of creating applications that have potential to change someone's life! That’s where our mission of delivering meaningful software rings particularly true.

Personal growth

Every project is different, requires learning something new, cooperating with different people, and using new tools. Add efforts to understand the business side of the project you’re tackling on top of that and you’ll see that a job in testing has very few moments of boredom.

Moreover, your Mentor will be there to help you plan your professional growth pathway and challenge you with new tasks, so that you can overcome your weaknesses and make good use of your strengths.

Team

At Monterail, we have brilliant tech minds and great personalities. Here, you will always feel accepted and welcome for who you are as we work and grow together. After all, no job would ever be done without great people around!

Contact with the latest technologies

Being a QA Engineer also gives you a chance to interact with a bevy of different technologies and learn how complicated systems come together to create a working product. If you’re a tech geek, you’ll find this aspect of your job particularly satisfying.

Being the first user

Working in QA means that I am often the first person to test the product from the user perspective and spot any potential errors. Isn’t that just great?

Challenges

Being a QA engineer also involves some challenges, many of which you’ll be facing on a regular basis. First of all, maintaining top quality of the software produced by your company is quite the responsibility and you will be directly accountable for the final result of your team's hard work.

You also need to be prepared for continuous learning—depending on the solution you choose, whether it’s overseeing automatic or manual testing, you will have to constantly hone your skills and grow your expertise.

Another thing that can also be quite challenging in your daily work as a professional tester is the necessity of prioritizing your tasks. Choosing what feature is important enough to be checked first and planning your day in a way that ensures that all given parts of the application work as they should is no piece of cake.

Typical QA Work week

So what does a daily QA workload look like, really? The easy answer is that it involves a lot of testing, obviously. But let’s have a closer look. Every day is different and brings its own set of challenges, but there are certain regularities that might help you predict what’s coming down the line. Each morning begins with a review of the tickets that recently appeared in Jira (a planning tool) and in the calendar. Based on the tasks I see, I plan my day and set priorities for individual tasks.

My typical day begins with a brief “standup,” a meeting with project members during which we talk about the progress of our efforts and the problems we encountered, and we draft up a plan for the day.

According to my calendar, my typical work week can look something like this:

As you can see a typical QA's calendar includes a lot of meetings!

The calendar above shows all of the weekly meetings, but there’s much more to be done every day. In addition to meetings, my responsibilities include checking the features that have been delivered, adding new errors to the backlog, preparing documentation, and learning to write automation tests.

What About the Projects?

So far, I’ve successfully completed three projects and I’m really proud of what I’ve learned over the course of their development.

One of the projects, Edwin, was initially developed for the American market, but will soon be widely available in Europe, too. The application uses a chatbot mechanism to teach the principles of cybersecurity to employees of large companies. Working on this project, I had the opportunity to learn a lot about cybersecurity myself and get to know the Firebase database. One of the project’s biggest challenges included testing the application's responsiveness and its adaptation to various devices and browsers.

The second project in I was involved with, Piktochart, allows you to create professional charts using infographics. This project was quite the challenge due to its complexity. The application required running tests in various environments and browsers, as well as some understanding of the mathematical functions used to create chart data.

The third project I worked on was HumanAct, a social app created for Americans that connects people with similar worldviews. The application had to be adapted to various devices and browsers. While working on the project, I conducted API tests using Postman. The major challenge here was having to pay close attention to potential improvements in terms of UX and running tests from the level of the app’s end user.

I’m currently working on a number of new projects. Each one has its unique challenges and requires the acquisition of new knowledge and skills. Furthermore, I’m currently developing my JavaScript skills in order to be able to write test cases in Cypress.

The last six months in Monterail were a really rewarding experience. I can say without a doubt that working at a software company has been both an adventure and a huge leap forward in my career.

To all those who are still wondering whether they should try becoming a QA Engineer, I wholeheartedly say—see for yourself and you won’t be disappointed!