How to Recognize and Hire Top QA / DevOps Engineers
Posted On: October 18, 2022
11 Min Read
With the rising demand for new services and technologies in the IT, manufacturing, healthcare, and financial sector, QA/ DevOps engineering has become the most important part of software companies. Below is a list of some characteristics to look for when interviewing a potential candidate.
In the presented list, you will find important but mostly overlooked skills and traits.
Also, at the end of this list, there is one point that you, as an employer must fulfill.
So let’s begin:
- Fundamental knowledge gaps
- Formal training vs. experience
- Be careful of “Know-it-all” engineer
- Communication skills
- Particular personality traits
- Seniority vs. minor tasks and teamwork culture
- Researching skills
- Understand the importance of time management
- Develop and offer a competitive compensation plan
- Final thoughts
Fundamental knowledge gaps
Looking at the skills of today’s engineers, you will be impressed that they can spin up complex cloud infrastructures easily. Even with structures with a large amount of complexity in Cloud computing, for them it doesn’t even matter if it is an IaaS (Infrastructure-as-a-Service); PaaS (Platform-as-a-Service), or SaaS (Software-as-a-Service), they can do it with ease. And don’t get me wrong, this is important for an engineer.
But when looking for top engineers, one question arises: do they understand the underlying fundamentals (or if you prefer – basics) of the computing infrastructure they use in this process?
These are examples of the basic knowledge that any engineer has to know and you need to cover them in your interview with the candidate: network technologies (routing, IP addressing, TCP/IP fundamentals), how servers work and boot, basics of databases, and how they work, encryption and data stores. Also, any top QA/DevOps engineer needs fundamental knowledge of coding languages, data structures, and algorithms, source control, testing procedures, debugging knowledge, operating systems, etc. It seems a lot, but we are talking about basic knowledge, and not about experts in all these categories.
Every day you will have some configuration issue or some low-level problem that will occur. This “small” issue can cause huge usability problems, even stoppages or site crashes. If you have engineers with basic knowledge, that fundamental knowledge will usually solve the problem.
How often did you witness a simple reboot was enough for the system to continue running smoothly? Having an engineer who clearly understands the difference between performing a simple “shut down” vs. “restart”, will be at some point, very important for your team.
Formal training vs. experience
Formal training will help when an engineer starts working. But usually, that is not enough for one to become a top QA/DevOps engineer or take full responsibility for the product platform operations.
To have certificates and attend classes, online courses, and boot camps is a plus, but you can’t “learn” experience.
When you look for QA/DevOps engineer, don’t undermine engineers without formal training. If one has over 20 years of experience in the industry, surely lots of skills are gathered over the years. Top QA/DevOps engineers must have the experience necessary to lead, operate, and debug. You will see that during some major incidents when stress levels are high, having experienced engineers will make a huge difference. They will be able to quickly take the lead and find solutions from their previous experiences.
In those cases, prepare and conduct interviews that can show the technical skills of every candidate.
Be careful of “Know-it-all” engineer
Progress and changes in technology happen quickly. The top skills one has today can be irrelevant tomorrow. And that is a reality we all need to acknowledge. Try to find and recognize candidates that like to explore and learn new things. Look for engineers who always try to figure out how to make things work better. The ones who are willing to test things multiple times to find the right solution are better candidates. Those engineers are a better choice than ones that stick to what they learn in formal training and are not willing to change or adapt their minds. So many different tools are developed and available today for one to use. Top QA/DevOps engineers will be willing to spend their time researching and reviewing tools to find the right one for the particular job.
Top QA/DevOps engineers will embrace new tools and automation, and see the advantages of using new solutions.
Don’t overlook the communication skills of potential candidates. This is important since QA/DevOps engineers will need to schedule a meeting to talk about any relevant issues to clear things up with a team. They would need to communicate with customers and product owners to explain developments or problems with the product.
QA/DevOps engineers must be able to write clearly, and the text needs to be meaningful. The team needs to understand what they are saying, listen to it, and ask questions. This is important for a team to understand the requirements that are needed from them. QA/DevOps engineers will mainly work with the development team. And if they have good communication with other team members, the project will run better, and the job will be done correctly.
Particular personality traits
You cannot just test candidates for QA/DevOps engineers against a “best set” list of traits and then look for only ones that have all boxes from that list checked. Every candidate is a person who has a different personality and a wide range of interests. There are extroverts and introverts; some are very opinionated, and others are not; some easily accept new environments, and some need a quiet place to come up with the best ideas. The list is a never-ending one.
The right candidate needs to be the one that has the right skills needed for a job. The top QA/DevOps engineer who is the right pick for your company fits right into your company’s mission. Also, needs to have good communication skills and traits to get the job completed on time.
Focus on what will be needed from a person from a work perspective, and don’t defer from the company mission and culture. Be aware of personality traits that can become a huge problem. Try to eliminate in the first interview, candidates with inflexible opinions or ones that are so introverted that any kind of communication is difficult. Look for problems in extreme personality traits.
Seniority vs. minor tasks and teamwork culture
Here is another important thing to look for in your candidates. When any crisis occurs, will they be ready to jump in and help the team in every task to get the job done?
This is important for teams of all sizes. Bear in mind that tasks that some senior staff will consider minor are equally important in taking projects to the finishing line(tasks like writing documentation, test cases, reviewing logs, creating checklists, etc.).
All the above make a good case for a company to have a team that comprises both experienced and junior engineers so that your QA/DevOps team will be well balanced.
This will allow a leading QA/DevOps engineer to balance seniority issues and teamwork. Encouraging senior staff members to act like mentors will allow them to be appreciated, and not feel threatened by new team members.
Please don’t confuse researching with learning. A good engineer will be willing to learn, but to do that, they will require an already prepared topic and literature.
In other cases, top QA/DevOps engineers will be willing to research to find answers to questions or problems. And then to learn it.
An experienced person will know how to conduct research. Either on the internet, in company manuals or maybe to ask some of the team members.
Not everybody knows how to research on the net; you need to “ask” the right question to get the right answer. And that is a skill too, one you will need from top QA/DevOps engineers.
Understand the importance of time management
Time management is an important process in any role, either technical or non-technical. Top QA/DevOps engineers as leaders in teams, must understand the basics of time management.
But understanding and knowing how to implement them is an altogether different issue.
For QA/DevOps engineers implementing time management means knowing how to prioritize tasks to ensure there is enough time available to complete every project. The quality of the end product depends on good time management skills.
Ask your candidates to present you with quick drafts on how to manage time, what is the purpose of time management, and how will they organize the time of their teams to meet a deadline, but also deliver quality.
This will also help you to recognize top candidates for QA/DevOps roles.
Develop and offer a competitive compensation plan
Finding a top QA/DevOps engineer is a challenging task for a recruiter. So be aware when preparing to hire one for your team, you will need to offer them a good enough compensation plan so they will not choose competition above you. Salary range, flexibility in the daily schedule, work location, and equity need to be among your listed competitive benefits. Also, prepare a package that offers professional development and a job description that represents a challenge for them so they will accept the job at your company.
Bear in mind that the roles in the hiring industry have changed. Now employers have to attract top candidates. So balance well between what you are looking for and what you can offer to a Top QA/DevOps engineer as an employee.
When we talk about top QA/DevOps engineers, having good skills, resourcefulness, creativity in solving problems, and thorough knowledge of the “engineering profession” are essential.
I believe that a good DevOps, in addition to the necessary knowledge of the fundamentals in the IT world, should know, research, and be interested in the “precedents” that will lead them to solve the problem sooner. Now, something like that requires years of experience, but also endless curiosity to find new methods and ways to remove certain obstacles.
Moreover, when we talk about maintaining good interpersonal relations, certainly a company should hire a person who will bring some new, positive energy. A company needs QA/DevOps engineer who would be able to function within a team because software companies nurture teamwork. In such cases, the final product depends on each computer, or the developer sitting behind that computer.
When it comes to personality traits, I think it is not crucial whether a person is an introvert or extrovert, because both types of personality can contribute to solving problems. Although an extroverted person may be more “bold” when it comes to using ways and methods of solving problems, it is often the case that such a personality type cannot focus and stay on something for a long time. This can result in frequent “jumping” from method to method and not implementing the one method until the end, which ultimately leads to an unsolved task. On the other hand, introverts, although by nature closed and withdrawn personalities can persist until the end in one method of solving the problem. And if the chosen method fails, only then do they decide to switch to some other methods. Extroverts are more daring in trying numerous ways of solving problems, but introverts are more persistent to see a certain method to the end.
Finally, when it comes to team management, it is very important to take the lead in time management, because we all strive to do a certain job as quickly and efficiently as possible. When it comes to QA/DevOps, as already mentioned, good skills, resourcefulness, and creativity in solving problems, all entail several qualities related to time management. Top QA/DevOps engineer knows how to organize work and time, how to solve a problem in a creative, fast, and efficient way, and find a way to communicate well with the team.
Got Questions? Drop them on LambdaTest Community. Visit now