1. The global software testing community is huge, and hugely inspiring.
- I don't think I've ever seen a more active and sociable professional community where people are willing to share their thoughts and ideas - and debate them.
2. Communication skills are crucial
- Working for a software testing consultancy means I'm constantly engaged with different clients and developers. Learning how to communicate effectively - be it verbally or written - can make all the difference in both establishing relationships, building trust and in the overall delivery outcomes.
3. Asking the 'dumb questions' early on can save a lot of pain later
- The question might feel stupid, but sometimes those questions are best answered early to prevent dangerous assumptions from being made, or stops me from deviating down the wrong path.
4. Testing is a creative process
- It's not just about meeting requirements. Testing is about really engaging with the SDLC process, and engaging with those around me. Thinking outside the box. Trying to challenge existing processes, challenge what's given to me and not accepting the answer of 'that's how it's always worked.' Getting paid to think is the best part of my job.
5. You can't test it all
- Exhaustive testing is impossible. I've had to learn to let go of a lot of 'what-if's' and learn to trust my own professional judgement.
6. You can learn from everyone around you
- Be it a BA, developer or fellow test professional, the way that everybody chooses to approach a problem is always interesting. Often developers will choose to tackle things from a technical perspective, a BA from a business perspective and a tester will often come into the discussion with their own take on the situation. No one is more right than the next person, but hearing the different perspectives always makes me re-evaluate my own analytical process.
7. Coming from a non technical background is not a disadvantage
- I have an accounting degree. This doesn't make me any less of a tester than a person with a computer science degree. It just means that I think about things quite differently - and often, I think about functionality the way an end-user would, rather than from a 'but that's how the code works' perspective.
- Some of the greatest testers I know don't have computer science backgrounds.
- That's not to say that I don't want to gain technical skills though - that's something that I'm hoping to work on.
8. Being open minded and showing that you're willing to try new things is key
- Testers can be quite opinionated and passionate about their certain areas. As a junior tester, I've learnt that while it's important to develop my own opinion, keeping an open mind means that you don't close the door on opportunities that may come knocking.
9. Everyday I learn something new (no joke)
- Software is a wee bit of a fickle thing. Just when I think I understand a functionality, I find out that there's this other part that triggers the main engine to behave completely differently. It's one of the biggest challenges of my job, but keeps me on my toes.
- When I move from project to project, I get to learn about a completely new area of functionality - or I get exposure to a a completely different piece of software, which keeps life interesting.
10. And finally, delivering a piece of software that works (or improves on existing functionality) is super rewarding and feels so damn good.