Software Development
Distributed & Local: Getting the Best of Both Worlds

Summarized using AI

Distributed & Local: Getting the Best of Both Worlds

Ben Klang • April 25, 2017 • Phoenix, AZ

The presentation "Distributed & Local: Getting the Best of Both Worlds" by Ben Klang at RailsConf 2017 explores the dynamics and benefits of hybrid work environments where some team members are remote while others are local. Klang shares insights from his experiences in leading teams across multiple states and countries, emphasizing the importance of finding a balance between remote and local work styles.

Key Points Discussed:

  • Team Structures: Klang categorizes teams into local, remote, and mixed formats. He highlights that while local teams tend to have higher efficiency due to face-to-face communication, remote teams offer broader hiring possibilities and increased job satisfaction for employees seeking flexibility.

  • Experience at Power Home Remodeling: Klang provides a real-world example from his current role, where the tech department includes 51 employees across six states and four countries, underscoring the company’s remote-first approach combined with local presence for certain roles.

  • Advantages of Remote Work:

    • Opportunities for hiring from a larger candidate pool, enhancing diversity.
    • Better work-life integration, allowing employees to manage personal commitments effectively.
    • Increased job satisfaction leading to lower turnover rates.
  • Challenges Faced: Communication emerges as the principal hurdle in remote work environments. Klang humorously notes that communication appears as a recurring theme, citing time zone differences and the potential for misunderstandings as central issues. Effective communication is vital and requires proactive management, especially in mixed teams.

  • Effective Practices: Klang discusses strategies for optimizing both local and remote teams, including:

    • Keeping teams small (around three to five people) to maintain effective communication.
    • Utilizing tools such as video conferencing, daily stand-ups, and shared documentation to keep everyone on the same page.
    • Encouraging occasional face-to-face meetings, lunch and learns, and team-building activities to foster personal connections.
  • Conclusion and Recommendations: Klang concludes that a one-size-fits-all approach doesn't work in hybrid teams. Organizations must continuously evaluate and adapt their structures and processes to accommodate the evolving needs of their teams while recognizing the unique advantages of both local and remote configurations.

Ultimately, Klang's talk emphasizes that being intentional about communication and collaboration tools can significantly enhance the productivity and satisfaction of hybrid teams.

Distributed & Local: Getting the Best of Both Worlds
Ben Klang • April 25, 2017 • Phoenix, AZ

RailsConf 2017: Distributed & Local: Getting the Best of Both Worlds by Ben Klang

Our company is traditional in many ways, one of which being the need to come into the office each day. Our team of software developers bucks that trend, spreading across 6 states and 4 countries. Dev teams consider themselves "Remote First", while DevOps and Application Support are "Local First." Each has adopted tools, habits, and practices to maximize their configuration. Each style has learned valuable lessons from the other. This presentation is about how our teams have evolved: the tools, the compromises, the wins and losses, and how we successfully blend Distributed and Concentrated teams.

RailsConf 2017

