DEV Community

Cover image for How to shift the mindset of a development team?
Juan Otálora
Juan Otálora

Posted on

How to shift the mindset of a development team?

It's challenging to make core changes within a team when the established way of working is deeply ingrained, everyone follows the same methods, and they are unaware of the negative impact this is having on the project.

From technical debt to poor architecture or even communication issues, the perfect team doesn't exist, and we shouldn't expend effort trying to achieve it. According to statistics, reaching perfection, attaining that 100% in a team, is too costly for the limited value it can provide. This is analogous to speed; the fastest we can go is C the speed of light in space, but the immense amount of energy required to reach this speed makes going at 90% C a much more intelligent decision.

The first step in changing a team's way of working is identifying its shortcomings, analyzing them, and finally deciding which one to solve first. In this case, I will share my personal experience of changing the front-end architecture in an application developed by multiple teams simultaneously.

Get Them Involved in the Change

Allocate time (as much as needed, depending on the scale of the change) to communicate the problem to the team. It's crucial that they understand it. The sooner the problem is understood, the sooner there will be a willingness to change.

Beware of analysis paralysis. It's essential to contemplate the change and be aware of its repercussions, but get to work as soon as possible. If you're still not certain, develop proof of concept tests. Involve the rest of the team in these trials; it will help them understand the reason behind the change.

Keep in mind that people tend to stick to their routines and resist changes, especially when those changes could affect their standing in the team. For instance, if you want to revoke a suggestion made by a fellow team member, it might be tougher to persuade them compared to others because it challenges their established thought process and values. In such situations, I suggest having a conversation with that individual beforehand, addressing the issues arising from the proposed action, and attempting to gain their support for the adjustment.

In summary: learn to listen, understand others' problems, and respect different viewpoints. Attacking someone's ideals is essentially counterproductive, no matter how misguided their thinking might seem.


If you found this helpful or enjoyable, add a reaction! ❤️ Your likes are appreciated and keep me motivated!


"Why" Before "How"

James Clear explains in Atomic Habits that there are three ways to sustain habits over time:

  1. Because we have to.
  2. Because we have a milestone to achieve.
  3. Because we believe in it and its benefits.

Clearly, the path we choose will yield different results. The first, the path of obligation, is easy to start but challenging to maintain because there's no underlying incentive. The second, the milestone path, is somewhat more complex because we need a reasonable goal that we wholeheartedly believe in, but its duration ends once the milestone is reached. The last one is the most challenging of all. It requires a mindset change, a shift in principles, which isn't hard, but once achieved, it will help sustain the change as long as the new mindset persists.

For making changes within a team, I strongly discourage the first option unless it's a temporary measure requiring urgent application. The second is usually relatively easy to apply; it doesn't require much preparation time (just defining a milestone), and it can be combined with the third and most interesting option, as it can lead to a lasting change in the team.

Another advantage of instigating a mindset change in the team is that you create a self-sustaining network that doesn't need anyone to govern them. When the team believes in what they're doing, they don't require bosses to give orders, only leaders to help them keep growing.

Keep the Leaders Close

Something not essential but highly beneficial is to identify and stay close to the leaders of the teams. And mind you, don't confuse leaders with bosses. People obey a boss because they have power over them, but they follow a leader because they believe in and trust what they do and say. In some cases, the boss figure may coincide with the leader, but it doesn't necessarily have to.

Identify those individuals who have the trust of the teams you want to change and involve them in the process. Explain the solution you propose, the advantages it will bring (why before how), and listen to their suggestions.

Remember, if you can convince them of the principles underlying the proposed change, everything else will become much more straightforward.

Practice, Practice, Practice

No matter how much effort you've put into the previous points, you'll realize that you won't always have the confidence or attention of 100% of the team. In these cases, it's a good idea to carry out a small practical activity just before implementing.

In the case of a front-end architecture change, conducting a "kata" led by the person who spearheaded the change is usually a good idea. You'll notice that many people who seemed absent in the analysis meetings will join the change train when they firsthand understand the benefits.

You may have spent a lot of time trying to explain the "why" behind things, but some people simply lack the motivation or understanding and may not express their confusion. Don't judge them; not all people behave the same way. This practical activity exists to convince the remaining team members who may have been left behind.

My recommendation is that the latter practice should be face-to-face. Remote work has many advantages, but interpersonal relationships don't necessarily benefit from it. You'll see much more participation.

Conclusion

Here's what we know:

  • 100% perfect teams can't be efficient. Aim for 90% or 95%.
  • Involve the team in the change from the beginning.
  • Changing a team is challenging, especially if it challenges the ideals of some individuals.
  • Learn to listen, explain, and respect other opinions.
  • Change the team's mindset for fruitful and lasting changes.
  • Team leaders are your best allies.
  • Practical examples will help you persuade team members to embrace the change.

I'd love to hear your thoughts on this! What do you think? Feel free to drop a comment below and share your perspective with me! 💬

Top comments (0)