In August 2018 I changed role from being a developer to being a tester.
I decided to do this as I’d always been more interested in the quality aspect of software development than the technical side of it and I wanted to develop my testing skills more.
I was quite fortunate to be working in a team that was happy for me to change role during tight deadlines looming over our heads and it worked out well for me as I was able to start a new role without having to learn new domain knowledge.
It’s been six months since I made that move so I thought I’d write up my thoughts on differences I’ve noticed between the two disciplines and the impact the change in role has had on me.
The testing community tends to meet around techniques, not technologies
One of the first things I’ve noticed is that testing conferences and meet ups will generally have topics around techniques such as functional testing, non-functional testing and security instead of technologies such as selenium.
This means you have a much more broad experience base to learn from when you’re talking to people at these events.
I don’t think as a developer I ever attended a meet up where the topic of discussion was just ‘being a developer’, there was always a language, framework or company that underpinned the event and this shaped the conversation.
Another benefit of having a broader range of people is that even if the topic of discussion is a more technical subject (say UI automation) there’s always something to learn from those who may have never written a line of code.
As a more technical person this has helped me better understand the non-technical side of testing (i.e. the actual testing part), something I’m keen to expand my knowledge of.
The Leeds testing community is really good
This is of course only really applicable to my part of West Yorkshire, but Leeds has a really good testing community.
In the last six months I’ve been to a number of conferences and meet ups where I got to meet people from all kinds of backgrounds and skillsets.
The Ministry of Testing has a meet up every month which is well worth attending (or creating your own, if you’re not in Leeds), there’s usually two speakers and a chance to chat to everyone.
The Leeds Testing Atlier is a grassroots conference that happens every six months which I was able to attend last year. There were some really great sessions that not only covered testing but also how testing fits into the software development process.
Internally at BJSS we’ve had a number of testing events and I’ve been fortunate enough to give a few presentations covering HipTest and Storybook.JS which has really helped me to network and engage with my colleagues.
Teams struggle to find the right testing balance
One of the big issues I knew I’d encounter when I changed role was having to fight for testing to get the respect it needs within the SDLC.
Since making the change I’ve worked within two teams.
The first was the one I swapped roles within and treated test as a separate activity that was carried out at the end to ensure everything worked.
The developers knew that bugs needed to be fixed but were happy to churn out code and work through a backlog later. They did some unit/integration testing on the codebase but were not tracking any code quality metrics.
That’s not to say that the development team disrespected the testers, they just didn’t see it as part of the development cycle. They did work closely with us when it came to fixing bugs and reviewing unit testing approaches.
The second team, I was in from the start and was able to bring a lot more of the code quality and testing approaches into the definition of done for dev complete as the developers on the team were keen to keep quality high and reduce rework.
Unfortunately in practice we’ve had to compromise, not due to the developers but more to the programme of work itself. We’ve got some very tight deadlines and a lot of unanalysed work to complete. Environments are flaky as hell and constantly changing, making things like end-to-end testing more of a time sink at present.
I think one of the things I’ll need to understand and navigate in the coming months is getting the testing effort included in the estimates given for the programme of work.
I’ve rediscovered my love of development
It seems weird but since I’ve moved to test I feel like it’s allowed me enough head room to enjoy development again.
In the last few months I’ve been able to get on with a number of projects I would have put off, maybe due to burn out, but I feel also as a developer I just saw work as enough output for my development activity.
It could be moving to different technology but I think it’s a fact that as a tester you’ve got to be inquisitive and look at the problem from multiple different viewpoints to understand how to test it.
This has lead me to be more excited about the things I’m working on as I’m not just thinking about a unit or module of code but the much bigger picture.
I’ve still got a lot to learn
One of the things in the coming months I’ll be looking to do is to get more into the testing techniques, patterns and metrics so I can become a more rounded tester.
I’ll be looking to get my foundation level certification from the ISTQB with an aim of then taking their test automation engineer test after.
I’m also keen to engage with the testing community on what mental models I need to adopt in order to stop thinking like a developer and think like a tester.
If you’ve got any suggestions on books to read or podcasts to listen to feel free to drop them in the comments below!