We can't imagine modern software development without functional testing. It's one of the key testing methods that validate compliance of the developed software with the original functional requirements. As a result, functional testing allows development teams to check if software solves users' problems and performs well in certain conditions.
Most project teams at EPAM Anywhere include a role of a Functional Testing Engineer. We set the bar high for our specialists to ensure the best software quality and build a professional community.
We’ve talked to Oleg Fadzeyeu, Senior Operations Manager (ex Team Lead and Resource Manager at EPAM), who has a long and impressive career path at EPAM and EPAM Anywhere. Together we’ll take a look at 7 in-demand skills required for quality assurance engineers as well as career opportunities that software testing pros can explore at EPAM Anywhere.
Since project domains and their technical complexity at EPAM Anywhere vary, required functional testing skills may differ as well. For example, some projects may focus on UI testing only, while others focus on backend or web services testing. To cope with all the versatile tasks, we hire T-shaped professionals with versatile expertise.
Most vacancies at EPAM Anywhere are concentrated around senior-level specialists and more rarely, middle-level professionals. That's why our article will mostly include examples for Senior Functional Testing Engineers.
Typically, a Functional Testing Engineer can perform different roles, including the role of a key Testing Engineer. The Senior title implies that a specialist is able to act like a doer (fulfill the tasks) or a manager (assign the tasks to the rest of a team). To cope with these tasks, Functional Testing Engineers must be able to set up and use an operational environment, quickly onboard with available inputs, and have QA lead skills.
For starters, let's review key hard skills required for quality assurance positions.
For specialists of intermediate and advanced level, it's essential to understand the software development lifecycle (SDLC), Agile methodologies like Scrum and Kanban, and various project estimation techniques. Since our projects use versatile project management approaches and estimation methods, Functional Testers are expected to quickly onboard, follow the workflows established in a particular project, adapt for estimation methods, and make decisions whether the estimation is needed at all and how much time and resources required to perform a particular task.
A checklist to check the requirements in this area:
Basic understanding of key startup development technologies and setting up development processes are a must as it allows a Functional Tester to estimate risks and make necessary tweaks if needed.
Basic skills for intermediate-level specialists include:
Knowledge of HTML and XML schemas are required for advanced-level specialists.
In this section, we outline basic knowledge of HTML and JSON, understanding of the web applications and services management, experience with tools like Fiddler and Charles for all levels of specialists to quickly localize and find bugs, provide excellent description, and fix them.
Essentials of MS SQL Server and Oracle database development are required for intermediate-level specialists to test the backend side of web applications.
The ability to understand the code and the OOP principles will also be a big plus when you need to identify problems in the early stages of testing. Also, basic knowledge and hands-on experience with Linux and Windows administration are nice to have, though aren't critical during candidate screening.
A Senior-level Functional Testing Engineer has a perfect command of gathering requirements, putting the right questions, analyzing the replies, and validating any discrepancies.
Obviously, an advanced-level Functional Testing Engineer must excel at all aspects of functional testing. Below, you'll find a checklist of key competencies for a Functional Tester at EPAM Anywhere:
Our specialists are supposed to be great team players as well as be able to work independently and with little or no supervision. Advanced-level specialists possess excellent leadership, team management, and self-management skills. Working in a team, a specialist must demonstrate QA lead skills: be a great facilitator and project manager, perform knowledge transfer, and act like a mentor and a coach for other team members.
Since EPAM Anywhere offers remote-only projects, perfect candidates must demonstrate great self-management, task prioritization, delegation, and time management skills.
Our Functional Testing Engineers are required to be at least B1+ (Intermediate) experts in English. Since we often gather distributed teams from all over the world, English serves as a communication foundation. Also, this language is convenient for business communication with our customers and key stakeholders.
You can always boost your English level with our massive knowledge base and free English courses available for all EPAM Anywhere specialists.
Let's summarize the skills section. In addition to exceptional functional testing skills and the ability to set up working processes within a team, our specialists professionally communicate in a business context, find a compromise in stressful situations, and know how to safeguard the interest of both customers and team members in conflicts.
Each EPAM Anywhere project focuses on software quality, therefore the role of a Functional Tester is one of the most widespread across our company.
The length of available projects varies. EPAM Anywhere offers both short-term MVP projects that last for a couple of months just like long-term enterprise projects. Working in latter projects, Functional Testers may grow from junior-level specialists to Architects and Lead roles. Even though we at EPAM Anywhere are motivated in assigning long-term projects to our specialists, you can always try different projects, domains, and technologies. Our staffing team starts looking for another suitable project once you're ready for a project change. We ensure minimum downtime between projects, however, this term may extend to a few months.
One of the greatest parts of working at EPAM Anywhere is career development. We offer many options for you to follow depending on your qualification level and skills. Here are typical career paths you can follow at EPAM Anywhere:
Some of the non-typical career paths include moving to automation testing, working with both manual and automation testing, and software development.
Our competitive advantage is that we aren't a purely freelance platform. What we offer is long-term enterprise projects, official hiring, social package and benefits, relocation program, and other bonuses of working for a reliable tech giant like EPAM. Once a project ends, we find you another project to join and minimize (or reduce completely) the risk of staying on a bench.
A dedicated Learning and Development Department develops webinars, workshops, and courses that are available for all EPAMers regardless of their specialization and qualification level. Therefore, we create endless career development paths. If you're an eager learner, you'll find a space to grow!
Oleg started his journey at EPAM 10 years ago as a Junior-level Testing Engineer but didn't settle and started to learn testing fundamentals and various testing types: backend, database, web services, mobiles, and more. After 2,5 years at EPAM, Oleg decided to move on and join another company. Working there, he realized he applied all of his skills and expertise he gained at EPAM. In a few years, he rejoined EPAM as a Senior-level Testing Engineer and continued developing his QA Automation Engineer skills, setting up testing processes, team and Resource management.
One of Oleg's greatest achievements is building a team of A-players that grew from Junior-level Testers to Senior Engineers and Team Leaders. He also managed to set up smooth collaboration processes among different departments and delivery management flow.
Recently, Oleg joined EPAM Anywhere as a Senior Operations Manager and he's happy with this role that allows him to put all of his knowledge into curriculums and career development roadmaps for newbies that join EPAM Anywhere.
While I was working outside EPAM, I applied all skills I had learned at EPAM before. I've realized that EPAM is a perfect place for self-learning and development since the company gives you full access to courses and workshops. If you're a disciplined learner, you'll quickly grow within a company. Whenever I spoke to my colleagues or people that rejoined EPAM just like me, they say they appreciate these unlimited growth opportunities and free learning tools. That's great that EPAM Anywhere opens up all these opportunities to even more people, who can now join our team remotely.