Ben identified some issues with the way we use Slack and added more guidelines to prevent them. Sylvie added a way for us to learn more about each other in our weekly standup. We've been using both for over a month and the team has been enjoying the changes!
Ashby customers and new employees often comment on how much we've built with a small team (from product to internal documentation and processes), and they're surprised when we tell them we've been able to do it working reasonable hours (~40h week).
We're proud of this achievement, and we've done it by maintaining efficient and deliberate communication as we grow. In most companies, team growth correlates with an increase in ad-hoc communication (e.g. Slack messages, unnecessary meetings) and a decrease in focus. We've avoided the chaos by documenting and reinforcing communication guidelines to maintain focus as we grow.
Benji and I wrote the first version of these guidelines when we were just two people (yes, we found ourselves distracting each other even then—more on that later!). While the first version worked for four people in an office, it isolated individuals when we transitioned to a remote-first company spread across multiple time zones. With help from the team, we’ve heavily revised the guidelines to enable the team to build lasting relationships while also maintaining focus day-to-day.
This article shares the latest version of our guidelines with the reasoning behind them. We hope you find it helpful!
Problems Caused by Inefficient Communication
Inefficient communication is a productivity drain: it kills focus, wastes time, and results in teams collaborating poorly. Steering away from inefficient communication isn't easy; it takes deliberate and ongoing effort.
Meetings can be major distractions, especially for anyone working on problems that require a lot of focus.
Instant messaging (e.g. Slack, Microsoft Teams) poses an even larger risk to focus. An instant message requires little effort from the sender and can quickly distract a large number of people (especially when sent in a group channel).
Meetings and instant messaging can consume a company's time and energy—a deep dive on each below.
Internal meetings can consume a huge amount of time, and many of them could be replaced with an email or document with better, more efficient results.
Recurring meetings for collaboration, planning, or discussing ongoing projects or proposals are particularly inefficient.1 A fictional example is a recurring meeting between Product and Customer Success to discuss improvements to customer onboarding. The issue with these types of meetings is there is always more time to talk than there is time to implement. Participants spin their wheels discussing the same topics over and over without much progress between meetings.
A written proposal for asynchronous review is a better substitute because it adds the right kind of friction. It takes effort to write a proposal; not too much effort to kill an idea but enough to pause and reflect on priorities and bandwidth before creating a new one.
Wasteful Instant Message Usage
Teams also waste time and energy in spontaneous discussion in instant message group channels. At previous companies, we’ve seen the following play out countless times:
- A Slack message or notification shares something controversial in a channel (e.g. negative customer feedback, a proposal for a change).
- Someone responds with an opinion on what should be done.
- Twenty other team members in the channel jump in to discuss.
- The thread ends without an action item, owner, or any path to resolution.
The above can be a huge waste of time and lead to poor outcomes (see section below). The right moment to discuss an issue is rarely the exact moment when it happened (some exceptions are outlined below)—yet this is what instant message tools encourage.
Misusing instant messaging and meetings leads to poor collaboration. Collaboration can be broken into two broad areas: creating proposals and making decisions. To us, great collaboration means that everyone involved in a decision or issue:
- Can make a proposal on how to improve an issue
- Has awareness when a decision on a proposal needs to be made
- Has the context to understand both the issue and the proposal and respond
- Is aware of the final decision
Unless there's an acute, urgent problem (e.g. our website is down), instant messaging or meetings are subpar mediums for making proposals or decisions since they require the captive attention of the rest of the team. If a colleague isn't following their notifications or isn't in the same time zone, they miss the chance to influence proposals. If a decision is made in Slack or a meeting and isn't memorialized in a document or issue ticket, the information has a high chance of being forgotten, lost, and not acted upon.
Inefficient Communication is the Default State
Having experienced all of the above, we didn’t anticipate how easy it would be to fall back into bad habits. Instant messaging and meetings have their utility, so we can’t eliminate them to fix the problem. Instead, we need discipline to use them sparingly.
At most companies, instant messaging and meetings are the default, and this habit dies slowly. When we just started Ashby (and it was just Benji and I), we'd DM or yell questions across my apartment without thinking about whether we needed an immediate response. While it wasn’t the end of the world, we could do better and needed to so we could maintain a high level of productivity as the team grew.
We document guidelines on how we want to communicate internally. Our communication guidelines often add friction to initiate communication—that's intended! They correctly place the burden on the writer or organizer, not the many readers or attendees, and improve the situation for the team as a whole.
Every new employee reads our communication guidelines, and everyone on the team is responsible for pointing out when we're not following them. Like Benji and I, everyone joining Ashby brings communication habits from previous companies which don't align with how we want to work (sometimes these habits can be good—more on that later!).
We also document how we get to know each other and bond as a team. Building strong relationships is critical for both enjoyment and productivity, and our communication guidelines can inhibit that. When you have lots of time to yourself, it can be isolating (especially on a remote-first team), and we put deliberate effort to counterbalance that isolation.
At Ashby, we use the following mediums to communicate:
|Slack||Ephemeral2 or urgent communication.|
|Threaded communication. We use mailing lists to send the right information to the right people (see "Know your Mailing Lists" in our internal wiki). If you want a new mailing list, ask a Google Workspace admin (Abhik or Benji) to create it!|
|Quip||Specs, post-mortems, or any document that requires collaboration and doesn't need to be in our permanent knowledge base. Feel free to start here and move to our knowledge base later!|
|Slab||Our internal wiki and knowledge base. Finalized documents (e.g. move from Quip to Slab)|
|Guru||Sales knowledge base. We don't use Slab because Guru provides better tools to organize and access sales knowledge.|
|Github||Engineering and bug task tracking.|
|ProductBoard||Collecting and organizing customer feedback and product planning.|
|Google Docs||Document collaboration with external parties, large or complicated spreadsheets that aren't supported by Quip.|
|Google Drive||File sharing.|
|Meetings||Decisions that can't be made asynchronously or are quicker in person.|
Our communication style is different. We don't expect new employees to know what medium to use when. Don't be afraid to use Slack or video, and we'll let each other know if another medium is better.
This paragraph and the following are important additions in response to Flo's feedback. The guidelines are vague because we didn't want to be over-prescriptive. However, the vagueness caused new employees to be overly cautious because they wanted to create a good impression. When Flo started, he didn't use Slack or video when it would have helped! These paragraphs give explicit permission for employees to experiment without judgement.
Slack (Instant Messaging)
While onboarding, it's common for a new employee to use Slack more frequently (especially #ping and DMs). They're helpful channels to get unblocked quickly (and to get to know people) so it's encouraged. These Slack guidelines should be followed in the long run.
At any scale, Slack can become a big distraction, so we constrain how we use it. We only use Slack if:
- We need urgent or immediate communication with other employee(s) (via DMs).
- We need to coordinate around an interview or urgent issue (via #security, #pagerduty, #customer-issues, or a new channel).
- We want to share something ephemeral like a new feature, a sale, or positive customer feedback3 (via #broadcast or #customer-love).
- Ping the team or multiple members with important news, things to do, or solicit help if we’re blocked (via #ping).
- We need to review customer conversations from Front while on-call (via #support-feed).
If you have to use Slack, here are some important things to know about how Slack works to use it effectively.
@channel should almost never be used
It notifies everyone in the channel, even if they're offline. For example, using @channel may accidentally pull people back online in another time zone. In nearly every case, @here is more appropriate.
- When using either of these, make sure the message contains enough information that someone receiving the notification could choose to ignore it.
- Because of the above, if you realize you forgot to include enough info, don't do something like "@here ^." That will pull everyone into Slack to see what's going on (we're a group of caring people that want to help!). Instead, delete your original message and repost with @here and the full message—no shame in that!
Some members of the team team, including myself, were using @channel instead of @here. Ben flagged that this would notify offline team members outside of their working hours. He made this change in response!
Adjust per-channel notifications based on notifications you need
Enable notifications for channels where you need to be able to respond to pings. Disable notifications or leave channels where you don't.
Keep your Slack status up-to-date
We use Slack for ephemeral or urgent communication, so it's important to have your Slack status reflect whether you're easy to reach (or out sick or on vacation).
At previous companies, a majority of our time was spent in low value meetings. Before calling a meeting at Ashby, we consider that low value meetings are expensive:
- Each attendee is a paid employee and is costing the company to attend.
- Each attendee is costing the company much more in opportunity cost (they could be spending that time doing something else!)
We are especially careful with recurring meetings that don't have a clear goal. We have a limited number of recurring meetings to broadcast information (e.g. All Hands, Engineering Show & Tell) and avoid recurring meetings that are for collaboration, planning, or discussing ongoing projects or proposals.
With that in mind, consider whether a written proposal or other asynchronous medium or process is better to come to a decision.
When you start at Ashby, you’ll be paired with an onboarding buddy to get your questions answered and issues resolved. They expect you to reach out to them frequently, so DM and video conference with them often to prevent yourself from getting blocked. If they can’t help you, they’ll route you to someone who can.
While a separate topic for a future post, it's important to briefly touch on ownership at Ashby. For all major initiatives, we ensure that there's a clear single owner in place4. Clear owners reduce the need for coordination, communication, and remove ambiguity around decision making.
Building Relationships in a Remote Organization
During the pandemic, we became a remote-first company. For collaboration, it was an easy transition since our communication was already asynchronous.
Building social relationships was much harder. When we were in one office, it was easy to eat lunch together, grab coffee on a whim, and have a spontaneous chat in the kitchen. These interactions helped us get to know each other while asynchronous work communication let us focus. When we transitioned to a remote company, async work communication was our only way of getting to know each other; socializing relied on synchronous communication and was rare. Our first remote non-network hire didn't have a casual conversation with some of the team for over a month 😱.
Improving team building is a team effort and it evolves with the feedback and past experience of each new employee. Here's what we do now to get to know each other and bond.
Every new employee meets one-on-one with everyone when they start
It's critical for new employees to get the chance to have an intimate conversation with each of their new colleagues.
Employee introductions directory
We maintain a slide deck where each employee gets one slide to tell the rest of the team about themselves through text and photos. We provide a template slide and instructions to help people get started. Every new employee presents their slide at our All Hands meeting. We learn a lot of interesting things that may not come up in casual conversation!
Kevin brought this idea from a previous company that was much bigger than Ashby. We love it, especially because the information lives on in a document. New employees can discover things about their colleagues who've presented before them!
My Ashby people slide.
Use the #social channel as a way to share things unrelated to work
Our team's past experience with Slack was a large number of social channels that became distractions. While we actively avoid that at Ashby, Slack is still a great medium for a remote team to share non-work things and have impromptu social conversations.
Ben rightly flagged that one social channel with the entire team can be intimidating for a new hire and hurt participation. We don't know what the solution is yet, but if you have any suggestions we'd love to hear them!
Share a personal update in our weekly meeting
We have a weekly Monday standup meeting where everyone on the team shares what they plan to work on during the week. At the end of each person's update, they also share something going on in their personal lives. Sometimes it's a funny story from the weekend, something one of their kids did, or a disastrous date. It's a fun way to connect and gives us an ongoing glimpse into each other's lives.
Sylvie brought this over from her previous company, Mixtiles. It's been a hit with the team and someting I look forward to every week!
Play games as a team monthly
We bond a lot through playing games. We play games that are collaborative or team-based, don't require anything outside of a computer and internet connection, and where most of the team is on an even playing field. We've played games like Pictionary, Settlers of Catan, Codenames, and Among Us.
Joel loves board games and inspired him to start this tradition at Ashby. We've done it for almost a year now and it's been a lot of fun!
Share a virtual office every Friday
On Fridays, the team works from a virtual office in Gather. Gather is surprisingly good at creating the spontaneous conversations that would happen in a physical office.
Eat lunch and breakfast (nightcap and tea) weekly as a team
In a physical space, it's easy to grab lunch with teammates. With a remote team and colleagues spread across several time zones, we don't get the alignment of meals and awareness of who's available. To coordinate the team, we use a weekly calendar event that invites the team to our virtual office in Gather. Attendance is optional, and we alternate between "tea" (Europe) and breakfast (North America) or "nightcap" (Europe) and lunch (North America) to accommodate different time zones.
Ravan had the same problem at her previous company and brought her team's solution to Ashby.
Meet physically as a team 1-2 times per year
There's no substitute for meeting people face-to-face. Unfortunately with COVID-19 travel restrictions, this is tough to do globally. We've been able to meet teammates in the Bay Area and hope to expand it to the larger team soon!
We continue to try new ideas, so, if you have any, we'd love to hear them!
Communicating your Availability
While we expect everyone to do their best to be available and reachable during their working hours (the ones setup in Google Calendar), we also believe in flexible work. We all step away from our keyboards from time-to-time to take breaks like:
- Eat lunch
- Run an errand
- Pick up kids from school
If you need to step away, the best thing to do is just update your Slack status (doesn't need to be specific) and indicate when you think you might be back (you can do this by setting when the Slack status will clear). If you're going to be away for more than a half hour, consider blocking off your calendar. Please don't use #social to post that you're stepping away for a moment.5
The team developed a habit of sharing their availability in #social (e.g. "I'm going for a run bb in 1h"). Neither Benji nor I asked anyone to do it, but, once a couple of people started to, the rest of the team felt an obligation. Ben pointed out that this is not the point of the #social channel and could be interpreted as a lack of trust by the organization. Since he made this update, we've had zero availability messages in #social!
Reinforcing the Guidelines
While having guidelines is a great first step, it's equally important to make sure people understand and follow them. Every new employee brings the communication habits from previous companies and needs guidance when they deviate:
My response to a colleague that sent a spec to our #broadcast Slack channel to get feedback.
At Ashby, letting a new employee know that a Slack message is better as an email is a "rite of passage" 😂:
Founders and Management Set the Tone
The team follows the lead of Benji, myself, and any manager, and there are moments where we don't follow the guidelines. In those moments, we try to be self-aware, hold each other accountable, and correct as quickly as possible:
I DM-ed a busy colleague a question that didn't need an immediate response.
In a rare moment, Benji messaged our #ping Slack channel late in the evening.
Instead of putting effort into building an async process for prioritizing, I put a large monthly meeting on the calendar 🤦🏾♂️. Benji quickly asked me to rethink whether it was necessary.
The last example demonstrates a previous point: inefficient communication (in this case, a recurring meeting) is easy to initiate but affects the team disproportionately. It's much easier for me to resolve any conflict around prioritization with a meeting. It's more work for me to design a process and manage it asynchronously, but it saves 12+ engineers an hour per month!
Our communication guidelines are successful at accomplishing the focus we hoped we could achieve. We've been able to measure success (or failure) through a combination of qualitative feedback and tracked metrics.
Benji and I use our 1:1s with the team to solicit feedback. Is the team happy with our communication style? Are new employees meeting their colleagues? Is collaboration with colleagues happening? Are people getting feedback on their decisions and issues within a reasonable timeframe?
In particular, our minimization of Slack is refreshing to the team:
Early on, the team, especially new employees, gave Benji and I feedback that they weren't building relationships with colleagues. We've implemented several ideas from the team and don't get the same feedback anymore.
We have a small number of Slack channels, and we're proud of it. Ashby has 13 permanent Slack channels for internal communication6:
- Four to aggregate notifications from other systems (e.g. GitHub, Sentry).
- Five for emergencies, customer issues, or immediate needs (e.g. pages).
- Two for broadcasting information.
- Two for socializing (one is for our internal book club).
On average, each member of our team sends 250 Slack messages per week.7 There's little public data to make a comparison to other companies our size, but there are reports of power users sending 1,000 per day!8
Finally, we spend little time in internal meetings. Using Meetrics to calculate industry metrics with our calendar data, we've improved metrics as we've grown. Engineers at Ashby have 35.5 hours of focus time9 and 4.1 focus days10 per week:
Metrics calculated from engineer calendars from Feb. 9 to Aug. 8, 2020
Metrics calculated from engineer calendars from Feb. 9 to Aug. 8, 2021
Here's a typical and recent example of an engineer's calendar week:
Our communication guidelines make a significant impact on Ashby's success, and we maintain their impact by soliciting feedback and revising the guidelines as a team. Our team is still growing—time will tell what doesn't scale, what does, and what changes we'll need to make!