Managing the constant influx of information can be challenging for organizations.
If you fall into the trap of communicating everything to the whole company, people won’t be able to detect what’s relevant for them, and important information might get overlooked. On the other hand, if you don’t provide employees with all the information they need, it’ll affect your overall efficiency.
How can you deal with information overload and find the golden mean to manage communications?
Hadi Hariri, VP of Developer Advocacy at JetBrains, shares his approach to dealing with information overload. He gives valuable advice on defining relevant information and talks about his experience managing communications at his company.
This blog post was written based on episode 75 of the Level-up Engineering podcast hosted by Karolina Toth.
This post covers:
In a company, there’s always a lot of information going around. Some information may impact your work, some may not. As the company grows, information often gets missed, so multiple people end up doing similar activities without being aware of each other.
To avoid this issue, some companies share every minor detail, which creates too much noise. As a result, people start to overlook and miss important information.
Depending on how information is presented to us, it can be pushed or pulled. If an employee guide is available somewhere that we can access and refer to, that’s a pull. An example of pushing is when an email goes out to the entire company, because everyone has to be aware of that message.
Tooling doesn’t help you decide what to push and what to pull, because the issue isn’t rooted in your tech stack. It’s a people problem, and it has to be approached as such.
When we talk about leadership and management, one of the characteristics that a leader must have is being able to see the bigger picture. They don’t just focus on the team they manage, but they also focus on how their work relates to other teams’ work inside the company and how that relates to products and services. Having this company-wide vision contributes to deciding what’s important and what’s unnecessary noise for each team.
There are multiple approaches to finding the right amount of information. From one side, there’s a tooling perspective. It’s especially popular among software developers to solve problems with tools. Slack, for example, is a tool to consolidate all company-related information in one central place.
In reality, there are so many channels and threads with so many posts that you miss out on things that may be relevant to your work. If your company gives teams the freedom to use whatever tool they see fit, relevant information might be scattered across multiple platforms.
At JetBrains, we use our own equivalent of Slack; it’s called Space, and it consolidates many aspects of software development into one place. Even with our own tool, we faced the same problems as we did with other platforms, so I realized that we were focusing on the wrong thing. We were trying to find a tool that would help us deal with information overload, but we weren’t tackling the actual issue, which is deciding what information should be pushed to people and what information they should be allowed to pull for themselves.
In our case with Space, we have a feature called internal blogs. We have blogs for different teams and projects, and people can subscribe to them. The author of each blog can determine who the target audience of their message is, which also influences the flow of information. Maybe they decide that the information on their blog impacts the whole company, but maybe it’s targeted just for one specific team.
Most of the time, this function doesn’t serve its purpose, either. Everyone targets the entire company with their blogs, people receive up to 20 internal blog posts a week, and some important posts end up being overlooked.
The root of the problem is determining and communicating what’s important on a personal, team, or company level. It’s not something that people are generally trained in, and tools can only help in minor ways. For example, every time someone wants to send out an internal blog post for the entire company, a pop-up window can ask the author if they’re absolutely sure this concerns everyone.
When the flow of information isn’t managed properly, teams can face multiple drawbacks. First of all, if someone doesn’t communicate with their team members in a helpful way, they can create an unpleasant atmosphere, because it may seem like they don’t want to engage in conversations.
Even worse, if someone doesn’t share what they’re working on, they can hinder the efficiency of an otherwise high-performance team, because they might end up duplicating things.
I encourage folks to document information that would affect the team members and potentially others inside the company in the most efficient way possible.
Instead of having daily standups, we simply log information on a page. It’s important not to treat this as a list of what each individual has done throughout the week, but more as a way of tracking things that may have an impact on their team or on anyone across the company. Then I encourage everyone to go through these pages and to read what other colleagues have done that week.
When we started this practice, everyone was focusing on what they had done. Through many iterations over the years, we’ve tried to fine-tune the process and only include things that may have an impact.
For example, my team does a wide variety of activities from speaking at conferences to creating content and even booking flights. I told my team not to log ‘booking flights’ in their pages, because that’s not relevant to anyone else. Of course, you’ll never know when you’ll need a certain piece of information, but with enough practice, you can determine what’s generally useful and what can be omitted from your activity log.
For engineering managers and team leads, it’s crucial to see the bigger picture, but it’s also their responsibility to make sure that people on their teams don’t fall into the trap of tunnel vision. Even if they don’t move into management roles, it’s always good to have a better understanding of team objectives and key results.
Engineering managers should also be able to help team members with the flow of information and to ensure that relevant information reaches the people it needs to reach. They also need to pay attention to their teams’ activity logs and provide continuous feedback on what things are useful to log and what can be omitted.
Many managers and team leads struggle with giving feedback that is not positive. They shy away from that responsibility because they’re afraid that criticism will disappoint or discourage their team members. However, constructive criticism, if communicated properly, will not come across as an insult.
We encourage a “praise in public, criticize in private” approach to make this process a bit less challenging. There are still instances when people criticize in public, but it’s usually done without malice. It’s done because they don’t know who to ping, or they’re concerned about something and they don’t have any other way to fix the issue.
Achieving an effective flow of information is crucial for ICs as well. Besides using their technical knowledge, communication is also part of their job, and it enhances their professional and personal life. Becoming a better communicator will always help in life, so it’s a skill worth improving.
If ICs want to improve their communication skills, they should reach out to a colleague who can mentor them. They can ping that person whenever they’re unsure how a piece of information should be communicated and whether it concerns their team exclusively or the entire company.
We're constantly improving our flow of communications. However, deciding how much information to spread is an ongoing challenge. We don’t want to push too much information, because people will start to ignore it and they’ll miss relevant things as a result.
We have a strict policy on using the right Slack channels according to our purposes. We don’t post anything in the general channel unless it specifically impacts the entire company. For random questions and discussions, we have other channels. We also have employee guides and written standup documents, so people can pull information from those when they need it.
If you have people in managerial positions who are aware of this problem and can use certain policies and restrictions to manage the daily information overload, then you can definitely fix this issue. However, keep in mind that as the company grows, managing information becomes a bigger challenge.
Our company used to have a flat hierarchy. We consisted of team members, team leads, and the CEO, and that was it. Now we have multiple layers. Not for the sake of bureaucracy - anyone can talk to anyone regardless of their titles, and we have public discussions with no issues. The aim of multiple layers was to enable people to be coordinators, so different departments would be in contact with each other.
A final warning: don’t think that tooling is going to solve your problems. It may help, but you need to focus on the people. And that comes from a guy who works at a tooling company.
Hadi has been programming since he was 12 years old. He has gained valuable experience in software development and consulting throughout his career. Currently, he leads the developer advocacy team at JetBrains, a company making tools for software developers.
Outside work, he’s passionate about gardening and playing the guitar.
👉 If you are serious about becoming a great engineering leader, you should take a deep dive into the State of Engineering Management 2022 report.
🚀 Need developers for your team or project? Hire our experienced Angular, React or Node.js developers! Click here for a FREE consultation.
About the author:
Dorottya Csikai is a content marketer at Coding Sans. She has experience in journalism, interviews, management and content marketing. She researches, writes and edits posts for the Engineering Leader's blog.