DEV Community

Damien Cosset
Damien Cosset

Posted on

Working Remotely and Written Communication

I joined 7 months ago a software company. Every developer works remotely. This company is also the first one I joined as a developer.

This post is about written communication in a remote environment. In the team I’m currently working with, we have a rather clear hierarchy. We have a manager, who has the knowledge of the company’s products and a solid programming experience. We also have a lead developer for the current project we are working on. Then, there is me, the junior developer.

The problem occurs when the manager-developer express some opinions to this other experienced developer, or comments its code. Our communications are mostly written ( we use Skype, and we speak French, both of which are irrelevant to the point I think :D ), and I noticed it can be complicated to convey emotions or tone in a written sentence. If you add things like people writing abbreviated words and more than two developers arguing on something, I would argue it can become a nightmare.

In a oral conversation, there are always little things that can give away a joke, indicates that we are not serious or just make things clear about our intentions ( a smile, a laugh, the tone of the voice, probably countless other facial expressions ).
But when I type, how can I be sure that my colleague won’t take a certain word the wrong way? You won’t really have any indication of my tone. You definitely do not see my face… I could add an emoji sure, but is it always appropriate and/or enough ?

In our case, those discussions sometimes go back and forth. I think this is rather healthy, and I’ve learned that there are a lot of ways to do the same things in programming. The problem arrives when you start seeing some words IN ALL CAPS IN THE CHAT. You can feel then tension rises and in the long term, that could become a problem.

I wouldn’t consider our current environment toxic, it happens very rarely, but it raises a few questions:

  • Is it really possible to maintain healthy written conversations when a team starts to get bigger? So many egos, so many opinions, so many possible clashes.
  • Is oral communication the only way to ensure that the environment doesn’t become toxic ? ( Although I’m sure it can become toxic even then)
  • How can I convey a strong opinion in a written conversation without appearing like I’m close-minded or selfish ?
  • Do companies have certain codes or rules when it comes to written communication ?

Would love to hear your thoughts !

Top comments (17)

deceze profile image
David Zentgraf • Edited

I am thinking about this problem in terms of communication channel bandwidth. Different channels have different bandwidths, and sometimes a channel just doesn't have adequate bandwidth. In more concrete terms, talking face to face conveys a ton of information in addition to the spoken word; you see each others body language, you see whether someone is intently listening or is bored, you pick up on jokes easier, just get instant feedback to what you're saying without anyone even having to say anything (e.g. nods). You can add gestures or scribble on a piece of paper to supplement your words. In a text chat all that is missing. A text chat is good for exchanging small bits of factual information. A text chat is not good for:

  • discussing a complex problem in depth in realtime
  • inferring people's reactions to what you're saying
  • talking in a larger group

You should not try to use text chat for these things. And if you are, don't try to read or convey information through it that just isn't there. Don't assume how people are or aren't reacting. Don't try to infer things you can't see. Use text chat to exchange factual information, which is what it's good for. Don't try to compensate for people getting agitated, because they might in fact not be.

A text chat is also terribly asynchronous and is costing everybody precious time. You have to wait for the other side to respond, but you can't really do anything else productive during that time either. Text chat isn't realtime enough to have a smooth conversation, but it's not asynchronous enough to have a measured back-and-forth either, like you might have via email or a bug tracker ticket.

If text doesn't have the bandwidth required to discuss something, switch to an audio conversation or, better, a video conversation. Upgrade the connection. Just a quick "Hey, do you have 5 minutes for a quick talk?" are often sufficient to solve something that might otherwise drag on for hours or days.

In addition, meeting in the real world every so often really helps. If you get to know people intensively, even just for a few days or a week, then you can infer their reactions better even in a text-only medium without seeing their faces or reactions. Go out for a drink if you get the chance. Good companies should be aware of that and initially fly remote workers in to get to know the team, and/or sponsor annular get-togethers or such.

ikirker profile image
Ian Kirker