00:00:12.440 I'm here to talk to you about local and remote teams. We heard some great insights in the last talk, and I'm excited to cover some of those same concepts, but from my perspective. I really enjoyed listening to Glenda and Maria share their experiences.
00:00:25.980 My specific perspective on this topic is about the hybrid model, where we have team members who are both local and remote. I want to explore how to effectively combine those two styles to get the best results.
00:00:42.290 To start, I’d like to do a quick poll. If you are primarily someone who works locally in an office, please raise your hand. Not just once in a while, but most of the time, you're with the rest of your team in an office. Okay, that seems to be about half of you. And how many of you are primarily remote? Alright, that makes sense. Now, how many of you would like to switch to the other option? This presentation will focus on the advantages of each style and why you might choose one over the other. I believe there is a lot of value in both.
00:01:13.950 A little bit about me: my name is Ben Klang. I've been working with Ruby for ten years and have been involved in open source for twenty years. Much of my appreciation for remote work stems from my experience in open source, where most collaboration is remote, as contributors often live in different parts of the world.
00:01:26.430 Previously, I founded a company called Mojo Lingo, a software consultancy that was "remote first" from day one. We started with about 12 people. While not a huge organization, I learned a lot from that experience. Today, I’m the Vice President of Business Technology for Power Home Remodeling, which is a much larger organization with around 2,000 employees, 51 in the technology department. Our team consists of seven Scrum teams across six states and four countries, with a pretty even split between local and remote.
00:01:51.210 I want to stress that what I share today is based on my experiences. Everything you hear has come from lessons learned; some things have worked well, while others have not. I’m sure that some of our current practices can and will be improved in the future, and that's just part of the learning process.
00:02:23.530 To provide some background, let’s discuss what kinds of teams exist when we talk about remote work. When I say 'team', I am considering a fairly small unit, perhaps three to five people, rather than an entire department. These are the individuals you rely on every day. If they are not around, you’d likely hit a roadblock.
00:02:40.660 First, let’s define local teams. This is a straightforward concept: it's about people working in the same building—or even on the same floor or in the same room. It turns out that when individuals are separated by just one floor, they start to lose some of the benefits of being part of a local team. Much of the face-to-face interaction diminishes when you have to go out of your way to engage with them.
00:03:06.160 Local teams are about individuals co-located closely, ideally in the same room. The next category I want to mention is remote teams, which is also intuitive. These are people spread across various locations; sometimes they work from home, coffee shops, or co-working spaces. We even have one team member who loves to work from coffee shops. He spends the entire morning there; I wouldn't be able to deal with the noise, but it works for him.
00:03:43.030 The third type is mixed teams. This is when most of the team is in one physical location, but one person is remote. I view this as an anti-pattern and don’t want to focus on it for long, other than to say I advise against it. This setup often leads to isolation for the remote individual. They can miss out on conversations and might not have the same understanding of what is happening within the team or the organization. Additionally, if a team is split into two locations, it can lead to the formation of cliques, and communication may suffer as a result.
00:04:40.660 Here’s something that might be controversial. I believe that local teams are often more effective and efficient in software development. All else being equal, having everyone in the same room tends to be the fastest way to achieve your goals. I say this as someone who spends half my time on-site and half working remotely. I also co-founded a remote-first business and was very happy there.
00:05:12.180 In my experience managing three remote teams and one local team, I can say local collaboration enhances communication and camaraderie. It facilitates brainstorming and problem resolution as well. Scrum emphasizes co-location, reinforcing that this isn’t just my opinion, but a widely recognized concept.
00:06:11.039 So, if local teams are so advantageous, why even discuss remote teams? Many people prefer to work remotely, and as I saw in the earlier poll, many of you are currently in remote circumstances and might want to switch. According to a Stack Overflow article, 53% of job seekers prioritize remote options when exploring job opportunities. If you’re hiring, offering remote work becomes a major competitive advantage.
00:06:39.630 Moreover, 11% of remote workers report higher job satisfaction compared to local workers. It's not only critical for attracting talent but also for retaining employees. Job satisfaction is related to productivity and longevity within a company—that's significant.
00:07:02.520 However, not all positions can be remote. In our organization, we've identified specific roles, such as application support and infrastructure support, where remote work is not feasible. These roles require daily interaction with end users. We manage our own physical infrastructure and prefer those teams to be local to address any issues on-the-fly.
00:07:30.090 A notable evolution for us has been with junior development teams. We ran an experiment about a year ago where we established a remote team of junior developers paired with mentors to guide them. While it was successful, we found that supporting and mentoring them remotely was more challenging. Establishing communication to explain complex processes was harder when they weren't local. Now, we prefer to have all junior developers at our headquarters to ensure they receive the mentorship they need.
00:08:47.370 So, what benefits does enabling remote teams offer? Starting with employers, it opens up a broader applicant pool. Looking locally, you might find the best candidate within a 50-mile radius. By broadening the search to a few time zones, you gain access to far more qualified individuals.
00:09:28.640 Additionally, this broadening allows you to better capitalize on referrals. Team members refer their friends, which can lead to quality candidates who may not live nearby. Moreover, broadening your hiring pool often reduces time-to-hire significantly. After we doubled our size twice within two years, we recognized that relying solely on local talent wouldn’t yield enough candidates.
00:09:59.090 More importantly, with remote options, we can enhance our team’s diversity. For instance, if a mother with a newborn prefers to work from home, remote roles accommodate that fulfillment, unlike traditional work settings. Being present to support family dynamics often leads to happier employees.
00:10:28.740 So, the advantages to employees extend beyond just being there when their children get home from school. It’s about lifestyle choices. I personally enjoy living in an urban area where I don't need a car, allowing me to walk to shops and restaurants. Another friend of mine had a challenging commute of two hours each way that added stress and fatigue. If remote work were an option, his productivity would undoubtedly increase.
00:11:11.710 Having the flexibility to choose your location empowers employees to balance their lives better and still maintain a satisfying career. Additionally, there are mutual benefits—the evolving life circumstances of team members necessitate changes. For instance, one of my friends from the UK married a Brazilian and wanted to settle in Brazil. If his role was tied to a specific location, we would have lost a highly skilled developer.
00:12:01.640 When employees can transition locations while maintaining stable employment, both parties benefit. Location independence can enhance longevity at an organization, which is advantageous for employees and employers alike.
00:12:36.429 Of course, with remote work come challenges. Communication is the most significant hurdle. You’ll find it is often the top challenge in remote work. I’d argue that number two and three are also communication.
00:12:55.829 The first aspect of communication is time zones, which complicate things when growing a team. It’s critical for team members to communicate and support one another. We implement a rule of thumb: a remote team should not be spread across time zones greater than three hours. We try to align teams within a three-hour range to maintain overlap in work hours.
00:13:55.670 Second, the challenge is in achieving a deep understanding of the work. George Bernard Shaw quote summarizes it perfectly: the biggest problem in communication is the illusion that it has taken place. Team members might spend time explaining projects, but if it doesn’t connect, the effort is wasted. This is why we value visual aids. Whiteboards simplify the explanation of complex concepts; however, this doesn’t translate as well in remote scenarios.
00:14:46.090 So instead, we focus more on video conferencing, screen sharing, and even flow charts to convey complex information clearly. While online whiteboarding tools are available, they often don't provide the same clarity as physical whiteboards. The key takeaway is to communicate as clearly as possible, similar to how one would on a whiteboard. Building this culture of communication enhances understanding.
00:15:52.570 The third communication challenge involves perceptions and distractions. Many share concerns about productivity; if people aren’t seen at their desks, how can one be sure they are working? Conversely, remote employees wrestle with multitasking challenges. This dynamic is tricky. Video conferencing may come off as informal, leading to distractions. Participants must remain engaged, resisting the temptation to focus on emails and messages when they should be part of the conversation.
00:16:56.700 Management involves setting clear expectations. Ensuring communication about work progress involves utilizing tools like Pivotal Tracker, code reviews, and structured meetings like retrospectives and sprint planning.
00:17:43.410 Now, I want to highlight how we tackle these challenges at Power Home Remodeling, emphasizing the value of both local and remote work styles while addressing the business realities of talent acquisition and retention.
00:18:34.430 To optimize our teams, we prioritize small structures—three to five people per team—keeping things manageable. If a team grows, we readily split it into smaller groups. We also believe in maintaining consistent teams—hybrid relationships are challenging.
00:19:05.410 I advocate for keeping local and remote segments separate. Two local team members may be in the same workspace, but they act as if they are remote, always connecting via video calls. This ensures equal communication experiences.
00:19:53.520 We implement Scrum methodology to help manage communication. We practice daily stand-ups and retrospectives, sensory checkpoints for our remote teams to communicate regularly and have structured time to connect. Even if you are remote-focused, stand-ups facilitate daily engagement.
00:20:16.790 Remote teams benefit from engaging code reviews, and every piece of code pushed to production must go through one. Tools such as Slack foster communication, while video conferencing and screen sharing establish collaborative spaces that ensure everyone is on the same page.
00:21:13.570 Culture is also a priority. I aim for face-to-face interactions every 90 days, enabling personal relationships among teams. Lunch-and-learns are an excellent initiative for onboarding new team members and facilitating dialogue across teams, ensuring connections are made.
00:21:58.220 As we enhance our workforce, it’s essential to optimize local teams. We’ve designed our headquarters to include ample collaborative spaces—more than half the space is designated for teamwork. This design promotes communication beyond the team, enabling visibility with the broader business.
00:22:28.930 We're keen on establishing public touchpoints. For example, our Knowledge Dojo functions like the Apple Genius Bar where anyone can seek help for technical issues. Increasing visibility for each department strengthens overall organizational communication.
00:23:21.470 Additionally, we create dedicated pods to reduce noise and distractions. These pods help local employees find their space for concentration while also being available for remote employees during their visits.
00:24:22.770 Moving forward, daily stand-ups play a crucial role in maintaining communication across remote teams. Even when some members are not in the office, we maintain a level playing field to ensure everyone has equal opportunities to contribute.
00:25:05.859 Moreover, we hold quarterly off-site events that allow remote members to collaborate with local teams. It’s not necessarily a hackathon; it’s an opportunity to engage in larger projects that may not fit into daily routines.
00:25:49.380 The social aspect is equally important—structured time can help form connections. We organize numerous team-building events that foster camaraderie and trust among employees. Laughter and playful activities benefit remote teams.
00:26:34.930 In summary, when working with local teams, it’s essential to maximize face-to-face interactions to leverage their strengths. Developing effective tools and practices for remote work is equally critical—successful adaptation requires diligent effort.
00:27:20.580 Lastly, evolving practices is necessary. Continuous reflection and analysis through retrospectives and team reviews ensure we constantly find better ways to operate.
00:28:02.470 For further reading, I recommend Martin Fowler’s insightful article on building distributed teams. Additionally, we work remotely dot com, where we advertise for remote developers, has provided great responses in connecting with candidates.
00:28:47.081 That's it for my presentation. My name is Ben Klang, and you can find me on GitHub or Twitter. Thank you very much.
00:29:31.600 To answer questions about transitioning from a mixed team to a fully local one, I shared our strategy of integrating team members into regular office times and accommodating remote team members eager to join through sponsorship and logistical support.
00:30:00.000 We encourage discussions to occur in accessible formats so that remote team members can engage effectively. Although there are challenges in maintaining a consistent culture without mixing teams, we promote cross-team events such as lunch-and-learns.
00:30:56.000 The whole aim is to build respect among teams, recognize each other's needs, and communicate openly to establish a united culture, which ultimately results from proactive engagement.
Explore all talks recorded at RailsConf 2017
+109