Stuck In A Rut
Is your development team stuck in a rut? Do you think they might be? Let’s discuss some warning signs and what to do to get your team back on track!
- Your team’s velocity has slowed to a trickle and bugs (defects) are on the rise.
- Your team used to have lively discussions in meetings, but those have been replaced with grumbles (or worse, silence!) and apathy. Or perhaps, what feels like quick agreement.
- Your team looks more productive (because they’re quiet): they’re always at their computers, don’t talk much, and maybe eat lunch at their desk. Your online chat is quiet.
- No one volunteers to take on challenges or try different things (especially if they used to do so!).
- You overhear your team discussing how things used to be more than you hear them discussing how things are or will be. Being proud of your collective past is great. You need your team to stay positive about the future.
Left unchecked, any of these issues could slide into a serious morale problem. And that does not bode well for your team’s productivity. So, how do you get things back on track? I’m a strong believer in trying to fix the root of the problem, not just treating the symptoms (although that can help temporarily). Let’s discuss a few ways to get your development team out of their rut and into high gear.
Shake things up
We all like our routines, but sometimes they get in the way of being active participants in our jobs. Find ways to shake the routine, just a little, to get people actively participating.
Developers practically sleeping through standup? Change it! Ask everyone to answer a different question. At Quick Left we like to ask: “What did you learn yesterday?” People get excited to share something new that they’ve discovered, and conversations frequently continue after standup is over.
Teams just not working well together? Try moving folks around if possible. This can be a contentious issue, so you need to do it carefully. You’ll want to make sure that you’re clear that you’re not moving people for bad performance, and give folks an option to stay. Alternatively, you could make an open ask for your developers to tell you if they want to try something different. Maybe they want to change teams! Keeping your developers excited and eager to work could be as simple as letting them try the grass on the other side of the fence.
Don’t do standups? Finding it difficult to help your team interact in a way that boosts product development success?
Consider utilizing agile methodologies to encourage team collaboration by downloading the white paper on Agile Methodologies in Software Development.
Build Your Team
Team building – how well does your team know each other? How well do you know them? Spend time doing things to grow your team. Maybe it’s encouraging your team to eat lunch together, rather than at their desks. Perhaps it’s small things like having cake on birthdays or work anniversaries, or a monthly/quarterly team lunch.
Talk to your team. Find out what they, collectively, need. Are they struggling with a new technology they need to use because they lack the resources to train up on it? Find ways to provide that resource! Bring in a trainer, get a subscription to an online training platform, or at least buy some books for team use. If juniors are struggling, encourage more senior developers to spend time mentoring them. It’s a great way to encourage team bonding AND grow better developers.
Build Your Individuals
Do you know what each of your team members wants to be doing in 5 years? In 1 year? Help them define goals, then encourage and support follow-through. Each individual probably has something that they want to accomplish or would like to learn more about. Find out what that is! If there’s a way to make that happen through work, make it happen. Perhaps it means cross-training with a different team, or going to a conference. Maybe they need some support to write a talk for a meetup or conference.
Celebrate Wins. Learn from Losses. Keep Moving Forward.
Every team has things to celebrate. Did you meet your sprint commitments? Deploy a big feature to production? Pull together to solve a hairy problem? Have a small celebration that reminds everyone that their work is valued. For example, at Quick Left, every time we close a new contract for work, we announce it in our online chat and post a stream of celebration GIFs. It’s our small way of saying, “Hey! A great thing just happened!.”
When things don’t go well, we can be tempted to shove them under the rug and hope it won’t happen again. Unfortunately, this can be bad for your development team’s psyche. Maybe your team worked really hard to avoid a bad situation, but it happened anyway. Acknowledging that things didn’t go so well is a first step. Don’t place blame on your team, on yourself, or especially a third-party. Instead, have a retrospective and discuss what happened. Could you have done something different? Maybe your team really did their best and still couldn’t have changed the outcome. What did they learn that they would do differently the next time a similar situation rears its head? Discussing it openly, acknowledging that the team did a good job, and then moving on can help maintain a positive team attitude.
Encourage Communication and Initiative
Are your developers in a rut because that they don’t feel their opinions or ideas matter? Maybe they don’t even really realize that this is the problem. Encourage open communication with their superiors (e.g., you), and LISTEN to their feedback. If your team member provides you with a good idea or presents you with a problem, react to it! Doing nothing with the information they’ve provided you will send the signal that you don’t truly value them as a team player, and they’ll likely become quiet. You don’t want that! By showing that you value their insights, you’re giving your team the opportunity to care more. The people who feel they’re valued are more likely to take initiative to fix things.
Encourage New Forms of Inspiration
Is your development team focused on keeping up with a product roadmap? Have they been working in the same codebases, on the same features or epics for some time? While they might be solving different challenges, racing against deadline after deadline, and working well with their team, they might be again, stuck in a routine.
Have an Internal Hackathon
Your development team knows the ins and outs of your company’s codebase more intimately than you probably realize. They probably have lots of ideas about how to improve the code, the deploy process, or even features that they think would be cool to build. Engage their creative side by hosting an internal hackathon where they get time to build that feature they’ve been dreaming about, or make that adjustment to the test suite that makes it run more reliably. While it can be costly up-front to allow your development team to take a break from their normal work for the day, the benefits reaped in refreshed, excited developers, improved code and process, and potentially new feature ideas can pay dividends!
Bring in A Speaker (or get team-members to volunteer!)
Does your team do anything as a group to continue their education? If not, try starting something. Try bringing in an inspirational speaker or a technical speaker on a topic relevant to your team. At Quick Left we have regular Lunch & Learns – we bring in speakers or have employees volunteer to speak on something they’re interested in. In return for listening and learning, employees get catered lunch! This is a great way to encourage your developers to build their public speaking skills, share things with their colleagues as “the expert”, and foster team building.
If you think your development team might be stuck in a rut, the first step to solving the problem is to identify the symptoms. Once you’ve done that, it’s important to ascertain the cause of those symptoms. It could be that your development team doesn’t feel like their opinions and ideas matter; it might just be that they’re used to their routine and need to change some things up. Either way, you’ve got some work to do to get everyone back on track. Try different things. Make sure your team knows they can communicate with you and voice their opinions and idea, and that you’ll take them seriously. And don’t forget to encourage creativity, taking initiative, and having some fun!