Category Archives: management

Improving Performance Reviews

tl;dr No-one really likes performance reviews. But giving your team members good, actionable feedback and setting clear direction with them is very important. Yearly performance reviews don’t encourage this to happen.

Note: This is the first part in a multipart series of posts on performance management. In my team I changed how we do performance management. Future posts explain what changed and what happened as a result. This post sets the scene.

So What’s Wrong?

It’s fair to say that the traditional way of doing performance reviews is exactly that, traditional. Many companies work on a yearly cycle, with managers setting their people some objectives at the beginning of each year then reviewing them at the end. It’s likely that it’s been that way for ever. Sometimes if you are lucky then they’ll also be a mid year review.

I have a problem with this way of managing performance. We try to teach our teams to think in the present, to inspect and adapt their ways of working and the feature sets of products themselves, regularly and iteratively. Yet when it comes to the people we do the opposite. It doesn’t make sense.

The Problems With Performance Reviews

I’ve seen the following problems with the yearly review cycle in a number of companies that I’ve worked in. The same concerns and feedback every time.

The Forgotten Objectives Problem

Firstly there’s a huge gap between when someone is set some objectives and when those objectives are reviewed. Objectives get forgotten. A person’s goals and motivations change. The business landscape changes. You get to the end of the year, review the objectives and discover that none of the objectives that a person has are relevant anymore. The logical action when faced with this situation is to just ignore the objectives and review someone based upon feedback and your own personal viewpoint. Your team member gets the same performance score they did last year and then the whole cycle starts all over again.

In this situation you should think about the message that this is sending to your team member. You’re essentially saying “objectives aren’t really that important”. Don’t be surprised when you don’t get the buy-in next time objective setting comes around.

The Disruption Problem

When companies are tied to yearly performance review cycles then early December and late January are the periods that managers hate. Believe me, it’s where you really get to be the bottleneck. There’ll be expectations from HR that you do all your reviews by a certain deadline. It’ll be the same deadline as all the other managers have. Everyone will be running around trying to do the same things. Free meeting rooms will be pounced on by the first person who sees free space in the calendar. Everywhere will be full of people in groups of two talking quietly.

Preparing for a performance review is extremely important and a manager can’t just rock up to one without having prepared. There’s a lot to be done. Feedback to be requested, notes to be collated, memory banks to be queried to remember what happened almost twelve month’s ago, feedback to be re-requested, notes to write, the review itself and subsequent follow-up. That’s just for one team member.

A yearly review cycle effectively takes the entire management population out of delivery work for two months a year. It creates bottlenecks. It’s one big performance management big bang. That’s not how we deliver software anymore.

It’s also disruptive for the team members. Suddenly everyone is being asked to provide feedback on everyone else, everyone is preparing for their own reviews at the same time and because those reviews only take place once a year then they take a long time to complete.

Feedback Is Better When It’s Timely

There is nothing more annoying than being told “well that thing you did 6 months ago – that wasn’t good”. You have no chance to change the situation and little chance to effectively learn from the feedback. The time will have past and the opportunity to change may well have gone as you’ve moved onto something new.

Yearly performance review cycles don’t of course preclude managers from giving regular feedback to their team members. But they do make it easier not to give that feedback, and not to seek it from others. They subtly encourage us to think that ‘proper’ feedback is only needed to be given once a year. That’s wrong.

The Infrequent Problem

When you do something regularly then it becomes easier. You learn how to do it, your brain becomes wired to do certain parts of the activity almost without thinking, and you lose your fear of something new. Mastering a new skill and gaining the confidence to do it well takes time and practice.

We don’t get to practice the art of performance reviews regularly in a yearly cycle. At best a manager may well have done about ten reviews a year for a couple of years at a company. Those reviews come round only once a year, by which time a lot of the skills are forgotten or take time to become natural again. You make mistakes, those mistakes de-motivate your team members and just as you feel like you’ve got your review mojo back, then it’s time to put it away again for another year.

This also applies to your team members. They get reviewed once per year. In fact it’s worse – they get fewer opportunities to get good at reviews than you do.

It’s human nature to fear change and to feel anxious and apprehensive about something that is new. A yearly performance cycle becomes something that neither manager nor team member looks forward to, precisely because it happens so infrequently that no-one get’s the chance to feel confident doing it.

The “I’ve Forgotten What I Did” Problem