Maybe this is just because I spent so much time as a kid MUDding, but, far from being "terribly asynchronous", I find text chat to be the best synchronous communication medium, if people are engaged. You can paste links, re-read what what people said to check context, and keep an automatic log to refer to when the conversation is over. And, it's harder to interrupt someone mid-sentence (accidentally or otherwise) or dominate a meeting.

I find audio-only phone calls stressful and unreliable, and video conversations quite strange and distracting, in part because of the odd personal space violations (people never have their webcams at appropriate distances) and wandering eyes.

deceze profile image
David Zentgraf • Edited

I suppose it really depends on the "texting etiquette" of your fellow participants and what you're talking about exactly. A one-on-one is often not a problem, but a group conversation often devolves into chaos if several people are typing at the same time, I find. Because nothing is keeping you from "talking over" one another, and then it can become really difficult to refer back to previous points and respond to everyone appropriately.

I prefer a completely asynchronous medium like email or a ticket system, where slow thought out replies are the norm. For meetings, I prefer video.

I have to add that I primarily work with people from other cultures and different business roles, so that might exaggerate the problem. If you're all from within the same culture and are doing roughly the same work you may be intrinsically more on the same page.

Thread Thread
ikirker profile image
Ian Kirker

That's a fair comment: text definitely relies on being able to keep track of conversational fork/joining and respecting a certain implicit conversational turn, and I agree that the more diverse your group is, the worse I'd expect that to work.

I do wish all the replies to our ticket system were thought-out, though, however slow they might be. There's nothing like having to slowly draw initially-omitted detail after detail out of a person over e-mail, like pulling teeth one by one.

sofianegargouri profile image

Hey Damien !

I've been working since may for a company that allows remote working, and I chose to take advantage of it. It's been now 2 months since I'm working remotely, and most of the time, the communications are done with Slack. I agree with you when it comes to the fact that sometimes, you can't understand sarcasm or jokes, and take it personally, but I think you shouldn't be offended by your team, in any case. Take a step back, and learn to forget.

I think the secret about good written communication, is not to mix all the topics. In our company, we have a Slack channel for each project, and a lot of channels non-work related, like #music, #fun and of course #random.

We never had any real problem with written communication, and personally, I mostly prefer it to voice communication because you have a trace of what was said, and if you forget it, you still can read it back, even a few months later.

ravneetg profile image
Ravneet Grewal

I have been working with remote teams for some time now. What I have seen is that at some point written communications become noise. No useful information flows in written comms after some time (emails or chats).

Best to avoid this noise and chaos is a quick video conf call with all the stakeholders (Manager/Lead/Devs).

  1. Identify the agenda clearly,
  2. Discuss in the video (or even audio) call
  3. Agree on next steps / solution
  4. Confirm the next steps / solution AFTER the call in a written communication (email?)

This keeps things focussed to the problem and brings agreement faster.

mortoray profile image
edA‑qa mort‑ora‑y

I find a good way to keep things non-toxic is to be neutral and go with the flow. Too often I see people fighting over minor things. This keeps the stress level high and makes it harder to discuss important things. You just have to let go of minor battles and accept the way other people do things.

Just like everything else in development it's a matter of priority. It's detrimental to express all of your opinions and try to enforce your approach.

Software Rule 48

The second aspect is learning how to voice criticism in a positive, or at least neutral tone. Learn to ask questions rather than point out faults. Learn to give praise. Learn to tone down the rhetoric. Learn how to express yourself to appear as though you have everybody's best interests at heart, not just your own.

guitarino profile image
Kirill Shestakov

When it comes to a disagreement, written communication can actually lessen tension because you generally have more time to think about what you're going to say. Little phrases like "I understand what you're saying", "you're making a valid point, but..." or "you're right; that said, ..." can really help to ease the conversation. Don't forget that you're all in this together, and that all disagreements come from trying to choose a better architecture for everyone. Also don't forget that some debates are meaningless, like tabs VS spaces or whether a semicolon should be used in JS. Don't ever argue about something of no importance.

mshappe profile image
Michael Scott Shappe

