Forbes released an article in which 16 Tech Leaders Shared Bad Habits They Wish Their Developers Would Break. Immediately, we thought to ourselves, as a Tech Leader, how could I affect these habits, and what could I do to improve these outcomes? Let’s explore techniques to improve habits and collaboration among your development teams.
Disclaimer: We are speaking in general terms and from our personal experiences. Each developer and tech leader has their own perspectives and unique circumstances, which might deviate from the observations outlined in this post.
Developers’ Point of View
Before we dive in, let’s aim to understand the developer’s viewpoint. Some of the developer “bad habits” mentioned in the Forbes article include:
- Not asking “what or why”
- Sticking to “what works”
- Not thinking beyond “execution”
- Focusing too much on their own interests
Many developers, like people in other professions, want to be respected for their abilities and willingness to be a team player. In an effort to please, it’s common for developers to entrust priority-setting responsibilities to higher authorities. This “go with the flow” style can lead to a decreased sense of ownership, which can contribute to the problems listed above.
Additionally, developers tend to focus on what they’re passionate about, taking the path of least resistance. That means developers are more likely to have detailed discussions about the implementation details instead of business prioritization matters, like “Should we be doing this work in the first place?” This is especially true when they do not have a full context to have prioritization conversations. Developers often solve the problems that are right in front of them with the information they possess.
The field of psychology established it’s easier to point fingers elsewhere, but the real value comes from directing that finger toward oneself and asking, “What can I do to improve?” So as a tech leader, what could you do to support your development team in focusing on providing business value while minimizing bad habits?
Techniques to Improve Developer Habits
#1 Consistently Reinforce The Big Picture
Make sure that everyone has a strong understanding of the business and its objectives. Without this understanding, it can be difficult for developers to make informed decisions and work effectively toward the company’s goals. To get started, set up 1:1 meetings with the developers on the implementation teams to engage and ensure mutual understanding. That way, you can address their questions or concerns while providing and receiving personalized feedback. This will build trust between you and your development team members, leading to better communication and collaboration.
Also, be sure to reinforce this business context at a regular cadence. You should be sharing company progress updates, discussing challenges, and providing insight into the business impact of the work your development team has done so far. When your team is given this sort of context, they can provide more value.
#2 Get Developers Involved Early in the Planning Stages
Some combination of executives and product team members typically define the requirements needed for a given project. Those requirements are then handed off to developers who handle implementation. By the time requirements have been created, momentum has been built around certain decisions. If developers don’t get included until requirements have been made, they’re a lot less likely to share ideas that might go against the tide of decisions that have already been made. If you want more “thinking beyond execution” from your developers, you have to invite them to the table early in the process.
It’s common practice to centralize any directional or strategic decision-making while decentralizing any that are more implementation focused. However, there are many cases where the cost/benefit ratio of a given set of strategic options vary greatly based upon implementation concerns. Identifying those situations early will make it easier to get feedback flowing between centralized planners and decentralized contributors. When hosting those sort of feedback sessions, it’s important to diffuse any unspoken positional authority, as the quality of an idea should trump the authority of the idea creator. This promotes a collaborative environment, encouraging developers to ask more questions and remove the “stay in my lane” mentality.
#3 Set Expectations to Understand the Business Value
Everyone in your organization should aim to understand the business value. Developers are passionate about solving problems, and they may not understand that their job is to create business value, not just complete tickets. When you set this expectation, everyone is now held accountable to understand how their work impacts the business and its customers. You can set these expectations when building a team charter to establish a shared understanding of how work should be done. When creating a team charter, also make sure to establish key responsibilities for each role, including yours. This will enable your development team to understand everyone’s expectations and make better ground-level decisions to positively impact business value.
Summary
Successfully addressing your development team’s bad habits requires understanding your team’s perspective and being willing to identify ways you could improve. By instilling these techniques in which you:
- Consistently Reinforce The Big Picture
- Get Developers Involved Early in the Planning Stages
- Set Expectations to Understand the Business Value
You can improve your team’s habits as you foster an environment that ensures everyone has full context on business objectives, allows reciprocal feedback between leadership and engineering, and establishes expectations for everyone to understand business value. Though it may take some time to completely transform your developer’s habits, maintaining consistency in applying these techniques will yield significant value for your business in the long run.