When reviews are yearly then it you can find yourself trying to remember what both you and your team members were doing almost twelve months ago. Even with the best notes in the world, and the most fastidious team members, there will be points that are forgotten.

Feedback from other team members and stakeholders won’t focus on what was done in the past – when under pressure to provide feedback for multi people (which happens more under a yearly cycle) then people remember the recent past far better than something that happened months ago. And if they do remember something from months ago then it was probably an event they perceived as negative. Bad memories stick better than good ones.  The feedback you get will come with an unintentional negative bias. Or it may not even be true at all.

There’s a Long Lead Time

I’m a strong believer is delivering software iteratively, seeking regular and timely feedback, and adapting as a result. In my career I’ve done this enough times to feel that this is the least risky way to deliver. We learn as we go along, and we change approach, feature set, timescales, etc when required.

One key metric I like for a team is lead time. How long does it take us, from the point at which we receive a request, to the point at which we deliver it? Enabling a suitably short lead time to enable the team to be nimble and adaptive is key to delivering valuable software. A yearly performance management cycle has a lead time of exactly that, one year. The opportunity to adapt is tiny.

So What Should We Do About It?

I believe the traditional yearly performance review cycle does not work. It does not enable timely feedback, does not exploit our desire to work in the present, it’s time consuming and it’s demotivating for both team members and managers.

In my team we decided to do things differently. We changed how we do performance feedback and performance reviews. The next article in this series will tell you what we did, how we did it and what happened.

 

Creating a Team Charter

Team Charter

Having your team all working towards a common set of goals is extremely important. However, as leaders and managers we can sometimes get far too hung up on what needs to be delivered and forget about who is actually doing the work. Forgetting about the people and focusing only on delivery goals may get you to one particular deadline but failing to build the team effectively and align them around a common set of principles will rapidly cause longer term problems. A team charter can help prevent this.

At it’s heart a team wants to perform. People want to do good work; after all, feeling like one has not done the best one can possibly do is not a good feeling and as humans we naturally want to feel good. I like to sum this up like this:

Your team are a group of awesome people who want to deliver value. Your job as a manager is to enable them to do that.

So how can you help your team to bond around common goals, and ensure that these are not purely focused towards delivery or individual achievement? One way is by working with them to produce a team charter.

What Is a Team Charter?

A team charter is a set of principles that the team live by. It should be produced by the team, owned by the team, and be visible to not only the team, but also all those who work with them. It defines who they are and how they like to work.

In short, it’s the team’s rules of the game.

When everyone understands the rules, were part of defining those rules and as a team they own those rules, then the team is stronger.

A Team Charter Workshop

I recently organised and ran a workshop with my team in order to produce a charter. For some background, we consist of four different sub teams, each with around 6 people in them. The teams are cross functional software engineering teams, wth developers and testers, plus they have the skills and experience to push software live and build and maintain our infrastructure. In short they own our products from cradle to grave.

The Workshop

Starting Point

It was important first to set the scene and explain to the team what a charter is and why having one would be a good idea. A charter should be simple and so should how you explain one.  Here’s how I explained charters to the team:

  • It’s the ‘rules of the game’
  • Helps us have a team culture of safety and confidence
  • Manages our expectations of others
  • Can include practical things
  • Is short and snappy so that we can remember it (7 items is perfect)
  • Will go on the wall so everyone can see it

Examples

I thought it would help to give the team an example of a charter. I’d heard Stephanie Richardson-Dreyer talk at a tech meetup at MOO a few weeks beforehand and she gave me the idea for the charters, and had fortunately also written an excellent blog post on the subject based on experience from GDS. I recommend reading it – her team’s charter looked like this:

  • tech support is a learning experience, you should aim to learn more about how GOV.UK operates during the week
  • work together, be inclusive and don’t leave anyone out or alone
  • it starts at 9:30, be there
  • feel free to go to essential meetings, but tell people ahead of time and see item 2
  • make small improvements to make it better for the next team (e.g. documentation, automation)
  • there’s no such thing as a stupid question
  • help others and be patient – not everyone knows the same things

This was a great starting point and example for my team.

Getting the Team To Think

After some warm up ice-breakers then it was time to start thinking about what should go into our charter. While it could have been productive to jump straight to getting the team to think about what defines them as a team, previously I’ve found this is not always the easiest thing for them to do, and jumping straight to the solution doesn’t always get the best results. Sometimes trying something different helps people to think and come up with ideas more easily.

