The BBC recently published an article about getting started in Cybersecurity as a career, and one part stood out to me
That starts with a mindset shift that is focused on the idea that technical skills can be taught, but there are other critical skills for cybersecurity professionals that are harder to teach,” she continues. “Those are things like analytical and critical thinking, problem solving, and the ability to work well as both an individual and in a team.”https://www.bbc.com/news/business-57663096
What struck me is how much the same applies to software testing, where curiosity, critical thinking, and adaptability are key skills we look for.
While technical skills are still important, a lot of them can be learned on the job. You don’t need to know how an application communicates with an API to get hired, it’s something that can be taught in a few sentences and a diagram.
As long as you’re willing to ask, that is.
When I started at my current job I didn’t know a lot about mobile applications. Within a few months I was tasked with working on a project that involved an app pairing with a Bluetooth device.
The connectivity had problems from day 1. The phone and the Bluetooth device suffered from pairing issues, as well as phones just deciding they didn’t want to communicate with paired Bluetooth devices any more.
Initially this was a real struggle. A lot of networking issues feel random. They work one minute, and the next they don’t.
In order to figure out what was going on, I talked with the developers about what the stages of being paired and connected were. We drew diagrams of states and flows together, and they explained what I would see in the logs at various stages, to get a better idea of what was happening.
This allowed me to write more detailed bug reports, that said exactly what state a phone and Bluetooth device were in. It took what felt random and made it feel more controlled. The app still didn’t work, but why it wasn’t working could be more easily understood.
Asking questions and being curious is key to being a good software tester. Don’t sit at your desk typing up bug reports all day. Go talk to developers. Go talk to product people. Learn and advance.
Don’t be scared to do it either. Every developer I’ve talked to has been so patient and nice about answering questions. Sure, it can be daunting to enter a world of technical jargon, but each time you learn something new it’ll make future discussions easier.
Persisting is important too. If you talk to a developer and feel like you have an understanding, but later realise something doesn’t quite make sense… Go back and ask more questions!
Try not to ask the same questions over and over again, though. I wouldn’t be happy if someone came to me with the same questions every day, and neither would you. Make notes when you talk with developers. Make diagrams when you talk with developers. Do whatever it takes to make sure that you can retain that understanding.
So just ask questions, alright?