Preparing Engineering Managers for the Future of Work

Over 64,000 developers from around the globe participated in Stack Overflow’s annual Developer Survey, published last month. A striking finding was the widespread preference for remote work: 64% of developers indicated that they work remotely at least once a month, with 11% working remotely full time. Even more remarkable is that when assessing job opportunities, developers ranked “remote alternatives” as a priority, second only to the number of vacation days offered. This highlights the importance of remote work as an attractive benefit for potential employees.

It appears that remote work will become the prevailing working arrangement in the not too distant future, if one takes the stance that developers are creating the script for the future. This is further reinforced by the fact that current labour laws are restrictive and there is a critical shortage of technical professionals in the United States. Consequently, it seems that the decentralised work environment of the future could arrive much sooner than originally anticipated.

The successful implementation of a distributed working model requires comprehensive planning, which goes beyond simply incorporating remote workers into a digital workspace. If IT firms want to reap all the rewards of this approach, they must be fully committed to it. Although the transition may be challenging initially, the establishment of strategies and systems to facilitate communication and collaboration will be worth the effort in the long run.

Over the past six months, I have had the privilege of serving as Vice President of Technology for Works. I have successfully managed a team of around forty individuals located in New York and Asia to develop the necessary infrastructure, software, and processes to enable remote teams to be effective and expandable. This means that Works is expected to see an increase from the current 500 employees to over 100,000 within the next decade.

The introduction of Github and the pull request has been a groundbreaking development in enabling remote engineering teams to separate the development of their work from its integration. However, the challenge now lies in taking this concept further to create a pull request that is suitable for the team’s business context. Can our 500+ employees, from engineers to operations associates, work knowing exactly what needs to be done, submit the request, use continuous integration and be confident that they are making daily improvements, despite the fact that they may be in a different time zone than the rest of their colleagues?

Despite the challenges we face, we remain confident that we will succeed. In the upcoming three blog posts, I will be exploring the following topics: how to cultivate the growth of individuals in a distributed environment; scaling up dispersed teams within a rapidly expanding business; and how to develop dynamic systems and processes for remote teams. Please stay tuned for more information!


Initial Chapter: Distributed Team Dynamic Systems and Controls

In a decentralised environment, the efficacy of the process is fundamental to the success of the final product. Unfortunately, even fewer teams, particularly in the startup industry, have robust processes in place. This is due to the fact that in this sector, changes happen at a rapid pace, making it difficult to rely on the same tried and tested procedures over long periods of time.

The Focus Is On Outcomes Only

Whether a company is operating in a partially distributed model, with a portion of its employees working from remote locations, or in a fully distributed model, with all of its employees working remotely, there is no single, definitive approach to effectively managing a dispersed workforce. For example, Automatic, a company that is valued at one billion dollars, has a workforce of approximately 400 staff members who are located in various places around the world and are able to work from where they are most comfortable.

A key distinction between companies, such as Works, which have implemented distributed processes from the very outset, and those which are now attempting to transition to a distributed approach on their 500th day of operations, is the difficulty of having to re-adapt existing procedures to a remote working environment. Whilst face-to-face interactions can be beneficial, they are not always possible, therefore it is essential for all businesses to establish clear and concise protocols that will enable efficient communication between all stakeholders.

As managers transition to a dispersed work setting, they must recognise the limitations of asynchronous communication and be prepared to delegate more authority and responsibility to their team members. This shift in authority allows for fewer iterations of problem-solving dialogues, while still allowing team members the freedom to move ahead on projects without being blocked. Ultimately, this shift in authority is necessary to ensure the success of a dispersed work model.

In order to effectively evaluate the performance of each engineer and team, you must design a measurement framework that all stakeholders are in agreement with. This framework should outline the key performance indicators (KPIs) that will be used to measure success. To ensure the process is straightforward, it is recommended to break the task into smaller, more manageable pieces. At the conclusion of each week, you should have a single number that represents the performance of each engineer and team. This will enable you to objectively assess the performance of each group and appropriately allocate your time and resources.

After picking a metric and settling on a standard, you release the team and watch the results.

It is essential to bear in mind that these standards are not absolute and may alter as you move forward. This is not a critical examination, but rather, a way of recognising what can be improved and how future assessments can be enhanced. You may feel as if you are being deprived of some control, however, if the results are satisfactory, then there is no reason to be concerned.