So I flipped their thinking around. Instead of thinking about what would define us as a team and what a good team would look like, I got them to think about the exact reverse.

What Would the Worst Team In the World Do?

Worst Team

Reversal is a popular problem solving technique and one that I’ve used on numerous occasions. I find it works for me. And sometimes, thinking about worse case scenarios can be fun. So the team were encouraged to:

  • Think about the characteristics of unsuccessful teams
    1. Discuss them in small groups
    2. Group them into categories:
      1. People
      2. Processes and Comms
      3. Delivery of new features
      4. Technology
      5. Stakeholders
    3. So we would not get too many items then the teams were encouraged to dot vote where there were more than three in a category, to get the three the team thought were the most important

We then got the teams together and each team played-back their thoughts to the whole team. It was fun. We clearly knew what bad looked like 🙂

And Then Reverse

This is then where the reversal came into play – the teams were now encouraged to take their ideas (and any they had updated as a result of what they had heard from other teams) and  note down the characteristics of successful teams instead. We encouraged them to think about their own context and the overall team, and how they wanted to work together and be recognised by stakeholders and other teams.

Bringing It Together

Once the teams had reversed their ideas we brought the ideas from each group together. A group discussion enabled us to find the commonality, discuss each theme and agree on importance. The result was a number of themes, one per post-it note, on the board. There were a lot of ideas.

Now it was the team’s turn to agree on what the most important items were to them. These would be the one’s that ended up on the charter. So another dot vote was called for. Each team member dot voted on their top 7 characteristics of our team.

The Result

We have our team charter. It looks something like this. It’s framed and on the wall for everyone to see. It defines us as a team to each other and to those we work with.

Team Charter

And when the time is right we’ll revisit it and update it if circumstances change.

Should Your Team Have a Charter?

I think so. The exercise of producing a charter brings team’s together and helps them bond around common goals and principles, and shows that the most important thing is the team. When new people join the team it helps them to understand what defines the team and what’s important. When new teams work with us then they can easily see what makes us tick.

Why not try a produce one with your team?

Want To Learn More?

I found these two blog posts very useful when learning more about charters and preparing for the workshop with the team:

 

My Experiences of WeTest 2016

tl:dr;

I really loved being a part of WeTest 2016. I gave the opening keynote at both conferences, as well as a couple of other talks at sponsor events. If you came to any of them then this post contains some useful links you may want to read. It was great to meet so many engaged and knowledgeable testers in New Zealand.

The Opening

I was thrilled when I was offered the opportunity to travel over to New Zealand and talk at the WeTest 2016 conferences in Auckland and Wellington. I mentioned my conference speaking goal as part of my presentation at both events – this was that one day someone would invite me to speak in New Zealand. And Katrina Clokie, on behalf of WeTest did just that earlier in the year. It didn’t take long for me to agree to be a part of the conference and being offered the opening keynote was a real privilege.

Now there is one thing that’s clear and that is that it is a long way to New Zealand (28 hours to be precise from the UK). So I wanted to ensure that I made the most out of my short time there and to give a presentation that fitted in with the conference theme of “Influence and Inspire”. Given that I have made a move out of a pure test role over the last few years then this seemed like a logical theme for the presentation, and an opportunity for me to give my views, gained from outside of testing, on how testing is perceived. I also wanted to show the audiences that there’s important leadership roles within testing to be taken and made the most of.

Preparation and Arrival For WeTest

I can say without a doubt that WeTest was the best organised conference that I have spoken at and it’s testament to the effort put in by Katrina, Aaron, Shirley and Dan. All too often presenters at conferences aren’t treated brilliantly by organisers – either by having a lack of support leading up to the event, being expected to pay their own way or by needing to foot the bill for travel and accommodation then claim back. WeTest was different – they organised and paid for all travel up front and sent detailed itineraries for each speaker, plans on how the conference rooms were to be setup, as well as ensuring that the simple things like a taxi to pick you up off a long haul flight was pre-arranged. It made the whole experience easy and it made us speakers feel valued. Other conferences should take note.

A really appreciated gift at checkin. WeTest was a great example of how to run a conference
A really appreciated gift from the organisers, handed out at hotel check in. WeTest was a great example of how to run a conference.

Up and Away?

My presentation focused on my views of testing from outside of just testing and how I made a move into software management and why. It was part of a clearly well thought out programme and the other presentations, whether focused on more technical aspects such as mobile testing, or other leadership presentation, fitted together really well. You can see the programme here to get a feel.

