Personal Development, One Year of Progress

I began my journey as a software tester in April 2018, and six months later in October 2018 I decided to make myself a Personal Development Plan since my workplace didn’t have one for me. It’s been a year since then, so I’m having a look back at the last twelve months to see what I’ve achieved, and what goals I’m yet to meet.

It’s really easy to look back over a longer timescale like a year or a few years and think “I’ve learnt nothing, other people are learning so much faster than me and getting stuff done while I spent an entire afternoon last week browsing therapists in my city”. Therefore, this also serves the purpose of proving to myself that I’m not a terrible useless lump of a human who has learnt nothing and been a general failure. In the last few months I’ve been spreading my attention thinner over more and more projects (I’m working on a webcomic and a novel, and making a v2 of Dungeons and Testing) so it feels like I haven’t had any extra energy to expend improving my skills as a tester, and I need to throw myself back into it.

Enough chatter though! Time for the question:

How much more developed is Undeveloped Bruce?

I’ll start off by looking at my old PDP overview:

The plan as of 1 year ago, you can see more details about it in some of my earliest posts on this blog

I had a 6-month plan of ‘expanding knowledge’, which in retrospect was a bit vague. Now I know why everyone goes on about SMART goals so darn much. To me, this meant learning more about the front- and backends, and about testing strategies in general, so that I could in the future test any part of the stack. I’m aware that a huge chunk of my missing test knowledge is around writing plans and charters, as there was no one at my company with that skillset when I started, and it’s a much harder thing to learn on your own than writing Cypress tests (in my opinion).

I suppose I’ve succeeded in getting a greater breadth of knowledge around our system architecture, how our services and apps connect together and how data moves around. When there is a ticket on the board I don’t know how to test because it pertains to a new or old service I’m unfamiliar with, I’ll ask a dev to take me through it instead of simply saying “I don’t have the knowledge to test that”. On the other hand, I haven’t incorporated API testing into my normal toolkit, and it’s still an extraordinary event when I get Postman out.

As for the second goal in the Breakdown, I did learn tons about tracking, how we collect and store information on users (and the things we stopped collecting and storing to become GDPR compliant).

This is going to take forever to write (and read) about so I’ll make a list.

The List of Learning

Testing

  • Exploratory testing sessions
  • Writing test charters and plans
  • Created Dungeons and Testing
  • A year’s worth of experience?

As I said above, I’m not amazing at writing test plans but I have now at least been trying, following examples online. I also wrote test charters for timeboxed exploratory testing sessions, which counts. It’s difficult to capture all the general testing knowledge and experience I’ve gained, ie heuristics that are now second nature to me as I test. I can’t really remember being without them, but I know they’re there now.

Automated testing

  • BDD scenarios with Cucumber
  • VRTs in Puppeteer, then Hermione & Browserstack integration
  • Cypress tests

I keep thinking that I stopped improving my coding knowledge around January this year (2019) because I wasn’t spending a few hours a week on tutorials any longer. Looking back at my blog posts from that time though, I realise that I’ve come very far haha, and even though I haven’t created an all-encompassing fully integrated mega automated test suite with all the bells and whistles yet, I’ve worked with a variety of different types of automation tools. I can set up projects and pop tests in the CI so that no one can merge things unless the tests pass muwahahaha. That’s pretty amazing progress, even though it happened a tiny bit at a time over the course of the year.

Development

  • Improved Javascript
  • Tried out Ruby and Prolog
  • React and Vue basics
  • CI workflow creation
  • YAML and JSON

In addition to what I said above, I’ve gone out of my way to sample and learn about different parts of software development. I’ve been experimenting with languages and frameworks, and I hope to make a small app with tests over Christmas this year when everyone else has foolishly booked off holidays so I will be the only one in the office and I can do whatever I like. I’m genuinely looking forward to this. Who needs holidays when you can get all your personal development done in peace, while getting paid? I’m going to learn all about unit tests!

Human

