Embracing Asynchronous Communication at Gitlab
about.gitlab.com
about.gitlab.com
I've been working all my career (12 years) as a remote worker (freelancer for a couple years, then employee) and poor async communication skills is by far the worst and most omnipresent problem I've seen - mainly because as nobody sees who is doing what, allowing interruptions quickly lead to everybody constantly interrupting everybody. Having Hangout or Slack constantly ringing because three people want my attention at the same time is a sure way toward madness.
The lack of async culture also often manifests that way : a manager/lead/whatever sends a grossly imprecise demand as a one-liner email ; then developers ask questions about what the hell that person is talking about ; then the first person gives a few more details (the minimum amount) and concludes with "can we have a call? It would be simpler".
I think the main problem is that many companies, while they want to try remote work as it "attracts top talents", don't have the proper culture for it, which is, ultimately, the culture of writing. Not only being able to type down the words you would have spoken, but to actually perform thinking writing - which implies to draft a few ideas, then read them, modify them, change their order, remove some, add others, and only when you're sure you've nailed the issue, hit send to share it with everyone.
The typical non-remote employee won't want to do that and prefer to throw vague ideas in the room so everybody contribute to making them clearer at the same time. I'm biased of course, but I think this is highly inefficient.
Everyone is so quick to "have a quick call" that inevitably sucks 20 minutes out of everyone's day because (and I've heard this verbatim a dozen times in the past 6 months alone) "it's too much to type out" or "it's easier than sending an email," but then wonder why nothing gets done when all the dev tasks are eighteen 20-minute segments of work instead of two 3-hour segments.
To your last graph, I think there are absolutely times where this makes sense, but "business owner has a new feature request for a large existing product" is not one of them.
You have to adapt. Ask the single most important question as the first sentence. Don’t write a lot of text after the question either – it would only make people feel they can put off reading it, and therefore put off answering the e-mail. Don’t ask an easy question later in the same e-email (people would answer that question only, and ignore the rest of the text). And so on.
Exactly. And also, NEVER ask the questions you'd like answers for on Friday afternoon. Or any afternoon in general.
If it doesn't say what it wants in the first sentence or two, I'm hitting delete, unless the email is from my boss. And I currently do not have a boss.
We have a guide that covers top attributes of great remote hires. This will be merged into that guide soon: https://gitlab.com/gitlab-com/www-gitlab-com/-/merge_request...
I work in academia on the “business side” in IT. Interacting with faculty is notoriously frustrating.
Around 23:00 in this video the presenter offers a rule of academia that “nothing will be accepted as knowledge or understanding until it has been challenged by someone competent to challenge it.”
I found that immediately insightful and instructive.
It's sad really. I worked at another company where there were a few remote workers that all ended up getting fired for performance reasons. When I pointed out that it seems that all remote workers have performance problems and maybe it isn't them, management looked at me like I was fool, and clearly if the remote workers just "worked harder" it wouldn't be an issue.
But standup is in Slack.
It seems like there's something unspoken here (pun intended). What are the organizational reasons for the different modes? Are some kinds of communication discouraged, thus forced to be in recorded videos?
We also have GitLab Unfiltered, where you'll find some tutorials, recordings of sync meetings, etc. https://www.youtube.com/playlist?list=PL05JrBw4t0Kq7QUX-Ux5f...
We have an Efficiency sub-value called 'Write Things Down' which helps to explain this: https://about.gitlab.com/handbook/values/#write-things-down
Video has some pros (extra visual context, more engaging, more human) and cons (longer to consume, harder to search, typically creates double work having to record + document textually). Each company will likely view mediums slightly differently.
There's plenty of videos, but the really cool thing is that basically everything has a transcript, or meeting notes, or an agenda. And I think this hits a really nice middle ground that works for different types of people.
Personally I am very fast at reading/writing, and I focus better and understand better when reading, so I skip most of the videos and calls and just read them instead. But for some people they really enjoy the video side of things, and that's cool too. Most of our meetings/calls are optional and it works well to cater to both types of people. Our source of truth is ultimately what's written down (i.e. in an issue) and how we get to that point is flexible.
I really like it.
I'm making a chat application for this called heysync, which is similar to slack or IRC, but with embeddable auto-transcribed audio messages as a primary feature. You can type messages out as normal, or send audio, and people on your team can scan/read it, and decide to listen, or listen by default. It's more human than text, way less stressful than sync video meetings, and enables asynchronous conversations over several days or across timezones.
I'm nearly done building a first version, so if anyone would like to hear more or try it soon, there's a website and mailing list signup at: https://heysync.chat
have you had any of your friends/family try it out yet?
Heysync definitely shares concepts with iMessage's audio snippets (or WhatsApp's, Signal's, etc.), but automatic transcriptions let you decide to read or listen at will.
It's also different in that it's got features similar to IRC or a slack-like, so channels and DMs, markdown and code highlighting support, and soon enough reactions, threads, bots, etc. Beyond that, I'm also working on adding built-in support for "structured" meetings, like daily standups, because that seems to be a major use case.
GitLab sounds like a truly awful place to work.
Maybe that won’t last forever, but it exists.
I think if tech work really all becomes super distributed , the companies will still be competing no matter where you live.
So you won’t get Bay Area FAANG salary for working remote from some smaller Midwestern city at a FAANG, but you will get a lot more than you would at the tech jobs headquartered in your city. Kind of a win win for employee and tech company
I mean, wtf is it to them if I choose to commute 2hrs each way to and from work to save money? Why should they dock me for how I spend money that I earn?
No one is docking people for living farther away and commuting into the office. The salary adjustments are for people who live in areas with different costs of living.
So, by the same logic, they should be payed less.
Don't think of it as "adjusting down" (since it goes both ways). Think of it as a different supply/demand curve. At least they're transparent about it, although I suspect some ICs get bumped up or down based on their performance.
I don't see a justifiable reason for it either direction. Living in an expensive city is a choice, now more than ever with more and more tech-focused companies moving their devs fully remote.
You can say "no" to a paycut. And they can say "no" to keeping you employed at the same rate. Eventually you'll settle on an equilibrium - the intersection of the supply/demand curves.
If you could have hired a Kansas City employee to do the same job for less pay, that would have already been reflected in the previous salary negotiations when you instead decided it was worth it to pay more to hire the NYC person.
That person choosing to live in a different location has no effect on anything - everything that led you to the original choice to pay them a higher wage remains true.
Where someone is located in the world is irrelevant to the value they are producing for the company, so what justification does a company have to adjust a remote employee's salary if they move?
See also: https://bonkersworld.net/based
Your objection makes no sense.
It seems like every interaction has a script or a page to follow. Why even be a human at that point?