Great sketch notes of my presentation from Yvonne Tse
Great sketch notes of my presentation from Yvonne Tse

Highlights

People arriving for WeTest in Auckland
People arriving for WeTest in Auckland

I thought all the presentations were good but a particular highlight for me was Adam Howard’s “Exploratory Testing Live” where Adam took the really brave step of doing live exploratory testing on the Trade Me website in front of a conference audience. Fair to say it went a bit better in Wellington than Auckland, where he found a bug early on that blocked a lot of the rest of the session but he coped really well and there was value in both sessions. We don’t see enough live testing at testing conferences, it’s common to get live coding at development ones but hasn’t seemed to catch on. Based upon Adam’s session then it should.

Also I really enjoyed Joshua Raine’s really personal story about “Conservation of Spoons” which he did as a noslides presentation. Deeply personal at times and spell binding. I won’t give you the details because I’m sure he’ll do this one again and to know the story would spoil it.

A New Approach to Q&A

As part of my presentation I thought I’d try out the new Q&A feature in Google Slides. It turned out that this was a good move because it enabled me to get questions from the audience as I talked and also to keep a record of all of them for later. If you speak at conferences I’d really recommend it.

For those of you who attended then here’s the questions asked, my responses, and a little more information.

What do you most miss about your testing focused roles?

I guess I miss being the expert with the safety of many years of experience of testing. I also make sure I keep connected to the testing community because it’s great and if I didn’t then that would be the biggest thing that I’d miss.

It’s hard to find a balance between adapting and burning out when trying keep up with new trends and technologies. Do you have suggestions on how to manage that balance?

I make sure I do one thing well; that together with Jerry Weinberg’s Lump Law – “If we want to learn anything, we mustn’t try to learn everything” help me to maintain a balance. Trying to find the one thing to focus on is sometimes hard, but by discussing with your stakeholders and your team then you can usually come to find out what is the most important.

Do you have any resources/suggestions for learning to speak ‘Dev’?

There’s not one clear answer to this – it depends on your context, languages and architecture that you are dealing with. When I started then I tended to use google a lot and base my searches on discussions I’d had with the dev’s in my team. I’d also ask them what they thought I should be learning and why. I’ve also found sites like Hacker News and Stack Overflow to be great for keeping up with what’s happening. Talking Code also comes recommended.

Was your career path in the same company or different? Would you suggest to change companies or progress in one?

It was in the same company and I think it’s much easier to make a change from one path to another when you are in the same company. You have that reputation to use and you are a known quantity. It’s also likely that you’d been working towards such a change as part of your personal development anyway so the company will be confident in your plans.

Since we are talking about change, at any given point during those career changes did you resist the change? How did you over come that? Were you specifically looking for change?

I talked about how it can be scary to make changes but trying something new for 6 months is key. You need to understand that you will go through a change curve just like anyone else and things will feel extremely uncertain as a result at the beginning. I knew what to expect since I’ve been through other changes.

In this case I wasn’t specifically looking for change, more for an opportunity.

Thank you for the nice talk If you had to recommend doing ONE PRACTICAL exercise to raise awareness with the team that WE ALL own quality – what would it be?

I like the idea of whole team testing and bug bashes are a great way of starting.

What do you think testing will be like in 10 years time?

I think we’ll see less traditional testing roles and the focus on automated checking will become more of a development activity. This may mean that there are less testing roles in total but good, exploratory, coaching testers will always have a place in teams. I think the biggest change will affect Test Managers, with far less of a need for them and a transition to coaching roles.

How do you avoid being typecast as just being a tester and overlooked for other career opportunities?

Show that you have an interest to others in your company. Work with your manager to map out your path to a new role and start to show that you are learning the skills that will be required in order to be successful at it.

In short – you own the responsibility for your own career.

A lot of people in this company are transitioning from Waterfall to Agile. Some of the people in the room might gain from you talking to how you see that transition working from the experience you bring, especially if they’re concerned about career development and management.

It does depend a lot on how the management structure adapts. In agile transitions that I have been a part of we’ve changed to autonomous, cross-functional teams with single managers, who have been supported by coaches for both agile, testing and development. This support network is key, as is the establishment of discipline based communities. A strong testing community for example, allows testers whose roles are changing to adapt.

I’ve spoken before about the effect of removing Test Managers from an organisation and the biggest takeaway for me was the need for a strong support network for testers afterwards.