I concur with Peter Frank's initial point -- while written communication is bound to be the primary form of interaction on a remote team, some conversations are really better had voice, or even better, voice-and-video.

The problem is really very simple when you think about it: no matter what emoji or formatting choices you try to incorporate to influence how your text is perceived, in the end, the reader is not going to "hear" it in the voice you "spoke" it; they're going to hear it in a voice in their head, with their own biases and their own emotions, not the ones you intended.

If software discussions were entirely emotionless interchanges, this would not be a problem; but that's not reality. Reality is that we are, on the whole, actually pretty emotional about our own work, and often pretty passionate about what constitutes "good" design, "good" code, etc.

For a while, I managed a very widely distributed team -- we had people in Bosnia, Serbia, Argentina, California, and Minnesota. Most of our conversations were had in HipChat, or in GitHub PR discussions; but every now and then, text simply wasn't adequate to the task. A conversation, real-time, voice and if possible video, was necessary to really clearly convey nuances.

peter profile image
Peter Kim Frank

Hi Damien,

These are great questions, thanks for starting the discussion.

I noticed that your team uses Skype (which, of course, has telephony) -- is there a reason that your team doesn't supplement your written communication with an occasional phone / video-call? That might provide a release and opportunity to generate some of the more subtle oral/visual cues that tend to happen with in-person interactions.

Since this is a topic about written communication, I do have a few thoughts:

  • I think that recognizing the limitations / potential pitfalls in purely-written communication should provide a catalyst for everyone to be more mindful about their language and tone. Little things like saying "I see we made this technical decision; would you mind briefly highlighting the rationale for this approach" versus "Why did you design it this way" can make a big difference.

  • If you feel like you're in an unproductive disagreement that is beginning to resemble a tail-spin, consider embracing the tactic to Disagree and Commit (h/t Jeff Bezos). Using that approach, you can just say: "For the record, I disagree, but I respect your decision and will work hard to make this work."

I look forward to hearing what others have to say!

edonslow profile image

I'm part of a team that's scattered across England and Germany. Skype calls are our primary method of communication. I probably spend about one working day across the week in conversation. A new starter occasionally tries to converse over email, but it really doesn't work - too many miscommunications, too many replies from further back the chain missing the full picture, etc. Get the hang of using each tool for these things:

Skype calls: design meetings, work load planning, complex Q&A sessions.
Skype messenger: quick questions that don't warrant a conversation, and won't need to be referenced later.
Email: Meeting minutes, confirmation of work to be carried out, questions whose answer you want to keep to refer to later.

florijan profile image
Admiral Klinkenhoff

Worked for 6 years remotely, and now I'm in a office environment.
For remote work my takeaways are:

  1. Use chat for fast communication, requests.
  2. For any kind of discussion move to voice/video chats.

Video call have the benefit of seeing the persons reaction and associating what they are saying compared what you get over text, and text messages can be often misinterpreted.

As our team grew larger, we simply moved to Hangouts for our meetings, discussions. Same if I needed to discuss something with my manager or colleague, simple 5 min talk was just so easier compared with typing.

Also, text communication tends to isolate people, you associate the names with some avatar rather compared to a face, if you'd grown to dislike a certain person, anything he writes will automatically be toxic.

With bigger conversations, there should always be someone as a moderator, usually some kind of a leading figure (PM, manager, CTO etc) to steer the discussion. People tend to be stuck on smaller details, on certain viewpoints which might not fit for the current discussion and there needs to be someone to make a stop to it.

In the end, we used HipChat (and later Slack) more of a notification channel on our work ( Github PRs, pipeline notifications) rather than a discussion platform, all that was moved to the group video chat.

And meeting the people you work with once/twice a year and doing some "team building" exercise (usually getting piss drunk) is the best way to bond :)

evantbyrne_38 profile image
evantbyrne_38 • Edited

Consider organizing video chat meetings for things like daily stand-up and planning sprints. All of the developers at our company are remote, and I've found having that face-to-face time every day really helps a lot. I had a different remote job previously that got extremely stressful at times, and I believe that not having a face-to-face stand-up routine contributed to that significantly.

