List

Distributed & Local: Getting the Best of Both Worlds

Distributed & Local: Getting the Best of Both Worlds

by Ben Klang

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.

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 and we heard was in the
00:00:19.800 last talk as well dozen awesome talk wasn't they really did great with that I'm going to cover some of the same things it'll be a little differently
00:00:25.980 from my perspective but uh but yeah I really I really enjoyed listening to Glenda Maria tell tell their experience
00:00:31.230 as well so my specific perspective on this is looking at hybrids where we have
00:00:36.630 team members who are local and team members who are remote and how to get the best of combining those two styles
00:00:42.290 so I wanna start with a quick poll if you would raise your hand if you today are primarily someone who works locally
00:00:47.879 in an office not moving out every single day but most of the time you're in an office with the rest of your team okay I
00:00:55.199 may be half and then how many of you are primarily remote the other half makes
00:01:01.140 sense how many of you would like to do the other ok so that's what we're going
00:01:08.220 to focus on is some of the advantages of each why you might choose one versus the other I think there's a lot of value in each
00:01:13.950 one and I've done both and I enjoy both and there's I think there's a lot to look at there so an introduction a
00:01:20.939 little bit about me first my name is Ben clang I have been doing Ruby for ten
00:01:26.430 years doing open source for 20 a lot of my appreciation for remote work comes from open source where you know when
00:01:32.850 you're doing open source work most the time it's remote any way that your collaborators are in other parts of the
00:01:38.070 world previously I founded a company called mojo lingo we were a software consultancy we were a remote first
00:01:44.700 company from day one about 12 people not a huge organization but definitely learned a lot from that experience today
00:01:51.210 I'm vice president business technology for power home remodeling so it's a much larger organization about 2000 people in
00:01:57.840 the company 51 in the technology department we have seven scrum teams six states four countries and really about
00:02:06.360 half and half when it comes to local versus remote or local versus distributed
00:02:12.819 and again I want to say I want to stress this is my experience you know it comes from what we've done in the past and
00:02:18.459 what's worked well for us I would say that everything you hear today has come from something we've learned something
00:02:23.530 that hasn't worked and I'm sure that some of the things that we do today we will find better ways to do tomorrow and that's okay that's just part of the
00:02:28.959 process so I want to start with a bit of background like what kind of teams exist
00:02:34.569 what are we talking about when we talk about remote teams and I want to emphasize that when I say team I'm really thinking of a fairly small unit
00:02:40.660 I'm thinking of three or five people not the entire department say but the actual people that you depend on day-to-day the
00:02:47.620 kind of people where if they're not around you would end up blocked right so first of all local games that's a pretty
00:02:54.790 easy one right people in the same building not really in the same building but in the same floor and in the same
00:02:59.800 room even I'm reading that people who are just separated by as little as one floor start to lose some of the benefits
00:03:06.160 of being a local team right some of that face to face interaction is lost when you have to go out of your way to interact with them so local teams were
00:03:13.720 focusing on people who are physically co-located together preferably in the same room another one instrument aims
00:03:22.480 again pretty intuitive people who are spread out in many different locations sometimes it'll be at home sometimes
00:03:29.620 it'll be in a coffee shop sometimes it'll be in a co-working space we actually do have one guy on the team who for some reason just loves coffee shops
00:03:36.010 he will he will spend an entire morning in a coffee shop I couldn't deal with the noise but it works for him and then
00:03:43.030 there's a third time third type which are mixed teams so this is a type of team where you have most of the people
00:03:49.480 on one physical location and then one person who's kind of an outlier this is to me this is an anti-pattern I don't
00:03:55.780 really want to talk about much other than to say I strongly advise that you don't do it this can lead to isolation
00:04:01.359 right this can lead to this one person being left out of conversation this can lead to people not having the same level
00:04:07.000 of understanding about what's going on within the business what's going on within the team what's going on within the software being developed and sort of
00:04:14.980 another spin on the same topic is where you have one team that is split into two parts so you have a part of the team in
00:04:21.970 one location part of the team any other again you'll end up forming cliques they'll be small communication patterns reference
00:04:27.930 to Conway's law earlier right when people are are communicating together the organization will develop that way so again I don't recommend this style
00:04:35.009 either so I'm gonna say something that may be controversial maybe you agree
00:04:41.370 with me I just ask that you hold your pitchforks until the end and I'll explain why I think this but I feel
00:04:47.250 pretty strongly that local teams win they're the most effective most efficient way to to develop software I
00:04:53.969 don't think I I think that all else being equal if you can control for
00:04:59.490 everything else having everybody in the same room is going to be the fastest way to to deliver what you want and I say
00:05:05.639 this myself as a hybrid employee spending about half my time on-site half my time working from home I say it is someone who found in business that was
00:05:12.180 remote first and successfully wrote first I was very happy with that company and I say this is a manager of three
00:05:17.969 remote teams and one local team I think it's better for communication I think it's better for camaraderie better for
00:05:23.729 brainstorming and for resolving issues and even scrum teaches we follow scrum
00:05:29.610 free religiously and one of scrums big things is get your team's co-located right so this isn't just me saying this
00:05:34.919 this is kind of the wisdom being being taught so then why why even talk about
00:05:40.650 remote teams if local is clearly the way to go why would this even be conversation that's because we want to
00:05:46.440 be removed a lot of us want to be remote just from your hands I saw earlier you know half of you are doing it and another good chunk of viewer would like
00:05:53.250 to swap whatever you're currently doing so there's a really great Stack Overflow article or other survey and it came up
00:06:00.360 with 53% of people looking for jobs want some kind of remote option is that is a
00:06:05.490 top priority in seeking a new position which means if you're if you're trying to hire these people this is a major
00:06:11.039 competitive advantage for you if you have remote options in your employment then you have the attention of a very
00:06:17.460 large number of job seekers right away additionally 11 percent of remote
00:06:23.009 workers report higher job satisfaction or I should say the job satisfaction is
00:06:28.259 levels not hire some of local or remote options versus purely local so it's not
00:06:33.899 just about acquisition it's also about retaining the teams that you have keeping them happy
00:06:39.330 happiness is correlated with productivity and with longevity within the organization this is a big deal right and I do want
00:06:46.590 to touch on something I think that that Glenn Emery has said very well which is that not every position can be remote
00:06:51.720 and within our organization we've called out a few specific types of positions that we don't we will not consider
00:06:57.479 remote applicants the two that are kind of obvious are application support and
00:07:02.520 infrastructure support the people that day to day have to interact with some of the end-users we are self hosted so we
00:07:10.440 have our own physical infrastructure and we have the teams that manage that infrastructure we want them local in
00:07:15.479 case something breaks they can unplug and replug it as necessary and a third one which is a bit of a shift for us is
00:07:23.479 junior development teams so we actually we did a first time for us experiment a
00:07:30.090 year ago where we put together a team of developers who were junior and paired with them a mentor to to bring them up
00:07:36.569 to speed and we did it as a remote team and it was successful I want to say that the people who went through that program
00:07:42.030 are all with the company still today and and they're they're absolutely valued
00:07:47.370 members of the team but what we found was it was harder to support them and mentor them in the ways that they
00:07:52.770 deserved it was harder to establish the kind of communication to jump over to the whiteboard and explain some kind of complex process then it would be if they
00:07:59.880 were local so going forward we've started saying that all junior developers we want to put them at headquarters where they can be mentored
00:08:05.639 with other team members and given that they attention that's necessary there so
00:08:13.080 what are the benefits what are the benefits of enabling teams to be remote I'll start with benefits to employers
00:08:18.319 first of all obviously it's a broader applicant pool if you're looking in one location best case scenario
00:08:24.360 you're kind of saying give me the best person within 50 miles that's just a small pool to begin with no matter where
00:08:30.479 you are if you can open that up and say give me the best person plus or minus three hours suddenly have a lot many a
00:08:37.800 lot more options to choose from and ultimately what you really want to say is who's the best person for the job so
00:08:44.579 as your organization continues to expand and as you can start to form teams in multiple locations as you can start to
00:08:50.040 organize teams around locations you just looking at one geographic location
00:08:55.180 or even one timezone you can actually look around the entire world this has a bunch of Vantage's it has advantages
00:09:00.970 like taking better advantage of referrals so the people on your team are going to refer their friends hopefully if you're if you're a place that they
00:09:07.540 want to work hopefully their friends also want to work there as well and if those friends happen to not be in your
00:09:12.760 city you might not have the opportunity to work with them it definitely improves things like time to hire so when we as
00:09:21.339 we grew we had to grow we doubled in size twice over the last two years
00:09:26.680 basically we know W each year and the only way we could do that was looking remotely we just couldn't get the a big
00:09:33.640 enough stream of candidates looking only locally so that was that was a major ship for us but it also increases the
00:09:40.540 opportunities for diversity I think that the last talk mentioned this well you
00:09:45.760 know if you're a mother with a newborn child and you don't want to or can't easily get to the office that's the
00:09:53.529 that's a limiting factor right when I
00:09:58.750 was when I was a single father my daughter would come home from school at 3:30 and I could be home to be there
00:10:04.000 with her that was a big deal for me right that meant that it's not if I was tied to an office I would have to drive
00:10:09.100 home to do such a thing and that's not feasible right but if I was able to work from home I could be there for her so
00:10:14.620 that was that was a big benefit for me so the sort of the benefits the employees as well I talked about being
00:10:22.180 home when my daughter got home from school but it's more than just that it's also a choice of lifestyle for myself I
00:10:28.420 like living in the city I like being in an urban area I like not having to have a car but I came to walk
00:10:33.760 to shops and restaurants that's that's quality of life for me a very good friend of mine get five kids has five
00:10:41.500 kids they lived about two hours away from the
00:10:46.900 office so two hours one way to drive from his house to the office and at the time the company we work for this was
00:10:52.690 ten years ago they we did not have remote options wasn't on the table so every day he
00:10:57.880 would drive two hours into the office and he would work full day and he would drive two hours home so four hours of his day by the time he would get to the
00:11:04.150 office he had already been up for at least two probably three hours he was tired from the drive he was stressed
00:11:10.149 from dealing with traffic and then even at work sometimes he would be trying to figure out how to make his commute
00:11:15.850 better trying to find just the right time to leave - would traffic or started looking at train schedules to try to figure out is there another way for me
00:11:21.850 to get to the office no doubt that impact of this productivity alright there's just no way you can be as effective when you're spending that much
00:11:27.670 of your energy getting yourself physically to a location so living getting live where you choose and being
00:11:34.959 able to do so remote that gives you that flexibility gives you the option of picking the lifestyle that's right for you and being able to have the job that
00:11:41.920 that is right for you as well so one size does not fit all and then there are
00:11:47.949 mutual benefits things things that benefit both the employer and the company life is not static the one thing
00:11:54.819 we can count on is that it will change what has actually happened with a lot of
00:11:59.920 our team members is their life situations have changed and they have needed to move so one of my favorite
00:12:05.259 examples is a very good friend of mine he was living in the UK he got married to a Brazilian and they wanted to live
00:12:12.910 in Brazil if his employment had been tied to his physical location then we
00:12:18.730 would not have been able to keep him within the organization and he's a very strong developer so that was important
00:12:24.939 to us like having him be a part of organization while he still was able to live the life he wanted to do and and
00:12:29.980 allow his life to evolve in the way he wanted to evolve it that's that's important so that gives that gives him the ability to transition his life with
00:12:36.850 while retaining the stability of his employment and it gives us longevity of someone who's value T member somebody
00:12:43.420 knows and that we've already invested teaching them about the organization those are those are things that benefit
00:12:48.699 both sides pretty well so location independence adds longevity to employment which is a win for both sides
00:12:55.829 all right there are challenges no surprise right remotes not all easy I
00:13:01.529 hope everybody he brought a pencil and paper I'm going to give you the three most important bullet points remote work
00:13:07.019 would be right for this okay number one communication no surprise communication
00:13:13.629 is the biggest challenge to remote work what may not necessarily surprise you
00:13:18.660 the number two is also communication and number three is communication right got
00:13:24.780 it okay great communication challenge number one my favorite time zones love time zones
00:13:33.030 hate time zones time zones were the biggest factor in figuring out how and
00:13:38.070 where to grow the team because while we don't click Lea care where you live we do care that you have the ability to
00:13:43.740 communicate with your team we do care that you can support each other you do care that you can ask the questions and get answers and and get unblocked so we
00:13:51.630 have rule of thumb teams a team should not spread more than three hours total
00:13:57.150 not plus n minus three hours three hours total right so we try to group things and these circles are not exactly
00:14:03.660 representative but the point is that we try to group teams such that no one is more than plus or minus three hours
00:14:08.880 anyone else in our team and that gives a nice amount of overlap to the work day now you'll notice that some of those
00:14:14.670 circles are decidedly longer than three hours and as I mentioned earlier one of the benefits of smaller teams is you can
00:14:20.910 orient your teams in such a way that the teams themselves are within that three hour rule but across the organization
00:14:27.960 you can have multiple teams and you can you can spread the work around that way so that does work communication
00:14:34.410 challenge number two being able to understand things deeply not just superficially but truly understand the
00:14:40.200 work you're doing and why you're doing it I love this quote by George Bernard Shaw the single biggest problem in
00:14:46.350 communication is the illusion that it has taken place so you might spend a
00:14:51.750 bunch of time trying to explain what we're building and why and depending on how you do it you may or may not have
00:14:57.000 actually been heard I think this is one of the reasons we love whiteboards because when you can get up and draw
00:15:02.430 something a picture's worth a thousand words it makes it so easy to explain relatively complex concepts when you can
00:15:07.920 map them out like that problem is I doesn't really work so great when you're remote right you can't just flip a
00:15:14.070 whiteboard I have tried lots of online white boarding tools and they all are kind of disappointing in one way or
00:15:20.040 another but you have to replace that somehow so we lean a lot on video
00:15:25.560 conferencing we lean a lot on screen sharing screen sharing is huge code reviews are a big deal and then my
00:15:33.000 my CIOs favorite flow charts don't be afraid of flow chart this this maybe
00:15:40.410 took me 15 minutes to put together there's no color it's not very pretty it's a bunch of boxes a couple Arizona
00:15:46.470 bit of text but it really conveys very quickly some some things we're trying to get done and so this this has become
00:15:51.839 part of our culture or and we're even trying to encourage more of it the point here isn't to burden you with
00:15:57.240 documentation the point here is to communicate as clearly as you would on a whiteboard if you start to build that
00:16:02.940 into your culture you can partially solve this problem of deep understanding
00:16:08.600 alright communication challenge number three perceptions and distractions
00:16:14.029 everyone knows Dilbert I can't see them at their desk how do I know they're working it's a real problem right anyone
00:16:22.380 dealt with this yeah point to your bosses everywhere there's a flipside of
00:16:28.890 this though as a remote employee my team Lee is always multitasking how do I know
00:16:33.900 she's taking you seriously a lot of our communication happens in video
00:16:39.029 conference video conference for most of us today means working on a laptop so if
00:16:44.339 I'm speaking with someone on my team and we're having a great conversation is
00:16:49.410 really tempting really tempting just to alt-tab pull up email answer something
00:16:54.540 answer or click instant message that is so destructive it's so destructive the conversations happening is even worse
00:17:00.209 when you do it in it in a stand-up or retro and you're just you're not paying attention the team that's something you have to fight it takes conscious effort
00:17:05.970 doesn't it doesn't come automatically you've got to get to put that away in
00:17:11.250 addition you need to make sure that - back to the first point about if I can't
00:17:17.370 see the team how do I know they're working you need to also make sure you proactively manage up talk to your
00:17:22.860 supervisors let them know it's going on for us a lot of that comes through dealing with tools like pivotal tracker
00:17:27.870 and code reviews a lot of it has to do with retrospectives and excuse me stand-ups and sprint planning those are
00:17:34.679 opportunities to communicate within the team but what's going on but also to communicate about progress so people
00:17:39.690 know what's happening I'll talk to you more just a second so that's kind of an
00:17:45.610 overview of some of the benefits and challenges I want to be really specific and talk about how we do it this the
00:17:50.830 next few slides are going to talk about what we do at power to to work with these challenges we understand that
00:17:57.610 there's value in both styles of work local and remote we understand there are business realities of acquiring and retaining the people that we want on the
00:18:04.060 team and a lot of that and then retaining has a lot to do with happiness so we need to find a way to get the best
00:18:09.430 of both of them first we looked at structure small teams three or five
00:18:15.370 people that is that is a big deal for us is keeping a small and if the team starts to get too big we don't hesitate
00:18:20.560 to split it apart until it into smaller teams and also consistent teams I'm they
00:18:27.100 believer in not trying to mix local nor mode you can put two people in one location on the same team
00:18:32.890 but if you do it they need to act as if they're remote need to be on video conferences on their own computers so
00:18:38.230 that they have the same they have parity at the communication layer with everyone else in their team so doesn't feel like there's just just two people and then
00:18:45.970 the rest of the team back up one okay
00:18:53.220 then we have process scrum as I said for a big believer in scrum and there's this
00:18:59.260 sort of related constant of Xu Hari which is where in the beginning you do it exactly like the book says and we're
00:19:05.410 probably at that point now we're probably most of what we do is is doing our best to stick to the principles exactly as written without too much
00:19:12.040 variation and then the next step for that is ha which is like where you understand the principles you can start
00:19:17.680 to bend the rules where necessary to adapt to your situation and then there's a mastery level which is where you completely understand everything and why
00:19:24.730 the rule exists in the first place and then you can break the rules whenever you want because the rules no longer exist sort of like a matrix neo flexes
00:19:31.120 his arms the balls Bend I want to do that so for us that process daily
00:19:37.150 stand-ups and retrospectives are really critical parts for managing the communication ensuring the communication
00:19:42.220 with remote teams stand-ups if nothing else give you an opportunity every day to make sure you communicate with
00:19:47.890 everyone on your team it's really ZP right if we were all remote and just focused on our pull request it's so easy to to get into the editor push the code
00:19:55.090 move on next thing and not even talk to anybody but stand-ups at least if nothing else we'll give you a chance once a day to to
00:20:00.820 communicate in retrospect isn't wet as well we'll give you kind of an early warning system if things aren't going
00:20:06.280 great gret retrospectives will bring that to the surface and it's just again another way to check point communications make
00:20:12.370 sure they're happening regularly of course you have to emphasize remote friendly communication we do a lot with
00:20:20.230 code reviews every single piece that goes to production has had a code review it's one of the three criteria we
00:20:25.690 require to ship code obviously text chat a lot of people use slack we have a tool internally called connect it's the the
00:20:32.590 same concept but it's critical not only because it facilitates communication within our development team but also
00:20:37.870 within a larger company anyone can talk to anyone at any time that's critical video conferencing and screen sharing I
00:20:44.740 mean I've already given the examples for that but again without the ability to pull up a whiteboard be able to at least
00:20:50.380 look at the same thing and talk about it makes a big difference in facilitating communication and then as I said
00:20:56.289 diagrams love diagrams and then culture
00:21:01.350 face-to-face meetings it is my goal to at least once every 90 days spend some
00:21:07.690 time face space with everyone on one of my teams just to have that personal relationship with them we also do lunch
00:21:14.409 and learns and I got to give a credit to to Jill who's my audience I'm probably Nordic I'm calling her out right now but
00:21:19.990 she did a lot to make lunch and learns happen for our team she's a great job with that and that has been not only
00:21:26.289 helpful for onboarding and bringing new people into the organization it's also been really helpful in just getting
00:21:33.549 people talking across teams we as we enter their small teams and as we grow we end up adding more teams they don't
00:21:38.770 necessarily communicate as much as they would otherwise so lunch and learns are great way to get a larger group together and then choose tell me yesterday she
00:21:45.850 wants two coffee dates which I think sounds like an awesome idea I think we'll be doing that when you're back all
00:21:52.059 right so we've talked about how we're doing it I want to talk about one more topic which is how we optimize for the
00:21:58.179 different styles we'll talk first about optimizing for local teams for the teams that we have decided will be local
00:22:04.030 whether they're development or support or DevOps there are a few things we can do to make them more
00:22:09.280 to maximise the benefits that they have first we built a headquarters that has a
00:22:15.670 lot of collaboration space I mean a lot probably at least within our departments
00:22:20.770 sort of area of the building at least half maybe more than half of the space is dedicated toward collaborative areas
00:22:26.160 lots of whiteboards lots of tables where you can pull up there's power to plug in
00:22:31.510 there are I don't know if this little puzzle piece chairs are there sort of like beanbags but it's sort of not but it's just a
00:22:37.630 more casual space where you can you can discuss things and we use that space not only for internal conversation and I
00:22:44.860 think this is really important we use it to also talk to the business these two rather serious looking fellows are from
00:22:50.620 our talent acquisition department and we're in the process of building some software to help them automate some of
00:22:57.040 the work that they're doing this is them coming in to our area and speaking with the guy in the red shirts an application support guy and he's
00:23:03.460 explaining some of the features we're delivering in some of the buds that we're addressing and so if this is communication not only for within the
00:23:10.540 team within the department's also communicating out to the business so there's a real danger if you have an
00:23:16.030 entirely rote team that nobody can see that stuff just happens and nobody knows about it this is part of our effort to make sure that the business knows what
00:23:21.970 we are up to and that they can appreciate and understand what we're prioritizing and why and then on that
00:23:28.240 same kind of vein and actually even more outbound we have this this area called the knowledge dojo which is very much
00:23:34.060 modeled on the Apple knowledge bar concept we have this area which is outside it's in a very public space a
00:23:40.300 hallway where a lot of people walk by and anyone who has a technical issue of any kind can walk up and ask questions
00:23:46.000 you know I need help with a mouse or printer ink where I have trouble with the application and again it's just
00:23:51.010 putting a very public face on what we're doing and why ultimately if you can if
00:23:57.220 you do this right if you build the kind of connections with the rest of the business what it does is it lowers resistance I don't know I don't think I
00:24:03.190 mentioned this earlier on but the the business Ren is home remodeling and the company Ren is is in many ways traditional very local very much people
00:24:11.140 come into the office you saw the people in suits that's because they actually wear suits and we're a little different not only do we not wear suits a lot of
00:24:17.740 us just aren't even there so we need to manage that we need to let them know that we're working with them we've got the back and this kind of outreach is a big
00:24:23.859 part of that so it lowers the resistance to enabling remote work and then finally
00:24:29.379 as developers sometimes you just have to get away from the noise so we have these little pods we built there 12 of them
00:24:35.349 for the people who are local they become their office and then for the people who are remote whenever there are
00:24:41.349 headquarters they can use them as office space they're quiet they're there away
00:24:48.070 from the noise and then the colorful lights besides looking really awesome in this picture have a purpose if the light
00:24:53.289 is red it means you're busy they don't to be disturbed and please leave me alone and come back later and if it's green you can come in and there's and
00:24:58.809 have a conversation all right that's what we do for local what can we do for
00:25:05.859 a remote or distributed teams daily stand-ups I'm just going to hit that
00:25:11.709 point again that is a big a big part of how we manage the communication how we
00:25:17.200 keep the communication good and we don't have to take them too seriously as Darin is showing you what else wants
00:25:25.479 out the other thing I want to say about this is this is kind of interesting team this team has since been reorganized so that they are now entirely local but at
00:25:32.259 the time this picture was taken three of the people were physically in the same location and two of them were in remote
00:25:38.529 locations but the reason I show this is this is a good example of getting everybody on the same playing field you'll notice everybody is at their own
00:25:44.769 workstation on their own computer talking and communicating as peers so the guy in the bottom left and the guy
00:25:51.909 in the bottom Center and the guy in the top right are roughly 10 feet apart from
00:25:56.979 each other in their cubes but whenever came to team communication they would they would love the playing field to to
00:26:02.139 ensure that I talked about getting face to face as a way of enabling remote
00:26:07.799 communication and this is a big part of it so we it's it's not just for work we
00:26:13.779 do a lot of work when we just three times a year we call it create we bring all the developers all the remote
00:26:19.629 workers to headquarters we bring in the application support teams that they work with we bring in the infrastructure
00:26:24.999 teams they work with and we find that it's not a hackathon exactly how do you
00:26:30.729 describe it it's basically we take goals and projects that are hard to get to in the normal cycle development sometimes their bigger
00:26:37.460 picture architectural things sometimes it's a cool feature that we just couldn't work into the normal flow and
00:26:42.710 we'll go build it we'll spend a week building it what's cool about this and by the way not something that we
00:26:48.230 necessarily plan but was a beautiful kind of emergence emergent behavior was that the team's self organized and they
00:26:55.429 did it in different configurations than their daily their daily teams so when
00:27:01.250 they're out in the field maybe you have this group over here in this group over here but when they actually came to this session headquarters they picked
00:27:07.399 completely different people to work with and that's beautiful for for the kind of personal connections that are necessary
00:27:13.370 to both grow and also to get questions answered beyond your team and of course
00:27:18.649 it's not just work it's social - right so we we have both structured and unstructured time where people can this
00:27:24.080 is we're doing some kind of weird game show thing so that's that's one of the
00:27:30.049 structure examples we've done go karting almost killed somebody bits okay you survived but it's important right
00:27:36.350 because these these are the things that are hard to do in your remote it's hard to build those those social connections and the trust that comes from goofing
00:27:42.590 off with somebody all right so in summary there are three things I would
00:27:50.899 say when you have a local team you want to optimize those facespace interactions that's your core strengths right
00:27:56.269 you've got people there you want to give them as many opportunities to to communicate with very high bandwidth
00:28:02.389 both internally and externally second you want to develop the tools and practices that are necessary to make
00:28:08.600 remote work successful and this this doesn't happen automatically it takes effort it takes conscious thought and it
00:28:14.450 takes evolution which is the third point don't accept the status quo whatever you're doing today is is great but
00:28:21.769 there's always something you've been doing better and the retrospectives are and create our big parts for us for
00:28:27.259 analyzing that process finding ways finding what's working finding what's not and then finding what can be better I want to give you two links for further
00:28:36.500 reading I want to thank Martin Fowler for a really awesome article that guided a lot of my early thinking about how to build
00:28:42.139 distributed teams it's articles from 2015 not that old but he goes into some more detail on some points that kind of glossed over
00:28:47.960 here hi recommended and then we work remotely calm when we were hiring specifically
00:28:53.210 for remote developers this is where we would advertise and got great responses it's such a focus demographic I think
00:28:59.960 that that helped a lot it's also associate with the book that the the
00:29:05.330 guys that I'm 37 signals for called remote the website goes on with that book that's it so my name is Ben Klein
00:29:13.190 you can find me at be clinging just about everywhere github Twitter etc and thanks very much ok I'll try to repeat
00:29:24.289 the question so one of the sides I had a team that was that was hybrid the mixed as I said it was a bad idea right and
00:29:30.500 the question I think was when we did bring them in to make them a local team how did we how do we handle that
00:29:35.809 transition and what happens to people that were remote I get that right okay
00:29:40.870 so a couple things one one of the people just started coming into the office more
00:29:46.760 regularly and he was already in the area but it wasn't a big deal to start commuting right the other one was in
00:29:54.679 Australia and he he's commenting story he came in the organisation by a fluke
00:30:00.200 to be really honest I missed that he was in Australia when I started the interview process but by the end of the
00:30:05.809 interview process I was so impressed with him that I said we got to make this work and he was great because he he
00:30:11.360 actually worked really hard he for probably seven months eight months lived on East Coast time in Australia which
00:30:18.850 god bless him I couldn't do it right but anyway he we ultimately actually had
00:30:24.320 sponsored him and had him moved to the INA States so no one on the team was let go we did reorganize to to put them all
00:30:30.620 together but we we made that happen organizational and they were all on board with it that team in particular it
00:30:36.529 was it was a positive thing for them right so to repeat the question when
00:30:42.169 you're in a mixed to do a situation and I'm not sure if you were the only person that was any outsider or one of a okay
00:30:49.039 so you were in that picture where you had a bunch of you in one location one person remote and then to your point you
00:30:54.200 were having conversations and decisions being made sometimes without that person just because they were spontaneous
00:30:59.830 and then how do you deal with that it's tough if you find yourself in that situation the only advice I can give you
00:31:05.649 that you have to be very conscious about it and try to force more of your discussions to happen in a mode where
00:31:12.399 they can be observed by the person early text chat is probably the best place for that I don't think there's needs the
00:31:19.390 answer I wish I give you on our philosophy has been just don't do it wherever possible you can you can
00:31:25.809 somewhat help that by keeping your team small there's less of a risk of that if you're only having to manage three or four people you know if you're keeping
00:31:32.260 the team small it's harder to have one person remote you're either on the remote you're gonna be local just by virtue of having few people to adjust
00:31:39.330 but yeah I hear that that's a difficult situation and I would best thing I can say just try to avoid it I'd say good
00:31:46.000 question so the question is are there certain types of projects or I guess to extrapolate certain kinds of work that's
00:31:51.220 or projects the technology the type okay
00:31:56.289 is that are better suited to local versus remote yeah well so projects that
00:32:04.389 require you to physically touch things like putting a server into a rack that's an easy one and that's that's really
00:32:11.380 what led us to wanting those teams on-site in the development space I'm
00:32:17.289 trying to think of any project where it's worth purely writing code where we have that issue I can't nothing comes
00:32:23.230 neatly to mind pretty much everything once you once you get past that physical realm as long as you have a way to communicate I can't
00:32:31.269 think of any I think that either can be can be made to work effectively with the
00:32:36.490 provider that you're doing all the other things that you're doing stand-ups are doing retrospectives and that you're gathering the team so that the communication is occurring naturally and
00:32:42.639 oh one thing I didn't mention is besides just the three times a year we also if we have a big launch for a big feature
00:32:49.029 will bring the team to headquarters for a week and we'll focus on the stories that feature and the payoff to that
00:32:54.159 lasts we might spend one week on site like figuring all the pieces out and then for three months they have a really
00:32:59.710 good clear picture of out there trying to build and that helps a lot as well so the question is for teams that are mixed
00:33:05.500 right now what's my recommendation for getting past that to make them work when we did it we we
00:33:19.120 had that we had the same problems that I've talked about where people were felt isolated people were left out of decisions and what we what we tried was
00:33:25.800 a lot of video conferencing a lot of text chat a lot of notes in wiki's in
00:33:32.590 pull requests written documentation and then and then would try to encourage
00:33:38.290 people to remember when you had a pull up conversation to go dump the artifacts
00:33:43.420 from that into something that everyone else can see it can be done my personal
00:33:48.580 opinion is you've just got to be superstar like focused on on proactively
00:33:54.730 pulling those people closer and closer to make sure that that happens and I think that's hard I just think human nature it's too easy to have a quick
00:34:01.030 conversation and then act on it without actually informing anyone else my advice
00:34:06.280 would be if you can try to reorganize such that you don't have the mix you know and that takes time I'm not saying
00:34:13.090 it's easy or automatic but X it can be done I just think it's hard and I don't
00:34:18.430 think we will do it again if we can help it all right that's interesting so is you're saying that in your company it's
00:34:23.590 mandated that you have teams that are mixed some remote and some locals with the goal being to ensure consistent
00:34:29.530 culture okay and then so what are the ways you can address the culture arguments while not doing it in a mixed
00:34:36.400 team mode right okay so tactically some of the things I talked about the lunch
00:34:42.400 and learns are good because they they cross teams and because they happen regularly and our case every two to
00:34:49.870 three weeks depending on how excited people are about finding something to present at least everybody's coming together for that the other thing we do
00:34:56.920 and I didn't mention this but the other thing we do is every week we do demos on Friday and again that's the entire
00:35:02.260 department everybody gets together everybody sees what everybody else is doing and everybody gets to ask
00:35:07.330 questions and in some cases in this in this case like right now we have two
00:35:12.400 teams who are working on alternate sides of the same feature and so one happens
00:35:18.190 to be local one happens to be remote and in those cases we are trying to do more we put them in a single chat room those
00:35:27.069 are all like really small answer to your questions I think I think the bigger answer is it's a it the answer to
00:35:33.310 culture itself is culture is is getting people to to understand each other to
00:35:40.480 respect each other and to want to communicate with each other all of these other things kind of grow out from that right I don't think I don't think
00:35:48.130 culture is easy I think it's conscious and I think it can be done and I think and again bringing people together so
00:35:54.250 that they get that face to face time helps with that so that the help okay
00:36:00.520 good anyone else awesome you've been a