Support from coaches allows not only testers to be supported but also means that someone with testing experience becomes responsible for establishing career paths, competency expectations, etc that can then be used by other managers who are not experienced in managing testers. It also helps maintain a ‘voice of testing’ towards senior management and to enable activities that help testers grow within an organisation.

And Repeat…

Parimala Hariprasad is full flow!
Parimala Hariprasad in full flow!

The first conference was in Auckland and we repeated the experience again in Wellington three days afterwards. This meant that the whole WeTest circus upped sticks and set off for Wellington for a repeat performance. I also did an “Understand Your Mobile Users” presentation at a sponsor the night before, plus the same WeTest presentation at a sponsors internal conference the day afterwards. Four presentations in one week was something new to me and actually pretty interesting to do as I got into the speed of things. It almost felt like being in a band on tour 🙂

Closing Thoughts

WeTest was great. I met some great people and learnt some new things. It was extremely well run by a passionate bunch of volunteers who knew how to treat their speakers well and how to organise a great programme for the conferences. The testing community in New Zealand is really engaged and it’s clear that there’s some really forward looking testers pushing the boundaries here. If you get yourself over to New Zealand then I’d certainly recommend it. It’s not that far. Really 🙂

Agile In The City 2016

I’ve just got back from Agile In The City, which is a relatively new agile conference held in London. It’s in its second year and this was the first time it had been extended to two days. I had a great time; there was a good mix of talks, tutorials and workshops, a decent venue and even some good food as well.

IMG_20160616_095642140

As usual I did some mind maps of the sessions I attended. My favourite session was Managing For Happiness from Jurgen Appelo, a really inspiring keynote about how to manage better, with some great tips.

My mind maps from all the sessions I attended are below.

Keynotes

Managing For Happiness by Jurgen Appelo
Managing For Happiness by Jurgen Appelo
How To Derail Agile Rollouts - Katherine Kirk
How To Derail Agile Rollouts – Katherine Kirk

Track Sessions

IMG_20160618_140329446
Scaling agile development at the Government Digital Service by Adam Maddison

 

IMG_20160618_140338606
Punishment driven development by Louise Elliott

 

Develop The Product Not The Software - David Leach

