Make conversations public by default. If you use Slack, make team channels, project channels, announcement channels etc. all public. Discourage 1:1 and private communication unless really necessary, especially for engineering topics. This single change will have an immense impact on overall company culture.
Slack / IM often, don't demand a response instantly though, async & remote go hand in hand.
Put important stuff in email not slack/IM
Have a company wiki
Prefer video calls for alignment
Write to each other often, spend time crafting written narratives, 1-pagers, amazon 6-pagers etc. to share ideas, make people read them, use google docs or ms word online and get comments inline in the document using those tools, follow up on video calls to confirm alignment.
Gitlab has a handbook for this stuff, they are a 100% remote business and very open about their practices: https://handbook.gitlab.com/
consider personal readme's if your team is a bit larger (example): https://gitlab.com/swiskow/swiskow
One thing people miss about remote work is that it's inherently transactional. Show up to a meeting, get or give what's needed, then go back in your hole. This is nice but for many people the lack of genuine social interaction is a killer.
A few jobs ago we set up Donut (donut.com) to set up a couple 15- or 30-minute 1:1s per week and tried to stick to the rule that we weren't supposed to talk about work, just chat about whatever. A replacement for break room chatter, not Yet Another Meeting. It didn't always work very well but when it did, it was great.
Some of the best conversations I had were with an autistic SRE who spent his first month telling everyone how autistic he was in case we needed to know. He did better virtually than he would have in person - lack of eye contact due to camera angles, maybe? So yeah, this has value even for you neuro-atypical, "I don't need chatter, just code" types.
What becomes apparent very quickly outside the imposed rigidity of a physical office is that different individuals and different roles all have different optimal communication patterns. And people can get really fussy if they aren't getting the structure/tools/freedoms/whatever that they feel they need.
And so the answer to your question is ultimately much more idiosyncratic than you're hoping it to be. Whatever answers you find here, take them as inspiration for things to try out rather than specific things to do.
With that said, effective communication patterns tend to naturally snowball, so if you can start getting people feeling connected and collaborative, you'll find that they'll naturally keep that up and build on it.
But you are going to need to throw some spaghetti at the wall to see what your team needs in order to get that process started.
Try to reduce the number of required sync meetings in favor of async alternatives. For the required sync meetings, make sure there is a rock solid agenda and EVERYONE knows what is expected from them going in. Make sure the meetings cover meaningful material and helpful to all attendees. Encourage everyone to speak up and contribute. If you find certain individuals not contributing or not prepared, proactively have a conversation with them outside the meeting to reset expectations.
For async communication, it can still be helpful to set specific windows of time for things to get discussed. Example, Mondays 9am-Noon ET we review/discuss sprint goals. I like to record short videos with Loom to kick off discussions like this. Make sure to center these types of communication around specific tools, e.g. JIRA, Confluence, Google Docs, etc. Make sure the discussions convert to traceable decisions in your tooling.
Responsibly. Which means as short as possible, visible, to the point, and with clear indication of urgency.
And as the currently top comment says: make your messages public by posting them in the right Slack channels. I had a former colleague literally sabotaging me -- he thought he was getting fired because I was hired, and quickly hated my guts apparently -- by not responding to my Slack DMs which I used to bring a bit more details that I felt could be too much for the channels (logs, error messages from CLI tools etc). I could not progress on important tasks for a few weeks because of him.
After he pulled this stunt twice, I simply started posting in our team's channel where executives are also present. He never dared to delay a response ever again for as long as I was there during the contract.
It's sad that it sometimes comes to this but work is work and I am paid to deliver, not to develop endless empathy towards childish insecurities that result in a literal sabotage of my work.
Use Google docs. Ideally, everything or as much as possible should be public and accessible to anyone on the team. Especially planning and scheduling documents. Each meeting should have an agenda attached to the meeting on the Calendar. Each meeting should be transcribed and then summarized using Gemini.
Minimize the unsearchable communication tools, like Slack and Discord, though these tools are fantastic for casual conversations. Everything possible should be done to minimize notifications from Slack/Discord. In fact, minimize interruptions as much as possible to maximize the asynchronous benefits of working remotely.
On the development side, everything should be code reviewed before merging to main, as this helps spread knowledge and increase the signal:noise in written communications.
On the business side, all customer meetings (many of which should use GMeet), should be transcribed and summarized so the developers and other folks can be as close to the customer as possible.
Meet in person as a whole company AT LEAST once per year, perhaps 2-3 times. This can get expensive. As the team learns each other, the frequency can reduce. During periods of employee growth, increase the frequency.
Read "Remote" and other books by the Basecamp team.
> No plans to be in person
Figure out how to have some kind of face-to-face relationship. This could be an annual all-hands trip, or otherwise take a week to fly out and spend time with the person you work with.
You learn A LOT about each other when you interact face-to-face. I once worked with two developers in India, and assumed that the shy one was just so-so, and the talkative one was brilliant.
After some deep day-long conversations, and a few day trips, I realized my assumptions were completely wrong: The shy one was shy, and the talkative one spoke before thinking.
---
More recently, I started work with a hybrid team. I live 60 miles from the office, but it's brutal commute. I go in once a week.
Since I haven't seen this yet in the comments, a startup I worked at in a previous company set up Discord channels for small teams, and it by far replicated the closest to "folks are sitting next to each other in the same room" experience that I've seen before.
I see lots of advice here about documenting everything, discouraging 1-1 conversations, etc., and while I agree with that up to a point, this advice can also drastically slow you down if you require a level of formality for everything. The thing that was nice about having Discord channels is that if I needed to get a quick explanation about something, I could ask quickly without needing to schedule a meeting, etc., and everyone else in the channel can listen in (if desired). Discord also has good "deafen" features, so if you're heads down and don't want to be bothered it lets people know.
Again, I think this only works well with about ~8-10 people max per channel, but that's about the optimal max size for project teams anyway in my opinion. I highly suggest you try it if you haven't - when I first tried it I thought "How is this any different from Slack Hurdles?", but the small usability improvements in Discord made it feel to me like it approximated the in-person work experience much better than Slack (note we didn't use Discord as a complete replacement for Slack, just for small "working group" teams).
We do three things:
First, we use Missive to integrate email and chat. This way everything's in one place, properly threaded, and we can easily discuss emails internally in context. Much much better than GMail + Slack.
Second, I run video chat office hours twice a week (Tuesday/Thursday). Anybody can drop in to discuss anything — or not, if there's no need. This lowers the activation energy for "in person" discussions that otherwise might not get scheduled and promotes async work the rest of the time.
Third, regular company offsites! Even a few days a year is good.
I've always liked to make bug reports (called issues this century it seems) the center of gravity for task-oriented organization communication. Unfortunately there isn't an obvious best in class solution available but github is usually not too bad. Or the issue system we dare not name (rhymes with era). Communication about non-task-focused subjects in Slack. No DMs unless for palace intrigue. Don't much care about meetings except for socialization. Nothing gets done in meetings but it's nice to shoot the shit once in a while.
Edit after reading other comments: no team private slack channels. Super annoying.
I have found that the key to running remote teams is cadence, communication, and connection. This is more difficult with a remote team, so you need to be much more intentional. Remote teams that are not connecting tend to focus solely on work and miss the purpose behind everything you do.
Here is a simple cadence: hold all-team group meetings to share core values, mission, and to keep the vision in front of the team. Next, create smaller groups if you are managing a larger team, and encourage introverts to participate alongside extroverts to build relationships within the team. By doing so, the team will work harder and even help each other as a cohesive unit. While it takes effort to build, it is worth it.
The final step is communication, which we all know is vital. With a remote team, you sometimes have to over communicate since there are no casual water cooler chats or coffee breaks to connect informally. This requires a time investment to develop, but the return is a longer-lasting team with minimal turnover. It's worth the effort to build a great remote team.
First off learn to relax. breathe. Just because people aren’t constantly communicating doesn’t mean nothing is happening.
Learn to embrace long pauses in video calls. Learn to accept that a response to a message sometimes takes several minutes or even an hour to come through.
You said everything is going well. Okay, so what’s the problem then? The amount of communication currently happening clearly must be sufficient, otherwise things would not be going well. Right?
Just chill.
In addition to all of the management, communication, and team building strategies mentioned here, I've got a shameless plug for a product I've been building with a fully remote team of ~30 people over the past four years: https://katmaitech.com/
In person collaboration is best, but for a fully remote company and geographically distributed team I think we've built the next best thing.
Many of us are on camera all day, others pop on just for scheduled meetings. But with the mix of working styles we've managed to maintain a pretty healthy culture, where we can have some of the spontaneous interactions that are so important.
Video calls. If you aren't having at least one video call a day something is probably wrong. Configure it such that starting a video call takes no more than 4 clicks.
Have a company-wide General/Coffee chat where people talk about arbitrary things. It's better if this chat has history which expires in 24 hours.
Write lots of short documents -- especially for designs. Review them much like you would review code. This can be as simple as Markdown documents in your repository using your normal code review tool. Ensure all documents are listed in a single easy-to-find index of some sort.
I've accidentally made it work extremely well in the past with Discourse[0] (not Discord). It was meant to record decision making processes, but it ended up replacing almost all of our async communications. Messaging was used only for emergencies. I've since left the company and never tried it again due to different cultures in my following companies.
If you're in similar time zones, try https://www.gather.town/ ?
I've used it for remote conferences, and I like its 2D UI. Real sense of space there.
I have worked with several companies and collaborating across vastly different time zones...and the thing that seems to work best is some central document repo/wiki. Sure, group chats help, 1:1 chats help, email helps...but for institutional knowledge, or even info that needs to be passed across time zones, i find it helps to "dump" info in a central place that everyone knows to look at like a doc repo/wiki...and a chat becomes too ephemeral, plus as new messages get added very critical info gets pushed down...and if a chat platform allows to "pin" some critical info, then you just pivoted to need a doc repo/wiki of some sort.
I will also add that if the info to be conveyed is less than institutional knowledge, and it more about "what's status of a project?", that too, can best be posted in some sort of succicnt dashboard...which can live somewhere in an appropriate place in your doc repo/wiki. Again, i will state again that ephemeral platforms like chat have their place, but there's nothing more powerful to ensure EVERYONE everywhere in your org knows what's up, what's happeneing, and/or how to get help to keep moving forward on all efforts.
Against what is mentioned in other comments I suggest that all the information and discussion should happen in your documentation platform. Confluence, notion, even Jira.
While slack seems like popular suggestion, its not made to keep structured information and what happens is that you have some discussion in slack, some discussion in a meeting that was not recorded and then, in a best case scenario, some conclusion in Confluence. This is a bummer because a lot of information was lost, specially the logic behind a decision. It would be far better if the discussion happened in writing within the comments section of the document. Now all the context is in a single place and searchable. Plus its possible to add to it somewhere in the future, so the document base doesn't necessarily grow with time.
Huge bias here as I work for Figma, but multiplayer collaborative editors like Figma do wonders.
We run nearly everything out of a figma or figjam file. Retros, planning, etc. There's something really nice about being able to see everyones cursors at once, and feeling like you're collaboratively creating something. Presos and slide decks often feel very one-direction from a data flow perspective, which becomes problematic for remote-only roles.
The most important thing to me about remote communication is making time for "coffee catchup" to chat about non-work things.
We literally sit down with a fresh coffee for 5mins just as we might when crossing paths in the office. Find common topics among colleagues to shoot the breeze - football, video games, cars, etc.
Soon you'll have cross-team relationships with people who might never work directly together.
If you find yourself constantly trying to explain stuff visually, invest on a graphics tablet. Even a "cheap" <100 EUR goes a long way.
As for the "whiteboard", just opening Excalidraw when you need it is very low friction in my experience. Google Jamboard and Miro were okay-ish, I guess, but for me the simplicity and responsiveness of Excalidraw is still better.
Slack / IM often
Use video chat for meetings (encourage camera on but don't require it - management should lead by example)
Be kind. Reach out using other forms of communication (like snail mail) if you want to encourage each other with thank you notes, etc.
Use some kind of shared wiki for long term 'shared ownership' documentation. Don't be afraid to lead by example. Don't be obtuse. Give visual examples of processes, technical components, etc.
Lean into visual examples everywhere you can (screenshots, mock-ups, diagrams, etc).
In video chat, screen share and encourage use of annotations when discussing things. (Zoom has this feature and it's awesome)
Use an agile cadence. Encourage people to share questions / concerns at story grooming sessions (which should be regular). Also encourage feedback at retrospectives (which should also happen regularly). Managers should lead by example in blameless retrospectives and lean into positive feedback.
If you're a team of all dudes (or any one thing), you have a blindspot with perspective. You should rectify that.
I work from the USA with people only in Singapore and India.
I wrote "Writing style for Slack" a couple years ago if you're interested:
https://www.kcoleman.me/writing/slack/2023/03/11/writing-sty...
Actually do something when people don't reply to their peers.
Even at companies that aren't "remote", there are people who will simply ignore emails and messages. You're forced to go nag their manager or escalate to yours to get them to respond.
Effective communication in a remote startup requires clear tools and processes. Use platforms like Slack or Microsoft Teams for real-time messaging, and schedule regular video calls via Zoom or Google Meet to stay aligned. For task management, tools like Trello, Asana, or Notion can help keep everyone on track.
If you're looking for a fun way to unwind after work, check out 1xBet slot https://www.bangsaonline.com/berita/130476/setiap-orang-memi... for some great online gaming options!
One thing I've found useful is to have deliberate google meet calls when having planning discussions or firming up decisions.
I set up the recording and transcription and then up front we define the problem and what we want the outcome to be. Afterwards I give the transcription to ChatGPT and get it to summarise the content, decisions, etc and add that to our documentation with a link to the recording.
This helps you stay on the same page and also gives context to people who werent present about what has been discussed and decided.
Distributed startup founder here. We love Figma, keep in touch with Gather.town, and have been very happy with Flat.app for keeping us from Asana/Slack hell.
Communicate in startups by keeping messages clear, concise, and action-oriented, using tools like Slack or Notion for collaboration. Foster transparency, regular check-ins, and a feedback culture to ensure alignment and adaptability.
Use Roam(https://ro.am/)
It's like being in a office while being remote and really helps with that zoom fatigue and actually let's you have a HQ and drop into colleagues offices.
Be honest about people not showing up and say it's not ok. Hours need to mean something. If there is a block of 4-5 hours a day where everyone (that has a dependency on each other) is available, this is key.
Anything less and you'll have people just enjoying a day at the park (without the laptop).
Like an MMORPG guild. which in 2024 means Discord.
(No “professional” solution is even close to gamer tech for remote communication)
A little bit on the softer side, but It's good to encourage a feeling that you can just say something publicly even if it might make you sound slightly naive, because it's WAY more common that everyone else actually has the same misconception or bad assumption. People tend to do that once, someone makes a rude comment about them not already knowing, then they pretend to know things from then on. I think that has to come from the top by example. People will emulate sounding like the highest up person they're interacting with on a project or in a meeting.
Make all repos public within the company and use issues a lot on the repos directly - so they remain searchable along with the code.
Same for Slack - keeping stuff public as much as possible.
Set aside time for reviewing PRs separately and together, and same for project plans (RFCs, timelines, etc.).
Me personally:
- do my best to avoid chat stuff like Slack, yes even to ping someone before calling, it's more disturbing than useful. Mails are the way to go, much more structured so well searchable and reconstructable as needed, when needed. Doing so force people to communicate a bit more properly in written form instead of wasting time;
- a home office, meaning a room, with relevant environment (low noise, etc) to been able to talk out loud not having to wear headsets and alike, I do not care much if it's a VoIP phone classic call or something else, simply the point is being hands-free all the time, with good enough mic I can move a bit keep talking issueless;
- trying to keep a wiki, which is a VERY HARD task because when you start it's empty so there is no point in going there and after some times many pages became a bit or totally outdated and there is no easy way to bind them to what they document so to get "automatic alerts of not anymore current pages"... It's still useful because it's the sole document culture vs oral tradition enabler that most people know enough to casually use.
Aside an INTERNAL CRM-alike might be of help to being able to get some infos about a contact calling you every time he/she call (including personal stuff like birthdays who help socially).
Doing more often does not work. Most non-tech people still refuse the idea of tickets and tasks to be established/picked, assignments and reassignments rules etc try to push them outside very specific technical landscape in general is worse than giving up on them. Seriously.
That last paragraph is the biggest issue IMVHO: most tools we have are simply rigid and annoying, so most people use them badly nullifying any potentially positive outcome. To be short: more free text, more comms, less rules works regularly better, if you still manage to avoid exaggerations.
Onboarding is the hardest part: if normally docs are bad in general those to "get start with us" are the worse, essentially nonexistent or if present totally useless. In the end even in IT most people do not know how to work with IT tools and paradigm, and tend to be unwilling to learn.
Don't assume people know how to communicate. Provide education material, cultural backgrounds, descriptions of things to avoid. Incentives that are aligned with good communication.
For example:
- Chat discourages thought. - Chat burries decisions. - Brainstorming and ideation vs reasoning. - Brainstorming, ideation and reasoning vs preferences and biases (CEO weighs in) - Documentation vs works in progress. - Proposals vs time to consider them. - Bike shedding. - stupid forum formatting. etc etc etc
Current social media is shockingly poor training for good communication.
WhatsApp is very common for smaller simpler projects, and I'm pretty happy with it.
My main communication related complaint is when it just doesn't happen at all.
Plans change and nobody tells me so I work on cancelled features, only one person actually knows what's happening and they're busy so you don't want to ask them about every detail, minutes are not taken at meetings.
I also would prefer calenders be managed better. Google shared calendars are amazing, I'm sure there's something similar people like for bigger projects where some people use apple... But nobody seems to really see the need for anytime like that.
We have a weekly "all people's" meeting every Monday morning - high-level wins for the past week and fires for the coming week, touching on OKRs, high-level direction, then each department goes through what they're working on/wins/fires. A bit of back-and-forth and "how was your weekend" at the beginning. Runs about 45-60 minutes. It's invaluable in keeping everyone on the same page and in the loop at a medium level of detail. (Not too vague, not into the weeds.)
Tickets. Email. Signal (emergencies and sensitive info only).
Async all the things.
Keep devs out of meetings.
Don't track work hours.
Never do Slack/Teams unless a client pays a lot to suck you into that or if they pay a very large number to have your devs in it as well.
Regular group discussions (not standup) are important. My team meets 30-60 minutes four days a week to discuss technical details and long term strategy.
It plays two important roles
1. establish rapport between team members
2. gives known space for issues. Leads to Better balance of focus time and group convo
This is the most important meeting of the day. Create doc to people can add things to the agenda. Managers job is to keep the meeting relevant, efficient.
Outside of that. Devs encouraged to pair together separately for troubleshooting.
1:1s are critical early on. DO NOT CANCEL THEM. And keep them relevant
If you're asking a question (whether 1:1 or in a group setting), frontload as much context as possible. Always give:
- some minimal description for the problem you're trying to solve
- what you've tried already, and why it hasn't worked
----
Bad:
> "Hey! Does anyone know how to use X"?
...time passes...
> "Sure, I can help with that. What are you trying to do?"
...time passes...
> "I'm trying to do Y."
...time passes...
> "Okay, sure. You can set it up like this."
...time passes...
> "Oh, I already tried something like that actually, and it didn't work."
...etc., etc., etc.
----
Good:
> "Hey! I'm trying to use X to do Y as a part of feature Z. I already tried A and B, and they didn't work for <reasons>. Could someone help me out?"
> "Oh, yeah, that's a known problem with A and B. We can get around that by setting up X this way. Since you're working on feature Z, you might also want to consider..."
Slack. Weekly meetings (encourage but not require camera on). Annual in-person retreats.
Don't be afraid to small talk and goof off just a little (in a way that's respectful to your colleagues). Allowing people to be more themselves fosters better working relationships IMO, of course with the expectation that anything public facing is done with professionalism.
1. gather.town 2. Zulip (nuances of design much better than other chat systems for remote work specifically) 3. the 'latent energy' is going to be lower when people aren't eating lunch together and rubbing shoulders. you have to bring the energy to an empty room all the time when working remote. this also has to be exemplified by founders. doesn't mean loudness but instilling a sense of urgency etc.
On the softer side, I found remote work to be painfully dry the past few years so created a small Slack extension to add color / life / levity to internal communication. Collect team quotes & images, make memes. It's added a lot of joy to teams, especially eng teams.
At Zed, we use our native collaboration to make sure we get a lot of synchronous time together. We also use it to do design review as we're coding a feature, letting us skip code review all together!
Dailies (we have 3 in a week) for synchronization helps a lot. It’s also help’s with new stuff onboarding.
This is a great article on the topic: https://hbr.org/2022/03/what-great-hybrid-cultures-do-differ...
Check out gumroad public youtube channel, they publish all their internal meetings and call with board members. I think its powerful to have public communication however they proudly talked about remote work and now going in person.
https://cdn.zapier.com/storage/learn_ebooks/e4fbeb81f76c0c13...
https://www.hashicorp.com/resources/remote-culture-at-hashic...
https://www.hashicorp.com/resources/the-remote-developer-s-p...
Stripe's Increment had an entire issue devoted to remote work: https://increment.com/remote/
Try using video meetings through virtual frosted glass via MeetingGlass (https://meetingglass.com/).
This will give you the feeling of being at the same desk, with the opportunity for quick, spontaneous conversations and collaboration.
Here you can find articles about virtual frosted glass: https://meetingglass.substack.com/
Slack, notion, and a meeting every Monday to talk about what we're doing and priorities.
A few things help me:
Get used to the idea that someone isn’t necessarily there when you message. Try to predict when you’ll need to talk to someone and send the message with the info you need.
Document. Everything. Confluence needs to become your best friend. You and your colleagues rely on this information to keep up on things they might miss.
When you’re planning work, especially with lots of uncertainty, optimise to be inefficient. It’s better to start with 20-person calls at the start of a big project and cut them down later than to have 3-person calls and realise you missed critical people 2 weeks before your target date.
On the flip side, once you know what you’re doing, keep your status checks lean. Invite only the leads you need and write down the outcomes to share with the wider team.
Be willing to change your communication habits as you grow. A weekly all-hands is fine for a 10-person startup. It’s a monumental waste of time when you have 200 people across 5 departments.
Dumb idea: play some game together.
Tools like Slack for instant messaging, Zoom for video calls, and platforms like Trello for task management.
Discourse (not Discord chat, but the threaded forum software) is a much better choice than chat like Slack. All meetings and discussions/decisions should have a thread for them, even just a placeholder, and posts to document conclusions or next steps or rationale or whatever.
Have a company wiki.
Have anyone who can’t touch type learn to do so, on the clock, as priority 1, before anything else.
If you can’t type a lot and quickly, you will resort to speaking instead, which isn’t convenient to consume and isn’t indexable. Strongly discourage calls and synchronous communications in general.
We use Slack in general. But whatsapp too comes in the picture.
Not sure if it's been mentioned here, but The Async-First Playbook by Sumeet Moghe (Thoughtworks) is a great book that summarises a lot of what people are saying in this thread and adds more.
Some tricks I learned from the masters: -No scheduled 1:1s (Brian Cheskey & Jensen Huang). 1:1s isolate conversations, clog up calendars, and slow things down as people queue stuff up. They also can end up being reverse theraputic where people who come in happy end up finding things they aren't happy about. If you have 30 direct reports and do 30 weekly meetings, that's 15 hours a week burned. Finally, discussions and decisions should be made with all relevant people present.
-Quarterly Offsites where you actually work together in the same room, not strategy sessions. Don't try and come up with strategy during offsites. Get a big hotel conference room in a cheap city (Vegas, Montreal, Orlando) with good internet and sit everyone side by side. Fly in Monday morning, leave Friday afternoon. Do this once every three months for the full team. You get a full week working together. It's better do to longer sessions (like a week) less frequently than shorter sessions (like 2 days) more freuqently. This gets you really synced up with everyone.
-Sunday night executive meetings (Tim Cook does this). Sorry but if you're a startup and you're trying to build something awesome you should expect your leadership team to meet Sunday nights. Audio only phone call is fine.
-Audio-only by default. This doesn't mean "camera off"; that's an awkward format. It means being in a position to have fast, quick audio conversations enables the spontaneous collaboration lost from the physical office in remote work. Audio-only is also more palletable for working late hours. Who wants the camera on at 11pm? But you're willing to voice chat for a sec to work on something. You want to set things up to be able to work around the clock.
-Weekly all hands. Do it closer to the end of the week. I like Thursday afternoon because it tends to maximize attendance. This one's from Skip Schipper, former head of HR at Cisco.
-Make people do live demos in a stage or theater type setting. Make it kind of workshoppy, where there's real-live feedback in realtime as people do stuff. This one's from Steve Jobs.
-AI Meeting Sumamrization is great but you need to make sure its surfaced in a way that the releavant people can get to it.
-Do not pack your calendar with back-to-back video calls. The sign of strength is "calendar zero", not calendar filled up.
-Music. People who listen to similar music tend to get along and bond best. I learned this one from Douglas Hofstader.
-Encourage people to come find you immediately if they need anything. This is the big, fundamental problem with remote. You get stuck, you stop. You must must must get people to take the extra step to proactively find each other so they can keep working at maximum speed.
Poorly.
Asynchronous communication. Make use of public slack channels and text based communication.
Hire only good communicators and non-psychopaths.
[dead]
[dead]
I worked for multiple companies remotely and the thing that worked the best for me was:
- Everyone must be connected to Discord in an audio room. - Encourage pair programming. - Record every meeting make them available to everyone. - Log every decision in a central place, easy to browse and discover. - Meet regularly (IRL) with you colleagues.
By far the most important point is always being on Discord. You can quicky jump in someone's room and feel very connected to your teammates. Obviously, like in a real office, don't disturb someone if it can be managed asynchronously.
I learned the following:
- Everything public in Slack. Create a fun-sounding moto that discourages DMs. Even if a DM happens, and the back and forth resulted in a consensus, share that consensus in a public channel (which makes it searchable).
- Record your team meetings, preferably with software that can AI-summarize. Folks on vacation / leave can get the rundown easily.
- Encourage the sharing of solutions to various problems (technical or otherwise) in Slack. If a developer is stuck, and someone helped them in a huddle or a pairing app, share the solution afterwards (again, makes it searchable). Discourage the over-sharing of screenshots (of your application and other things). Again, not searchable. If one must be shared, describe it. For instance, many devs share a picture of a stack-trace. Not super helpful for others. Grab the text and dump it to Slack.
- Have a good pairing software setup, unblocks for when Slack back and forth is too tedious. I like Tuple (tuple.app).
- Connect your issue tracker to Slack, if you use one, makes creating issues easy. Linear does this well.
- If feasible, have your team meet in person, cadence up to you, but at least once. Meeting the people in real life humanizes them more. I know it sounds silly to say, but it's very true in my experience. Your people will seem even lovelier.