Comparing Signal to Background Noise

Remote work has its own unique set of challenges, particularly when it comes to effective communication. When the only way to connect with coworkers is through digital mediums such as Slack, email, and Google Hangouts, it can be difficult to distinguish between meaningful messages that require urgent attention and those that are simply passing thoughts. This “battle between signal and noise” can lead to confusion, miscommunications, and frustration, making it difficult for employees and employers to get their messages across in a clear and timely manner.

In a decentralised work environment, the absence of ambient noise can make it difficult to determine the significance of a message. Establishing a rapport with a colleague by engaging in informal conversations and activities is an effective strategy for learning more about their interests and expectations, so that communication can be tailored accordingly.

Due to the numerous communication channels that remote teams often utilise, such as Slack, Google Docs, Github, and Trello, it can be difficult for them to maintain a sense of organisation and keep up with the sheer amount of data that is being shared. Without a unified repository for knowledge, the process of finding and utilising information can be lengthy and challenging, which can lead to increased strain on communication.

As a dispersed manager, it is essential to ensure that communication is effective and that incoming support queries are directed to the appropriate place. To achieve this goal, it is necessary to set up systems to capture feedback and turn it into actionable insights. For example, when an issue is raised on Github, it provides a common platform for the team to interact on and focus their conversations. Assigning a method for addressing an issue after collating various information is made much simpler with the utilisation of Trello. Holding regular retrospectives and recording them adequately on Google Documents is an excellent way to guarantee that all views are taken into consideration and to work through systemic issues as a collective.

In a world flooded with information, it’s important to pay attention to the messages that matter.

The Problem of Too Much Free Time and How to Fix It

The sheer amount of communication that takes place within Slack is overwhelming. I am a firm supporter of Slack, and our company utilises the platform in its entirety, however, it is important to remember that it is only a tool, and if not utilised properly, it can be detrimental.

In the worst case scenario, chat can become a perpetual ‘meeting’ with no agenda or progress on action items. However, it is possible to use this asynchronous communication technology in more beneficial ways. For instance, using chat to prevent people from speaking behind each other’s backs or in private. Furthermore, ChatOps can be an effective method of software development; utilising bots to keep everyone updated on progress and deployments during the process.

In order to achieve the desired outcomes, it is essential to not only have the right tools in place, but also to cultivate a culture and set of beliefs which will foster the best possible use of those tools. Slack is a great tool for the initial stages of the creative process, such as brainstorming, but the ultimate product must have a secure location where it can be addressed and resolved.

If you want to work as effectively as possible with Slack, it is recommended that you move conversations out of private messages and into public channels. An accurate way to measure the success of an engineering team is to look at the number of bugs reported and resolved within a certain timeframe; therefore, it is essential to get these issues out in the open immediately and broken down into smaller parts so that they can be addressed as soon as possible.

Collaboration is an invaluable tool when it comes to finding solutions to any issue. By addressing matters in public channels, we can achieve resolutions more quickly. Moreover, a larger group of people can be involved in the process, allowing for greater feedback. It is important to note that problems that are kept secret have a tendency to worsen and take longer to resolve. Therefore, working together is a great way to ensure that issues are solved in a timely manner.

It may not be as straightforward as initially anticipated to successfully establish and manage channels in a large organisation, such as Works, with more than 500 employees. We are still in the early stages of understanding how to cultivate these communities and how to utilise key performance indicators to focus our staff on refining their chat behaviours.

In conclusion, effective procedures are essential for the success of dispersed teams. To ensure high-quality outputs, it is important to prioritise tasks, select an appropriate repository for data, and ensure that any issues that arise are addressed promptly by the team. In my next entry, I will delve further into the specific challenges associated with training and mentoring remote teams.

Join the Top 1% of Remote Developers and Designers

Works connects the top 1% of remote developers and designers with the leading brands and startups around the world. We focus on sophisticated, challenging tier-one projects which require highly skilled talent and problem solvers.
seasoned project manager reviewing remote software engineer's progress on software development project, hired from Works blog.join_marketplace.your_wayexperienced remote UI / UX designer working remotely at home while working on UI / UX & product design projects on Works blog.join_marketplace.freelance_jobs