Develop The Product Not The Software – David Leach (with free water pistol 🙂

 

Value by Andrea Provaglio
Value by Andrea Provaglio

 

From Oil Tankers To Speedboats - Jonathan Smart
From Oil Tankers To Speedboats – Jonathan Smart

 

#NoProjects - beyond projects - why projects are wrong and what to do instead - Allan Kelly
#NoProjects – beyond projects – why projects are wrong and what to do instead – Allan Kelly

The End Of The Road For Test Managers?

I’ve been reading a lot about test management recently. There’s some excellent posts out there, in particular I’d recommend you look at this one from Katrina Clokie, explaining the changes that are required for test management to remain relevant in the world of Agile software development and continuous delivery.

She also links some other articles which I would definitely recommend you read, if you are interested in the subject.

My Interest

So why am I interested? Well for starter I’m a Test Manager. Over the last couple of years I have seen my role change, from one of leading a separate, large test department, to one of managing testers across a number of project teams. It’s about to change again.

I’ve seen the challenges being a Test Manager in an Agile environment brings, in particular the difficulty in remaining relevant in the eyes of product and development managers, and the challenges of understanding enough about multiple areas in order to be able to support your team members. Being a Test Manager in a Agile environment can be isolating at times, particularly when the department is big, and the number of agile teams is large. It requires an ability to balance a lot of information, priorities, and tasks, across a number of areas. Stakeholder management and influence become key. Context switching comes as standard. Often it’s not much fun.

Through discussions with others, and looking at my own situation, I’m increasingly coming to the conclusion that the new ‘Agile Test Manager’ positions that Test Managers are moving/ falling into just don’t fit with the ways that teams want to work anymore. The team is more important than the manager, and, for example, choosing to keep discipline based management because it means testers are managed by testing ‘experts’ isn’t enough to justify it. Managers are not able to effectively support their people if they do not have the time and energy to keep fully in the loop with the team. As Test Managers get split across multiple teams, (primarily because having one Test Manager per Agile team is massive waste),  then it becomes nearly impossible.

Continuous Delivery

Moving to Continuous Delivery complicates matters further. Giving a team complete autonomy to design, build and release it’s own code is an extremely motivating way of working. Do Test Managers fit in with this ? I’m not sure they do. Where independence and autonomy are key, management from someone from outside of the team just doesn’t fit, particularly when that management is only part-time.

Change Is Coming

So how do we change? Do Test Managers merely become people managers, desperately trying to understand what their people, spread across multiple teams, are up to? Are they there to help manage testing but not people?? What about the coaching and mentoring, the sharing of knowledge and expertise, and the personal development of testers?

As I see it I think we’re going to see a lot more of this sort of setup:

  • Engineering Managers, who line manage an entire team. They understand the people best because they work with them day-to-day. No need for handovers, no need for performance feedback requests to other managers at review time, and no need to waste time and effort with coordination. Engineering Managers manage the whole delivery process and people involved. They may have come from a background of expertise is a particular discipline, but now they need to be able to represent all. But crucially they are focused on the management of a team who own a particular product or component and so share a single focus with their team.
  • Test Project Managers, who manage larger testing projects/ programme’s and dedicated testing phases such as UAT and customer acceptance. No people to manage, just deliverables. This role is very dependant on the nature of the software/ hardware solution being delivered. It’s most likely not needed in a lot of companies.
  • Test Coaches, who help organisations deliver the optimum testing possible. This means through coaching, mentoring, advising and working with engineering managers and whole teams in order to help them optimise their testing effort. Similar to James Bach’s idea of Test Jumpers, but with more focus on providing advice, guidance and strategy. In smaller companies they are much more likely to be exactly like the idea of Test Jumpers. Call them Test Jumpers, Test Managers, Heads of Testing or whatever, but the key point is that they are test experts who have the mandate to support testers in multiple teams but do not manage them. They can assist with recruitment and personal development if required, but are not a particular person’s official manager, and may get involved more with recruitment and personal development process, rather than people.

What Next?

The dedicated Test Manager, who manages testers and testing is not a role I can see continuing for too much longer. It is a hangover from the past, when large, dedicated test teams needed management, and it simply does not fit with how a lot of teams work anymore.

But, and this is a big but, I work in web, web services and mobile. I’ve seen the push for Agile and the push for Continuous Delivery because it fits the nature of the projects and technology used in these areas. Team’s are lean and projects are short. Almost certainly this makes me biased.

I would be interested to know what you think. Do you think the traditional Test Management role is reaching the end of the road?  Or is it alive and well, and relevant in the area that you work? Why not leave a comment below and get the conversation started.

Incentivising Community Engagement?

I firmly believe that in order to be as effective as possible, testers need to engage with the software testing community. Learning from others, particularly outside of the companies where we work, makes us more rounded and better informed individuals. It enables us to inspire ourselves and our colleagues in ways that we could not otherwise.

Recently I’ve been wondering why more people do not engage with the community. What is stopping them, and how can we all help change this? We can explain how brilliant the wider community is, and we can give examples from our experience. We can send people to conferences and email round blog posts. What is that does not work?

What do we do about those within a team who do not want to interact? Those who do not see it as a good use of their time, and are not willing to spend time on community matters, even if that time is given to them by the company. Should we incentivise people to do so? At least in order to push them in the direction of the wider testing community, where hopefully they will get hooked? Or should we do the opposite? Is it a valid idea to make community engagement a part of people’s role description, and therefore penalise those who hold such positions and do not exhibit such engagement?

Or is there another way of persuading everyone that the software testing community is key to their personal development? I’d be interested to know what you think.

Less Than Three Weeks Until TestBash 2.0

TestBash-Speaker-300x125

TestBash 2.0 is less than 3 weeks away. I’ll be speaking on “A Testers Hierarchy of Needs”.

What motivates you to work and improve as a tester? Why do the testers in your team work well together? Or why don’t they? Have you ever wondered what motivates professional testers?

Maslow’s Theory of Needs seeks to describe the psychology of humans by way of a hierarchical model. From physiological needs up to self-actualization, it helps explain what motivates us and how we express that motivation. A Testers Hierarchy of Needs does the same for software testers.

If you manage testers and have a keen interest in ensuring that your team are motivated and work well together, or if you are a tester wondering what is needed to make your team great, then come along and discover more. I will present a framework which helps explain tester psychology, how internal and external factors can affect their motivations, and steps that can be taken to better motivate yourself and your team.

It would be great to see you there.

Persona Based Interviewing

Why you may need to do some actual testing in the interview for your next testing role

Interview

 

When I was starting to think about writing some posts to help out those who are either recruiting testers (see here for my first post), or for testers looking for new roles, the obvious first post was going to be around interviews. Interviews are scary, interviews need preparation, etc.

But to be honest, there is already so much available on the web that’ll teach you the basics, that I’d be re-inventing the wheel.

This is the second post in a series on finding a job within testing – the first one is Starting a New Job In Testing which you can also read on this site.

Basic interviewing techniques

If you need some help on basic interviewing techniques then I’d recommend spending some time on Ministry of Testing, looking at the recruitment resource section. What I want to discuss in this post is an interviewing technique we are using where I work, in order to help us recruit testers. It’s not new but it’s also not typical, and so hopefully it helps you.

 

A typical interview

A typical interview has a set of questions, and sometimes a script to follow. While the questions may not be written down, an experienced interviewer typically has a number of questions in their head that they can tailor to the interview situation, and use to steer the conversation in a particular direction. There may be a formal test, or the interview may just be conducted verbally.

Simply asking someone questions about testing, and gauging their responses, is one way of understanding in more detail what they know. You can also find out more about who they are, and what they can bring to the company. While we are following this approach, we’re also doing things a little differently.

 

Persona based interviewing

In a persona based interview, each of the interviewers play out part of a task based story, which the candidate is also a part of. One of more scenario’s are played out, normally based around a task that the candidate would typically face if they were successful in joining the company. The interviewers take different persona’s, each playing the part of a role or person that the candidate would need to interact with, in order to successfully pass the task that they are set. In this way the interviewers can understand how the candidate approaches particular tasks, how they solve problems, and how they interact with others.

For our interviewers for mobile test positions we typically play out some scenario’s based around testing our applications on real hardware. I won’t go into too much detail, for obvious reasons, but the candidate receives a certain testing task, and then is expected to start testing and exploring the application in order to successfully find bugs within it.

We play the parts of other people in the story. These could be the Product Owner deciding on re-prioritisation, other testers being able to offer advice, a developer being difficult or helpful, or even a senior manager wanting to know the progress of a testing task. As we go through we throw in these sorts of requests, and other changes to the scenario, in order to see how the tester works when requirements change and the pressure mounts.

Attempting to complete the tasks without interacting with the other roles within the scenario is very difficult and we are looking as much towards how and when the candidate asks for help, as we are to the testing skills that they show.

After the scenario’s are complete then we discuss with the candidate how they think the scenario’s went, what they thought went well and what they would do differently if faced with them again.

 

Is persona based interviewing useful for test roles?

We think it is. Mainly because:

 

It gives us a better idea of how the candidate thinks, and how they approach a testing problem

I’m a firm believer in context-driven testing and Rapid Software Testing in particular, as is the company I work for. To me, being able to observe how someone approaches a testing task, who they communicate with, and what questions they ask is very important. Being able to get an understanding of how they change their approach based upon the context is also much easier within the scenarios. Using persona based interviewing I get to discover more about ‘how they tick’ rather than what testing terms they can remember, or how much of their career story they can tell.

 

We get to see a candidates real, practical skills

By giving the candidates tasks based around testing our live applications, usually on an iPhone or iPad, we give the candidates an opportunity to demonstrate the real, practical skills that they have. We encourage the candidates to talk us through what they are doing and give them the opportunity to demonstrate what they know. Being able to demonstrate ability also puts people more at ease and we get to see what they can really do.

 

It focuses on critical assessment and improvement

By having a de-brief or lessons learnt session after the scenario’s have played out, we also get to see how a candidate critically assesses themselves, and discover what they would do differently given another chance. Making mistakes is human but learning from them is the important thing, and I don’t expect testers in my teams to get everything right first time. However I do expect them to be able to recognise ways in which they can improve.

 

It’s more fun than just answering questions

It’s certainly more fun for the interviewers, and hopefully it’s also a bit more fun for the candidate (as much as interviews can be anyway). Asking questions isn’t much fun, and only being able to show your skills in simple answers, is not the best way to spend your time. Demonstration of skills tests how a candidate works not what they can remember.

So, why not try persona based interviewing next time you are recruiting for testers. It can be a great way of finding really good people who you can have confidence will do a good job.

 

The next post in the series will be about C.V.’s, and what you need to highlight in order to get noticed.

Image courtesy of Ambro / FreeDigitalPhotos.net

 

Starting a New Job in Testing

Image

Thing have been a bit quiet around here. Maybe you’ve noticed it. Maybe you’ve only came to this blog for the first time, from a link from Google or Bing, in which case welcome, and do note the gap in posts. I’ve been busy.

Primarily this has been because I’ve been searching for, and then settling into, a new job in a new company. Starting a new job isn’t easy, be it in testing or any other field, and it’s what you do in the first few months in a new company that can really affect how the rest of your time there goes. Those relationships you make early on, and how you are seen by others matter. It matters a lot.

So, while things are fresh in my mind, here’s some handy hints on what you should consider when starting somewhere new. I’ll be sharing further articles about recruitment, job searching and C.V.’s over the forthcoming months.

All presented with a software testing view.

Talk to people

Probably the most important thing you can do when you start, especially in a testing role. Being a good communicator, with the ability to get on with as many people as possible is very important as a tester. Spend your time searching out the important people, introduce yourself, and find out more about them. Ask them about the company, ask them about how you can work together, and find out what they think about how the company does testing. Those relationships you make early on affect how people see you for a long time. Sure, you won’t be able to remember all their names, but make sure they remember yours. And yes, this does mean talking to more than just testers 🙂

 

Ask Questions. A lot of questions

Testing is all about questioning a product in order to evaluate it, right? Take the same approach when you start a new job. Ask everything you can think of, no question is too stupid to ask if you don’t know the answer. Often, so much information in a company, is un-documented, and you want to make sure that you can understand the bigger picture, as well as just knowing enough to do your role. As testers we need as broad a view as possible in order to work effectively so make sure that you learn by questioning, and continue to do so. It takes time to settle into a new job but the more questions you ask then the quicker you should be able to feel like you understand company and your role within it. Don’t sit there, feeling blocked because you don’t feel like you can ask something.

 

Be nice

First impressions count. When you first start you meet a lot of people. Every time you meet someone new then that’s a new first impression. Always remember to be nice. Even if you are really an evil tester 🙂

 

Consider what you are bring to the company

They decided to employ you, there must be a reason, right? 🙂 Remember that you have good, and relevant, experience that you can bring. It’s easy when you first start, to just spend your time learning the company and your new role. But do not forget that your experience from outside the company could be really useful. Maybe your old company did it’s test automation a particular way or maybe you can see the new company works in a way you helped improve in an old role. It’s often new starters who are in the best position to see improvement areas. Don’t just accept that ‘this is the way its done round here’, and don’t feel afraid to speak up.

 

Ask for feedback

It can be really easy when you start somewhere new to just go into things head down and try and pick everything up at once. Remember that you need to pause and ask for feedback. Make sure that you question your own understanding of things, as you learn them, and regularly ask for feedback from those you work with.

 

Don’t forget to continue focusing outwards as well

When you start at a new company it can be really easy to spend all your time learning your new role. After all, there is a lot to pick up and a lot to learn. It is tiring, but don’t forget what you did before. Since you are reading this then I assume you read software testing blogs at least. Keep active in the testing community and keep learning. That way you can bring not only new ideas from your previous job, but also new ideas from the whole testing community.

 

Enjoy it

It takes a lot of effort when you start a new job. There is a lot to learn and a lot of people to meet. Focus on what attracted you to the new job and don’t forget to enjoy it 🙂

 

I’ll Be a Panelist at the Next Generation Testing Conference on 6th December

I’m excited to be able to announce that I’ll be a panelist at the Next Generation Testing Conference which is on Thursday 6th December in London.

The conference is in its seventh year and is continuing with the  format that was trialed at the last conference in May, with more emphasis on panels and discussions, together with case studies. This should hopefully mean that there’s some great audience participation and discussion on software testing.

I’ll be on two different panels during the day – “Retrospective on 2012” and “Looking Forward to 2013” We’ll be debating various topics including:

  • What have we learned in 2012?
  • TestDevOps – what does it mean to you?
  • Continuous Integration and Continuous Delivery – lessons learned
  • Mind Map techniques that work with Agile
  • Advances in risk-based testing
  • Changes in approach for testing cloud based solutions and mobile applications
  • The rise of TestOps
  • Innovation/renovation
  • What is the next big thing?
  • “Prespective” of 2013

Others presenting or as panelists at the event include Paul Gerrard, Julian Harty, Steve Tulk and Niels Malotaux.

It’s sure to be a great event, as the last one was. Hope to see you there. You can find out more about the event at http://next-generation-testing.com/