I spend a lot of time as a manager looking for good candidates for my teams. I am often asked what I am looking for. Obviously this depends a lot on the project and the area of the stack I own but there are always a set of attributes that I include in my search for my quality teams whether I am looking at internal candidates or external.
The first list is focused on just finding the basic set of skills (no specific order):
- Technical ability
- Problem Solving
- Tenacity
- Conflict resolution
- Drive for results
- Partnering
- Team Fit
- Innovative thinking
- Passion
The second list is based on the “Tester-Gene” (no specific order):
- Design or Fix
- Component or System
- Customer Empathy
- Takes a stand for what they believe
- Specific and detailed
- Systematic approach
- Breaking things down into buckets
- Equivalency (De-duping)
If you are a Software Developer and you identify with almost everything in the second list (+bolded) then you likely have the Tester-Gene. If you identify more with Design and Component versus Fix and System then you are a true Developer (IMHO).
I tend to do a lot of interviews with subjective discernment rather than hard objective data. I have gone against a loop of 5 interviewers who said No-Hire for technical ability because I saw something special in a candidate and they have only excelled at the company. I pride myself on this ability and leverage it often in day to day work.
Engineers with the Tester-Gene are the engineers who tore things apart when they were kids to understand how they worked but never could quite seem to get them back together and fully working again. Engineers with the Tester-Gene are not that good at designing something from scratch but toss them something that exists and they will make it way better than the designer imagined. As a manager I cultivate and encourage my team to keep that Tester-Gene sharp and in return they have shipped products with no recall class defects and we are super proud of that.
The landscape is changing. Software is becoming a ubiquitous commodity and quality assurance is being pushed more and more to the first adopter or over zealous fan kid. This is a good thing because most of those users have the Tester-Gene too and have a high tolerance for the issues early code exposure produces. We still need those few Engineers with the Tester-Gene through the product cycle to limit the exposure of bad ugly problems. I am afraid current initiatives are pushing these key players out of the fray. The industry has yet to leverage Data and Telemetry fully but we still need adequate avenues of feedback to learn about those areas we need to change and improve.