(I don’t know what title fits here best, but I mean changing team/company processes and mindset.)

  • Improved awareness of quality/risk aspects in the team
  • Wrote tests alongside new dev work
  • Helped my company create and implement a roadmap for Diversity and Inclusion
  • Also involved with Wellness focus group at work

This has been the most exhausting and difficult part of the job to me. If I could sit in a corner and write automated tests all day then I would probably be quite happy because it’s easy to know if you’re succeeding with that. You just decide on what to do, and then you do it, and then it’s done. Bish bash bosh, on to the next thing. But with humans, it’s all about influencing and advocacy, and you might not see any direct result for days, weeks or months – by which time, you decide the change (if it happens) had nothing to do with you at all, but people just naturally decided to behave the way you want them to. It’s too difficult to quantify and thus easy to minimise the work you’ve done, and this is my worst area for imposter syndrome and demotivation.

Network

  • Enjoyed Test Bash Brighton; Pixel Pioneers; Bristol CyberCon; SeleniumConf
  • 99 second talk on Testing Yourself at Test Bash Brighton
  • 20min talk about Visual Regression Testing at South.West.Test
  • 30min talk about Diversity and Inclusion at Making Sh*t Better
  • 30min talk on Remote Working at South.West.Test
  • Two more meetup talks coming up
  • Submitted talk ideas to TestBash
  • Wrote over 20 blog posts
  • Made friends in the testing community

This is my favourite section. I love meeting people, making friends and chatting. Going to Test Bash Brighton really changed the way I feel about testing, and welcomed me into a community of awesome human pals. I would never had taken the opportunity to go if not for meeting Andrew Morton at a South.West.Test. meetup either, which I also wouldn’t have done if not for hearing about the meetup during an LGBT+ game jam at the Just Eat offices. It all just goes to show that you have to leave the house and talk to other humans, if you want other humans to talk to.

Honestly, I couldn’t have kept up my learning journey, doing talks, blogging, writing automated tests etc if not for all the support, encouragement and understanding of really cool tester friends like all of you. Thank you!

Look at that thankful face, so thankful for all my new friends. (I’ve been practicing drawing expressions xD)

Things Undeveloped Bruce needs to develop

Originally titled “things I failed at”, but I haven’t failed yet! I still have plenty of time to learn and do all of these things, unless I die tomorrow in which case I failed horribly and you will hear a low keening wail of misery as my ashes are released from the urn. Obviously I need to learn more than just these, but I’d like some experience with all of these topics by the end of another year:

  • Creating an entire app in React or Vue (Sorry, Angular <3)
  • Setting up virtual environments for testing
  • Docker, Kubernetes etc
  • GraphQL
  • Redux
  • OWASP top 10 vulnerabilities checks
  • Performance testing
  • Setting up monitoring

On top of those, I guess I have some more testing goals to meet:

  • Attend as many conferences and events as I can
  • Finish a Dungeons and Testing v2, beta test it and run some workshops
  • Write a blog post every two weeks
  • Talk at more meetups and events around the country
  • Get more agile :tm:

And some non-testing life goals that would also make me happy, which you probably don’t care about but I’m telling you anyway so there:

  • Get three more characters tattoo’d on my arm (Granny Weatherwax, Captain Picard and Uncle Iroh drinking tea)
  • Draw the first chapter of my webcomic
  • Go to all the best museums in Europe, or maybe just some of them to start with

Round-up

Overall, I think I’ve done a lot. It’s true that someone with a senior tester or test manager at their company who knows what they’re doing would probably have achieved all these things and more, but I’m really proud of what I’ve been able to get done largely under my own steam and motivation. I learnt all of these things because I decided to, because I wanted to, and not because anyone else told me to. (But I’ve had plenty of help along the way!)

I have very high expectations of myself, which can make me work really hard and burn out, or get down when I realise that something is too difficult for me at that time – but as my mum says, I am bloody-minded.

Nothing so inconsequential as not being able to do something, is going to stop me from doing it!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.