A change in focus
I was lucky enough to be invited to MEWT (Midlands Exploratory Workshop in Testing) last weekend (9/4/2016). The theme was professionalism, or professional testing. Unfortunately I was unable to give my presentation, due to a lack of votes and time. Fortunately however, many of the themes and issues I wanted to share did get exposed during the subsequent session discussions. Whilst I won’t reel through a list of the talks, the content and the discussion I do want to present my thinking on my role, which has been changing from what could be termed a testing generalist towards more specialised testing.
At NewVoiceMedia we have recently formed a security team, of which I am the application security testing lead. This move has taken some time, as the corporate focus on security has matured and developed over the last few years. Whilst previously I was part of a feature team, creating products, testing features and functionality; I am now leading the charge on application security across this business.
Not only will I continue testing to a certain capacity, but also work alongside my colleagues to ensure that their features also have appropriate levels of discussion, learning and testing around the security of our products. I also need to work with the CTO, Security Officer and the other engineers on my team to raise the awareness of security matters, tailoring the content to each of the departments at NewVoiceMedia.
Professional or professional testing?
During the discussions at MEWT, we talked about what it meant to be professional testers, both with a small and big P. The focus shifted and flowed around roles and responsibilities, ethics, certification, communication, learning, models and skills. It was a challenging discussion with some deep thinking and debate throughout.
One aspect though stuck particularly with me. Abby Bangser led a discussion on what it meant for her to be a “Full Stack Tester”. This, and I am happy to be stand corrected if my interpretation is inaccurate, is Abby’s view on what it means to be a tester that is able to see and operate across not only the technical stack, but also across the business. Essentially being able to approach, think and help solve any problem that a tester might encounter. Abby herself aims to be “the worlds best rubber ducky”. (A reference to the technique by which a programmer explains their code line by line to another person, maybe a tester or programmer, or even an inanimate object: Wikipedia: Rubber Duck Debugging, Book: The Pragmatic Programmer: From Journeyman to Master; Andrew Hunt, David Thomas)
During this discussion, amongst many others, we hit upon what skills testers need to do their job. The exploration and development of skills beyond that of testing appear to be essential for us to maintain our ability to be professional testers in a rapidly changing business and technical landscape.
It is also clear that whilst technical skills are, and should be, important, they aren’t the whole story. Testers, of whatever flavour, cannot work in isolation of their business context. We need skills that go beyond our technical knowledge and delve deeply into our business domains.
Bill Matthew’s reflected on Iain McCowatt’s statement that he prefers testing as an activity, rather than testers as a role or profession – as he see’s a problem with some of the dogma surfacing in the testing community.
Bill Matthews (@Bill_Matthews) April 09, 2016
Bill Matthews (@Bill_Matthews) April 09, 2016
Is there a problem with my T-Shape?
Which takes me to the issue I wanted to share with you here. You can find specialists in almost all walks to life, any profession, vocation, workplace and context. As I’ve previously mentioned, my main focus at work is both security testing and corporate security awareness.
Outside work I am a Scout Leader, but I specialise in running activities for the Cub Scout section – children who are ages eight to ten and a half. I occasionally help out in other areas of Scouting also. I’ve planned and led multi activity sessions, camps and Scouting ceremonies for many children and other adult leaders.
My great-grandfather, who was a Church of Ireland and Church of England minister was also a head teacher at a school in Bath. One could argue that being a clergyman is both vocation and profession. Some might argue that teaching could be thought of in the same way.
My maternal grandfather was also a clergyman, but also a community builder. One of his first parish assignments was in Lewisham, South East London, in 1943. This was of course during the World War Two, and the Blitz, one of the darkest times in the history of the United Kingdom. Alongside my grandmother, he helped keep his community together during a terribly difficult time.
The T-shaped people in my family don’t stop there. My mother, Jocelyn, is not only a nurse, but is also an acute cancer care specialist. She is trained and practices specifically in caring for patients with urological cancers, as well as palliative care.
So, what’s the problem here? Well, as I have deepened my skills in security testing and other matters around security, I have found that my career has shifted to focus on security almost entirely. That has presented some issues. Here is a summary of them:
- Learn from great people
- Deep skill development
- Seen as an SME
- Leader in the security space
- Championing security across the business
- Coaching other testers
- More value to the community
- Bus factor of one – can create bottlenecks and issues around dependencies
- Potential stagnation
- Less time for learning as there are large demands on my time
- Competing priorities – security isn’t at the top of everyone’s list
- Concerned that I’m not developing other valuable skills
- Worried that my t-shape is becoming unbalanced, or doesn’t always fit
All of these issues above are within my control to exploit, or challenge and manage. Let me focus on the specifics of this change in focus.
Firstly, It means that I’m no longer working with my previous feature team. I had developed a good working relationship with that team, and it was really difficult to transition from a close knit team who were co-located, to a more loosely formed team, who aren’t co-located, and where I’m almost autonomous. It means being more reliant on myself to get things done, rather than feeling able to support others or get support for myself when I need it. I know this isn’t strictly true, my colleagues are great and always willing to help a fellow team mate solve a problem. (Danny Dainton is a great example of this)
Secondly, becoming a bottleneck is and can be a problem. I’m still responsible for managing, planning and executing security testing across the whole business. People come to me if they need some security testing being done, but what we are working towards is each feature team taking responsibility for the security testing they need to do. Ultimately I am only one person. I can’t do everything, and sometimes I need a holiday. So to help with this I consult with each team, share ideas and knowledge, organise training, and pair with developers and testers to solve problems.
I’m one of many test engineers and development engineers, but I’m the only one of my team who has developed a deep focus in this area of testing. Many of my other colleagues have other interests and responsibilities – management and coaching, UX and design, automation, scrum-mastery, release co-ordination and regression testing, building tools and other useful things…the list goes on. It means that my t-shape can fit in with other peoples t-shape. If I don’t have the skills needed to complete a task, someone else will, and I can learn from them.
Take a look at what some folks have said about T-Shaped people, and specifically T-shaped testers.
Solving the problem
This last week has been Hackathon time at NewVoiceMedia. We get a good slice of time every few months to work on projects that are outside of our roadmaps, but that will add value to our teams, our processes and our business. It also helps with broadening and deepening your skills in all sorts of areas.
This week I’ve been involved in a coding workshop led by three of my development colleagues. Some of us were developing our C# skills, others were developing their Python or Ruby skills. I chose Python myself as it integrates well with one of the tools I use for security testing: Zed Attack Proxy from OWASP.
In the end I was able to run a ZAP scan, generate an XML report from ZAP, parse that report into JSON and then push it to a static HTML page. This is part of my aim to get security testing into our CI processes. I’ll write in more detail about this in a future post.
So whilst I might be doing less testing in future, I am still a tester. Whilst I am deepening existing skills, or adding new skills that can and will be useful. I will still have that broad range of skills that might identify me as a tester. It’s up to me to embrace the change that is happening and work with it, rather than focusing on the negative. That way I can remain relevant, valuable to my team, business and customers – and ultimately fulfill myself in my work.
I want to thank the MEWT 5 team and attendees for a great day of discussion and learning. Signing off!