Kyra ran our first holiday book exchange, and it's been a hit with the team (to the point people mentioned it in our 1:1s). I added some photos from our recent meetups.
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 per 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 increased ad-hoc communication (e.g., Slack messages, unnecessary meetings) and decreased 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 more considerable risk to focus. An instant message requires little effort from the sender and can quickly distract many 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 massive amount of time, and many meetings can 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 repeatedly without much progress between meetings.
A written proposal for asynchronous review is a better substitute because it adds the right 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 path to resolution.
The above can be a massive waste of time and lead to poor outcomes (see the section below). The right moment to discuss an issue is rarely the exact moment when it happened (some exceptions outlined below)—yet this is what instant message tools encourage.
Misusing instant messaging and meetings leads to poor collaboration. There are two broad areas in collaboration: creating proposals and making decisions. To us, great collaboration means that everyone involved in a decision or issue:
- Can propose 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. Suppose a decision is made in Slack or a meeting, and the decision isn't documented. In that case, the information is highly likely to be forgotten, lost, with no action taken.
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 the discipline to use them sparingly.
Instant messaging and meetings are the default at most companies, and this habit dies slowly. When we just started Ashby (and it was just Benji and me), 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 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 team's situation.
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 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 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.
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 get to know people), so it's encouraged. These Slack guidelines should be followed in the long run.
Slack can become a big distraction at any scale, so we constrain how we use it. We only use Slack if:
- We need urgent or immediate communication with other employees (via DMs).
- We need to coordinate 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 essential things to know about how Slack works to use it effectively.
@channel should rarely 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 happening (we're a group of caring people who want to help!). Instead, delete your original message and repost with @here and the full message—no shame in that!
Adjust per-channel notifications based on notifications you need
Enable notifications for channels where you need 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 essential to have your Slack status reflect whether you're easy to reach (or out sick or on vacation).
At previous companies, we spent the majority of our time 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 costs the company to attend.
- Each attendee costs the company much more in opportunity cost (they could be spending that time doing something else!)
We are cautious 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 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.
We'll pair you with an onboarding buddy to get your questions answered and issues resolved when you start at Ashby. 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 touch on ownership at Ashby briefly. For all major initiatives, we ensure that there's a clear single owner in place4. Clear owners reduce the need for coordination and communication and remove ambiguity around decision-making.
Building Relationships in a Remote Organization
During the pandemic, we became a remote-first company. It was an easy transition for collaboration 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 a 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
New employees must 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, and we learn many interesting things that may not come up in casual conversation!
My Ashby people slide.
Use the #social channel as a way to share things unrelated to work
Our team's experience with Slack was many social channels that became distractions. While we actively avoid that at Ashby, Slack is still an excellent medium for a remote team to share non-work things and have impromptu social conversations.
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.
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.
Share a virtual office every Friday
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.
Holiday book exchange
Kyra explains this tradition better than I can:
Have you heard of White Elephant Gift Exchanges? Have you participated in one in the past, and thought "why should I even consider stealing any of these silly gifts, they're all sort of junk"?
Rules are similar to White Elephant Gift Exchange. To participate:
- Choose a book that you want to give to a teammate
- Be prepared to give a ~10 second elevator pitch as to why you chose which book you chose
- Bring your festive and competitive (!) spirit! We highly encourage stealing! The goal is for you to leave with a new book you're pumped about!
The team stealing books from each other.
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 met teammates in the Bay Area and Europe separately and hope to expand it to the larger team soon!
Our Bay Area picnic. Lots of pizza was consumed.
Our Europe meetup. From the looks of it, lots of espresso was consumed.
And more to come...
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 one's 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 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
Reinforcing the Guidelines
While having guidelines is a significant 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 sizeable 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 accomplished the focus we hoped we could achieve. We've been able to measure success (or failure) through a combination of qualitative feedback and tracking 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:
The team, especially new employees, gave Benji and me feedback that they weren't building relationships with colleagues early on. 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 team member sends 250 Slack messages per week.7 There's little public data to make a comparison to other companies our size. Still, 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 significantly impact 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!