agazaboklicka profile image
Aga Zaboklicka • Edited

I work remotely for over two years I can tell you one thing: written communication just don't work in some cases. I'm not telling you to talk over everything but every time you communicate you have to consider the right choice of medium. When you communicate only in written messages lots of the context gets lost. And what the other person is saying (or how) can be easily misinterpreted without visual or auditory cues. I wrote about it more on my blog (if you're interested:

mentzel_iudith profile image

I have worked in an environment in which e-mail was the main form of communication,
with both local and remote colleagues.
Strangely as it may sound, I had the best communication with the few remote colleagues, some of them even people with whom I have never met face to face
and even belonging to completely different cultures :)

There were also face to face meetings, usually with many more participants than
the optimal number that would have made them useful ...
and, in such meetings, usually "the boss is always right", though, let's face it,
he/she usually has the lowest level of knowledge and involvement among all participants.

Video-conferences or "overly-technological" forms of communication are the least useful in my opinion, during such meetings, usually one person of those present
is monopolizing the discussion with the remote participant(s), who are hardly heard
at all ... and thus the meeting becomes a dialogue which sooner or later stops
to be followed up by the other participants not actively involved in the discussion.

It highly depends on the people involved, but it is really not the technical form of communication which matters most, but whether there does indeed exist a communication at all between the parties involved.

Unfortunately, I had far too bosses along the years with whom there was no communication of any kind ... and professional communication even less ...
I have never experienced real collaboration with a boss, regardless of the form of communication.

This is mainly because today's working environments are becoming more and more
business-like ones, in which the false authority of the bosses should be imposed at any price, and less and less collaborative ...

wsaryoo profile image

I've known the good five rules in communication from Buddha's Dhamma,
I'd recommend you to see this as not religious but rather good principles.

What to be spoken is meet to these rules:

  1. It's true.
  2. It's benefit to the listener.
  3. It's on the right time and place.
  4. It's come from good intention ( kindness, compassion )
  5. It's polite words.

we can adapt this priciples for daily life too.
thank you for the question :)

varunvns profile image
Varun Shringarpure

I've been a Remote Developer myself for more than 5 years now and a few things that I and my team have learnt the hard way, are kind of based on the above questions that we asked each other.

Yes Damien, you are right. Sometimes, the Written Communication can lead to be a miscommunication - if there is not enough understanding within the team mates.
I believe, we all have to understand that what matters is the people. If people can gel up with each other even after working remote, we will never face any such cases of miscommunication, because the person who is remote to the current person in context will understand what that person means in the email or the chat.
And the biggest thing that comes in picture is when we are working remotely, we might be working with people who have Different Culture and the words we use and are right for us, might not be for the other person.

So its very important to for the remote developers to understand each other and have a comfort-zone within themselves so that they can share what they want and are sure it won't be taken wrongly.

Daily Video Calls are the best -- whether its Scrum Calls, Dev Specific calls, calls with FED/BED, QA/DEV, Sprint Planning, Retrospective -- Any meeting what so ever -- As its good to talk to a Human Being rather than Talking to a Voice!

During such calls, or usual dev meetings, we start our meetings with usual conversations like what did you do this weekend? Or what's the weather like at your end? -- Such questions help understand each other develop a relation and this understanding is what helps teams working remotely tackle the problem of Miscommuncations.

Also, a regular 1:1 meeting with your Line Manager/Team Leader for a Developer or any team mate working on that team is a must -- and this is specifically true for a Remote Person -- as they might not get chance to share the story at their end -- and the Line manager needs to know what it is like working remotely, from the Remote Developer's perspective.

Again, there are cases where say for deciding an approach or architecture of some task, there are some email updates. If the email chain is going long one of the members in the email chain has to decide to schedule a meeting and finalize the stuff. If its just 2 in context, one should pick up the phone and call the other one up -- Talking about it solves rather than writing about a thing!