Lessons from seven years of remote work
tylercipriani.com
tylercipriani.com
- No one uses email. Literally no one. The only things I get from email is automated notifications and meeting invites.
- Everyone uses Slack synchronously. I get multiple pings per hour. Sometimes I have to carry on 2-3 conversations in real time, simultaneously.
- Everyone says they hate meetings, but they schedule them compulsively anyway.
- Absolutely nothing is in writing: not meeting outcomes, not project plans, not reported issues. Messages in our Slack expire automatically after 60 days, so there is no written record of anything either.
Of course, if billing or other concerns prevent them from doing this, i fail to see why they don't just use self hosted solutions, like Rocket.Chat, which isn't all that hard to do either.
I actually did that myself and wrote about it on my blog: https://blog.kronis.dev/tutorials/lets-run-our-own-chat-plat...
I would assume CYA. If a self-hosted, non-industry-standard program went down, the person who set it up would be putting be their balls on the line. If Slack goes down, they can blame someone externally.
Notice how most actions here are not designed to maximize productivity and finish the task quickly, but to maximize virtue signaling and to have as much plausible deniability as possible.
Personally, I would go bonkers in such an environment. I have some very harsh words that are best left off HN for people who engage in, perpetuate and sometimes (yes, some managers) encourage this behavior whether by ignorance or by deliberate example.
Most of what people think is important to document simply isn't. Particularly, collaborative sessions.
If a customer reports a bug in production, it really doesn't matter what was spec'd because the spec might be wrong. You need to evaluate the case and decide if something actually needs to be fixed.
What is in the spec is crucial and if the spec is wrong you fix the spec, assuming you have the authority to do so.
Slack in real time = I ran into a problem and I will bother you in real time until you fix it. Endemic to data scientists!
Not writing email = I need you to answer me now, not later. Also, I don't want to waste time composing text when I can just talk to you over video right now.
Meetings all the time = I want the highest bandwidth communication immediately, instead of having to wait for an unspecified length of time, only to realize that I have a follow-up question.
This is precisely about responsibility and responsiveness, right now, immediately, and in real time, until the problem is solved. It's very much a young person and startup thing. Maybe it works differently if you contract with a large, slow bigcorp of some kind, but I've never worked in such an environment.
You keep using problems that are not related to remote work neccesarily, but to the way the company works.
Yes, it's about placing the responsibility on the person you're bothering, and doing less of it yourself. So I think you're actually agreeing with me or somehow misinterpreted my post.
Here's your cases laid out:
1. I think my problem is more important than whatever it is you're doing, so it's Ok to bother you.
2. I can't bother to organize my thoughts and compose them in writing, so have fun parsing my word salad over voice, because obviously you have nothing better to do.
3. I am horrible at planning and cannot think of questions in advance, so it's your fault.
> It's very much a young person and startup thing
Right, so the toxic business practices.
I do take issue if I constantly get pinged from people who are in lateral teams and positions and in companies where there's no clearly defined structure and everyone pings everyone. Then it's pure toxic chaos.
Hope that clarifies it.
That's because everyone just hates other people's meetings.
The expectation of 'always on' is draining. I withdrew from social media for this reason, and now I'm applying that lens to professional communication software, in an effort to enforce barriers a bit better.
If you need to focus, just disable all notifications. Literally all of them. No one will die while you are focusing on the task at hand. And the project you are working on will definitely benefit from someone paying 100% attention to it. This may sound too extreme, but it'll feel natural after just one week.
IMHO, while the median comp might be higher in FAANG, one can get comparable or even higher compensation in many other companies given certain level of excellence in one's craft.
For lab work I can see why wfh is not an option, but for software development and lots of other work that could be done from home the decision should in principle lie with the employee, whatever works best for them, assuming that they are able to function like that.
One example, I'm a dev, and I talk to people we are trying to recruit from companies I worked at previously, they all ask me whether my company serious about going to in person, will that slowly fade away based on covid. I asked the recruiters and they said almost all the recruits ask that question too. I've always been in person at faang type companies and now about every month our vp of engineering schedules a new 'go back to the office' date, but it keeps going backward. Next date was going to be January something, but I'll put money on it going back monthly. One last whine, they keep saying they will do a survey of employee desires and concerns around this, but they keep delaying it for some reason.
Nice saying from the metalworking world: 'increased feeds and speeds are no substitute for better planning'.
- We use email extensively, both person-to-person and with various internal mailing lists we can subscribe to.
- Slack is very asynchronous and it is common for people to silence it when busy.
- All meetings are recorded and optional if you aren't an active participant.
- We write everything down with historical archives, for example all projects are proceeded by a written RFC describing the problem, solution and alternatives.
There are places that do remote work well.
Bad examples:
Hey, do you have a minute?
Hey how's it going?
I have a question for you.
Have you heard of $x?
Good example: Hey there! I hope you're well. How's your dog holding up since he had that run in with the porcupine? I didn't even know you had those in Barbados. Anyway, I have a question regarding $thing. I ran into an issue with $thing and it looks to be related to $otherthing. But when I googled $thing, I got results for $completelydifferentthing. I'm not sure where I'm going wrong. Can you help set me straight? Here's every detail I can think of you needing:
This is especially important in various cultures where some people feel it is rude to have a conversation without first checking on somebody's welfare or talking about the weather. That's great in some settings, but when you're working from home, it's instant messenger hell.It is just fine to lead with hi, as long as it arrives at the same time as everything else.
They learn quickly.
I haven't got time in my life to carefully and delicately walk around people's feelings with every single small work matter. If someone takes something like a link to nohello very personally, you've got to fix that relationship.
So in the spirit of being direct, your attitude has probably caused issues in your personal life and career that you are not aware of, and has probably created a reputation in your company as 'the grumpy/rude one'. It's not that much more work to be polite and your attitude probably spreads to other actions in your work.
You would learn fast when you have someone looking at your screen and receiving "have you slept with Jenny yet?", or "you should not have called Jack a dick" when Jack is with you.
If you have someone looking over your shoulder, you silencing all notifications.
But why would you send crazy gossip like that anyway? Please just keep things work related so we can all focus on producing results.
Please keep all messages strictly work related!
Good luck with that when you have 5 or 10 messaging systems.
> But why would you send crazy gossip like that anyway?
It was obviously to show an extreme. replace this with confidential business information and there you are.
How did you realize it? I'm asking because you sound a lot like myself.
But I think these differences are absolutely needed and the evolution kind of selected this approach for the world to move forward. Also, even if this world had come this far with only 1 trait I believe it would have been pretty boring place to be.
Maybe this is generational, but to me that's just the basic social contract?
I remember visiting a friend in North Carolina, and as we were walking a complete stranger asked "How are you?". Without missing a beat my friend nods and asks "How are you?" in reply and continues on... and apparently that was normal to him.
It's not really about asking someone to dump their troubles on your plate, it's about acknowledging the person before you make an ask.
As long as you're not pinging someone multiple times over it, I don't see an issue. The idea is just don't make someone switch contexts a bunch of times over niceties
99% of people would prefer their colleagues talk to them in a friendly, humanizing way after spending 7 or 8 hours a day on their own though. On the whole people are social animals, and we get depressed when we're 'forced' to spend time alone, or even in groups if the group is exclusively focused on a task.
There are people who don't want that social aspect in their work life for various reasons, but they're unusual. The advice here is aimed at most people, not you specifically.
Adding a bit of context to your messages might seem like unnecessary padding, but people loose context, multitask, and read stuff asynchronously. Restoring that context helps a lot.
As for the small talk, I think its very important what information you communicate. If you say “how was your weekend” what you usually are communicating is “I have no idea who you are, and want to warm up to your graces so you are more likely to do the work I actually want you to do” People hate that.
But if you ask them “how is your dog doing? I’ve heard it got its ear bit off that time hope they’re ok” Now you’ve communicated “I’m actually interested in who you are as a person, and what your life is. The work bit is nice to have but secondary” People do pick up on that, especially if you do it _without_ work requests from time to time. You trigger all the “they are part of my tribe” responses and will get your answers much quicker later.
It’s just very important to care about the people behind the handles and avatars, and establish connections with them.
Writing itself is an art form. Its important to have tldr; sections, to consider your audience and not to just braindump and call it a day.
At the end of the day though most orgs live or die by how aligned are their members, and how tenacious they are. Both of which require information to flow through it. And I think its way easier to tone things down/ignore/filter if you have too much than to try to infer “what other people actually mean”.
Think about it as a function: What arguments (information) would a function need to be able to return a value?
"Hey Jim, if you see this in the next couple of minutes, the foo is hitting the bar and I don't know if that's serious, if you don't or can't respond, no worries, I'll take it elsewhere."
But that requires a bit more forethought and just doing 'hi' is the easy way out to be thinking your way through as you go along. Which implicitly assumes the other person is just sitting there waiting for you, something that may well not be true.
Your second example wastes so much time.
>various cultures where some people feel it is rude to have a conversation without first checking on somebody
Which cultures?
The Timezone difference was indeed a blessing for me.
I adopted and used checklist and/or bullet communication with most of my emails. I worked when my clients were sleeping on the other side of the world; when they woke up my emails will be asking questions and answering/update from the previous work. When I woke up and ready to work, I have the details/feedbacks from the clients.
It did came with its limitations and was harder in the beginning. Besides many lessons learnt, one of the best and most effective was communicate, communicate, and over-communicate.
Target the new API? Talk to Suresh. Follow up on how an issue was resolved? Talk to Suresh. Ask someone on the team a question? Not without Suresh in the room.
And then Suresh would throw a ton of obstructions in your path. New API? We will require multiple days of in-person training. Issue not resolved satisfactorily? Let's do multiple rounds of revisions on a new triage protocol. Schedule a call with Suresh? He'll be free in 2-3 days.
Anything, absolutely anything at all having to do with interacting with the offshore team took a least a week.
I think that is a matter of personal preference. I - and my colleagues - hail from al over Europe and even though we miss seeing each other in person the productivity is up tremendously compared to pre-pandemic and the lack of travel, positive contribution to climate impact and extra time not wasted on travel have been an definite plus. But I fully appreciate that that is not for everybody.
The bright side is that a junior eng. is young, motivated and full of energy, so it can be done for a while until the salary helps to move up. Unless you are in Bay area. Avoid Bay area :D
When you're young you will struggle with things, we all did.
P.S.: if you are mostly doing videocalls in your daily work, you may want to change jobs. You should be ok in a library and going out to some room or hall for videocalls. Sucks? Yeah, not the best, but better than the jail that you said is your room.
And yeah, it sucks, but I hope things start getting better. I'd much prefer to work in an office, at a company where everyone works from the office.
My last job also didn’t really use webcams so being in my bedroom didn’t really matter.
The ideal thing is that you have a group of normal people who can log in and respond in a chat room or GitHub issues once or twice a day or so.
Sometimes it makes more sense to just do a phone call or voice meeting. For many people, especially non-technical that is just much easier, and you may get more out of it.
But I have found that some people just are not good at communicating over email, or in a chat room, etc. They can't really focus properly without being in a meeting. Again, non-developers (usually). You might consider just dropping those clients. But for me, I like to try to give each project I start a good chance of success, at least from a technical perspective. So sometimes that means the only working channel is a phone call and I get it once a week. Sometimes that's enough. If its other programmers then you would need to fire them probably.
Even if you compensate people for the extra space and wear and tear on their property, you’ll end up further inflating the housing bubble as larger homes are in short supply.
I think it's mostly HackerNews types who believe that losing free meal service and providing their employer with free office space makes them truly free.
> Timezones suck. I wish this section was as simple as saying: use UTC for everything, but it’s never that easy.
Use Google Calendar (or similar). It converts timezones seemingly. You can see other participants schedules right when scheduling a new event, if they have "public availability" enabled.
huh... I was expecting this post to be longer. It ends kinda abruptly.
As for the communications thing, some places have gone completely toxic during the last couple of years.
I was dragged back to work a short contract for an old employer earlier this year and the amount of bullying via those stupid apps like slack, jira and ms teams was mind blowing.
Managers pulling stupid stunts like opening half a dozen jira things against a poor drone 10 minutes before a stand up meeting, deliberately using side channels during a meeting to coordinate dog piles, the toxic nature of it had me noping out of there.
I was lucky in that I could have used the money but decided I didn't need it that bad. I would rather be broke than be involved in that bullshit.