Hacker News new | comments | show | ask | jobs | submit login
Why I Only Work Remotely (medium.com)
316 points by ylhert 354 days ago | hide | past | web | favorite | 182 comments

I rarely work remote even when I have the opportunity to do it; I'll explain.

The author seems to have a single-mindedness about optimizing their own performance. If performance in terms of your value to the business was about sitting down at a computer and coding, getting in a "flow" state, etc, I would agree. Problem is, personal efficiency doesn't necessarily align with value generated. I've seen engineers spend months regularly obtaining "flow" with few interruptions or meetings, only to have the projects scrapped because they weren't what the business needed. The fact that the code was immaculate didn't end up mattering at all.

Informal, personal communication can make a big difference. Yes, getting up and talking to someone is more efficient than starting an email thread or slack conversation in many cases. Many of those conversations are engineer to engineer and involve important technical decisions.

And, an aside: remote meetings are simply worse than in-person meetings. Having worked on several teams where some members were in completely different locations (and time zones), I never want to experience that again. Give me every person relevant to my work in the same physical space; I don't want to get blocked from doing my work because you've gone dark on slack.

I promise, I get it. If I had my way, I'd work on whatever I wanted to work on, with no meetings or interruptions. I'd just be a lone wolf cranking out awesome features and feeling great about it. That's just not what any business needs, and it's certainly not what they pay me for.

I think we'll have to agree to disagree here. If you're heads-down on a project and it's not contributing to the value of the product, there are other issues with your business than remote-v-office culture.

If pivoting your engineering goals requires hallway conversations, there's something wrong.

To be sure, not everyone is cut out for remote work, the same way not everyone is cut out for office work. For my part, I can't fathom going back to regular office work. I found I was frequently disrupted by hallway conversations and "just want to bounce this off you" pivots and were nothing but frustrating.

To say nothing about the fact that my commute time now hang out with my family time.

> If pivoting your engineering goals requires hallway conversations, there's something wrong.

I agree but isn't there always something wrong?

I'm in that spot, I worked mostly remote for the past 4 years and at every company it would have helped a lot to have a casual hallway conversation from time to time.

It shouldn't be necessary but in reality it often is. It seem to me like you need well thought out, light weight processes to make this work. I think it should work, but I never saw it working myself..

Do none of those companies utilize chat?

My experience with "open office" arrangements is that most of the conversation (important and casual) takes place in chats anyway--even between people sitting right next to eachother--because generally people don't want to distract uninvolved parties.

> Do none of those companies utilize chat?

Sure they do. But you're going to miss adhoc conversations that people in the same physical location have. Remote people aren't left out on purpose, but many times this chatter doesn't warrant saying "Hold on, let's not talk to each other's faces. Better do this on Slack.".

Source: Worked remote for about four years, really missed these kinds of random chatter.

This seems like it all comes down to the remote-first vs. remote-friendly divide.[1]

[1] My favorite post on the subject is Holman's: https://zachholman.com/posts/remote-first/

Not ever saying a word in the office is just not realistic. You don't leave people out intentionally, but conversations happen organically sometimes. Maybe you're in the kitchen grabbing a poptart and start talking shop with someone who walks in.

There are tradeoffs inherent in every working situation. This is one that really bothered me. It doesn't bother everyone, though.

> Maybe you're in the kitchen grabbing a poptart and start talking shop with someone who walks in.

I find that most talks like that are just shooting the breeze. _Some_ of them are useful and in my experience it's usually then they happen rarely. So I think it is beneficial for the team to get together once in a while, but working like that should not be mandatory and you should just let people go back to their preferred routines ASAP.

UPDATE: And yes, make sure the culture is "remote-friendly" ("remote-first") even if most of your workers spend most of their working time in the office, otherwise it's not going to work (and I'd argue that this is a good approach even if you don't have any remote workers, but that's for another post).

To be fair, a lot of my issues also come from the fact that I'm in a different timezone.

Even without that though, it's less about not being able to discuss things but more about not being 'casually included' in what is going on which leads to general misunderstandings.

> I'm in that spot, I worked mostly remote for the past 4 years and at every company it would have helped a lot to have a casual hallway conversation from time to time.

I have never seen hallway conversations helping. Face to face, desk to desk conversations do indeed help, sometimes. In my case, according to my estimations, the time lost by not having those conversations (about 30-60 minutes per week) is very small compared to the time lost in: office distraction, office small talk, commuting(!), all the untold stuff you have to do to get ready for the office, nervous energy lost in all these, which easily sum up to 3-4 hours per day! So I can use part of the extra, say, 16 hours per week (that's like 2 work days!) that are free, to write detailed chats, e-mail, and pick up the phone.

> to the time lost in: office distraction, office small talk, commuting(!), all the untold stuff you have to do to get ready for the office, nervous energy lost in all these

Totally. Not to mention people getting sick during the flu season just because they can't work remotely due to the company policy.

How does text chat or video conference not fix that issue? Look at all these open source projects that manage to flourish across languages, time zones, etc.

I have a feeling open source projects flourish in spite of their distributed contributors.

Text chat is a poor replacement to in-person conversation as it is occasionally async and a lot of meaning is lost. Video conference is better, but is less spontaneous and makes it harder to pull someone else into the conversation. Above all, text and video eliminate serendipity - I won't overhear the the conversation my colleagues are having about a pain-point I solved 2 days ago. I don't think channels on slack can ever replace this for me - following a text discussion takes my full attention, unlike people talking within earshot.

>I won't overhear the the conversation my colleagues are having about a pain-point I solved 2 days ago.

That is ridiculous. If you solved something like that, post it on some channel everyone is subscribed to, instead of trying to "overhear" problems people are having, not to mention you are willing to be distracted perpetually, listening for problems your colleagues might have...ridiculous.

Yep, this is the thing I commonly hear when people rail against remote work. It usually all falls down to a lack of planning and organization. They basically want the capability to interrupt any person at any time so that person gets pulled from their work to HELP THEM. Which is definitely efficient for the person who does the interrupting, but what about the person that got interrupted?

I'm not saying employees shouldn't help others, but there is a time and place. You can schedule calls, send an email, or even send something in a Slack channel. All three of those say "a response in a few hours is acceptable" instead of HELP NOW!

Serendipity is not a planned activity by definition. Additionally, people's minds are wired in different ways: what's ridiculous to you is perfectly fine for me.

What is ridiculous to me is wasting my time trawling through a #general channel (419 unread), filled with irrelevant, ephemeral muck just for the 0.5% chance that someone posted a solution to my specific issue.

As ill-luck will have it, I got injured since my previous post- I will be working remotely for a while in the new year and I am not looking forward to it. Seriously.

The complaint about scanning through #general for a 0.5% chance that someone solved your problem is the same as the other fellows complaint about listening to all of the #general office chatter on the chance that some of it could be relevant to you.

I think the answer to both of those situations is a searchable Q&A board. (internal StackOverflow)

StackOverflow has already addressed the problem for most topics that can be discussed publically. What remains to be addressed is the internal/sensitive topics that people are unwilling to discuss in the open.

There are some projects attempting to replicate SO functionality but so far we have not seen one gain adoption like Slack has in the chat space.

Sorry about that pal. Hope you get well soon...

I realise that async communication isn't for everyone, but personally I'd pick it every time. Discussions where people get some time to think over and edit their replies are so much more enjoyable.

> I won't overhear the the conversation my colleagues are having about a pain-point I solved 2 days ago.

Listen, I agree that this happens. But in my experience it happens so rarely that it does not outweigh all the negatives of having to drag a bunch of people to the office against their will day in, day out.

As for slack and such being a poor replacement to face to face, I'd say that it's because not all people are cut out for remote work. For me personally, I don't like it when somebody chats me up about things that are better suited for a slack (or even email) conversation. Things like getting the spec details buttoned down (which is actually the bulk of shop conversations, unless you're at a very early stage in your project) - you'd want to have a paper trail/reference to go back to once you start implementing. And remembering details from hallway conversations is hard, so you have to distract people from their work again or get blocked.

My experience has been the opposite of yours.

I worked on a remote team for several years and recently migrated to an in the office job in a similar line of employment and was surprised how often such things occur. In your case it may either be that your work does not lend itself to such activities or you are potentially unaware that they are occurring.

Slack is poor replacement for face to face. It is good for communication for many types of projects and teams, but it cannot convey a person's facial expressions or emotions that otherwise might be present in their voice. My current organization, while onsite, has teams spread across the globe that we interact with. Attempting to solve complex engineering problems via email and chat is doable, but takes longer than throwing a couple of the engineers in a room with a whiteboard (and so the company pays for travel when that is needed).

In my experience, remote work is very situational. Certain jobs, tasks, and teams will lend themselves to remote work, but those items are not the majority of work yet.

> but it cannot convey a person's facial expressions or emotions that otherwise might be present in their voice.

We're now talking software development, right? I accept that those things can be very important in other endeavours, but to me the person's well thought out and articulated opinions are much more useful than all those things. I agree, it takes time to put your thoughts in writing and often you end up tweaking your original ideas because you realized a better way of doing something while writing them down, but that saves a lot of time for both parties, provides a solid piece of documentation you can refer back to afterwards, and usually results in a better implementation which covers more edge cases, has fewer bugs and is more maintainable in the end.

> and so the company pays for travel when that is needed

In my experience it's almost always been a waste of time and money. It did provide other benefits, such as getting the remote people to hang out together, but that's neither here nor there. But then again, I never really valued whiteboard conversations much over discussing in writing (slack/email).

I'm the exact opposite, a text discussion I can trivially multitask with other things, but come up and talk to me and not only can I only focus on you, but anything I was thinking about before is likely wiped out too.

Are those open source projects part of a money making operation? Do they have the same kinds of deadlines with consequences of bankruptcy? Or is work voluntary and interest-driven?

Making software that should integrate with a business (either as a product or internal tool) has different communication requirements. Also, developers tend to understand each other better than non developers understand them.

That's a fair point. But in my limited sample size, there are plenty of companies that at least for a few years function just fine with full remote.

I agree with you. I personally am much more distracted at home because "I'm home". When I'm at work, I'm in work mode. I also find that I solve a lot of yesterdays roadblocks during my commute (20 mins each way) and the shower. Solving problems is not always about characters per second of new code.

Over the years, I can't even count the number of times that I heard a conversation taking place and was able to step in and say "that's wrong" and stop several people from a multiple day detour.

I do think 40 person open spaces are bad but small ones for a team of 2-5 that are all working on the same project are great (ideal imo), especially in a sealed room with lots of white boards, etc.

I do think that remote will become more and more common as companies see it as a way to reduce costs.

It seems like the author is mainly concerned about what is best for them, not the team. Requirements and clarifications constantly evolve. It is expensive to have every requirement exactly defined with full test cases when you aren't sure what you need to build. Being involved in that process gets everyone to good enough quicker. Also, I'm not sure what to do when a customer calls (8-6, presumably) and has an issue and the night owl is the one who knows that part of the system, telling the customer to call back at 1:00 cause that's when Bob is awake seems pretty silly.

Most tech companies have hours ~8-6, because that is their customers hours too, not out of a mandate to irritate employees. I do agree with the author that if the employer only cares about butts in seats, then it is a bad place to work but that has nothing to do with remote vs on site.

> personally am much more distracted at home because "I'm home". When I'm at work, I'm in work mode.

Not sure if you've tried this or if it's practical for you, but I've found that having a completely dedicated space, with dedicated tools, can create a working context that helps boost productivity. I won't name them due to privacy concerns but my company has been very good about dealing with remote workers and provides a basic set of office amenities to any worker who is selected to go remote (convertible standup desk, remote access point with office telephone, all-in-one printer w/ ink refills, etc.)

> Over the years, I can't even count the number of times that I heard a conversation taking place and was able to step in and say "that's wrong" and stop several people from a multiple day detour.

I'm not sure what your experience is but a trend I've noticed is that this tends to occur when only a subset of team members are remote - in fully-remote teams the use of collaboration tools (mailing lists, Jabber, IRC, etc) can often replicate these kinds of ad-hoc conversations with the added bonus of automatically capturing the information discussed.

I generally think environments where ad-hoc conversations are necessary to maintain overall effectiveness as being tool deficient.

I think it is more me personally than being about a dedicated space. I also probably average about 3 ad-hoc white board sessions in my office per week with varying people and topics. Additionally, I feel much more a part of a team all working towards a common goal when there is personal interaction. This is just what works for me, others prefer quiet. I work best in chaos and distractions. Part of it is my brain. If I think about only one thing/task all day, invariably I'll spend half the night still thinking about it. I've talked to others that only feel productive during hours 2-5 of a 6 hour work window. To each their own.

Most of my experience that I was referencing was fully on-site teams. I wasn't saying that ad-hoc conversations were necessary but that they inevitably happen. Last week the CEO came and told the support team "I talked with customer X and we're going to upgrade their hardware. Then they can use the new apps but also their existing fobs". I'm in the same room and interjected that their fobs aren't compatible. That plan was scraped and a new plan was created to help the customer. Solving an incident like this via tools requires almost all conversations to be done via tools and inevitably you have to invite everyone to everything or otherwise you defeat the point. However, this means that people now spend a lot of time "listening to virtual ad-hoc conversations" via the tools just in case it is relevant or you have input. It can also be solved with meetings but again you have to over-invite and it is more time people aren't working on the tasks they are already behind on.

Incidentally, this is one of my biggest issues with Slack, etc. You can use it to have fewer meetings but really all you have done is turn your day into lots and lots of micro meetings that may or may not be relevant or require your input. People need to learn how to plan and run productive meetings but that is a different topic. :)

Business communication tools and project management are actually two of my biggest personal passions. I've even created a free online tool (MVP right now) to help people practice team communication in a fun and interesting way.

These are all valid points.

I think one of the interesting effects of using different types of communication tools is that they limit the spectrum and volume of input we can receive. It sounds like your experiences are enhanced by using a communication tool (in-person) that has a very high dynamic range of input (sight, touch, sound, smell, etc.) and that's very "chatty" (literally). Personally I get side-tracked easily by spontaneous conversations (to my professional detriment) so I find that tools that help me sanitize and rate-limit my inputs tend to help.

Feel free to defend your privacy (I did) but if you don't mind me asking, what's the online tool you built?

I'm actively updating the visualization to make it more clear but my designer hasn't finished the assets yet (hopefully this month).

Basically it is a kind of puzzle but there is information you have that the others don't (and vice versa) and you all have a shared piece of information (the goal). The intention is for you to use the tools you use today (phone, Slack, text, etc. but not video/screen sharing) and communicate to solve the puzzle by collectively meeting the goal.

You can reach the tool at http://mmunicate.co (remember it is an MVP and work in progress) You can message me directly with minimal research. :)

One could also argue that the right people aren't being involved in decisions. If support doesn't know the hardware is compatible, they shouldn't just assume and send it anyway. That doesn't do anyone any good.

I've worked remote full time and am now in an office full time with occasional work from home days.

The difference between having a dedicated home office "space" to do/think about work and just going to the "home" space and trying to get work done is night and day. Occasional working from home is completely different than full time working at home. Once you've carved out a good space and have reduced distractions outside of work space (say a spouse asking you to do chores) you can maintain work mode the entire time, sometimes even better than at work. The sense of control is amazing for getting hard stuff done and concentration.

There's something to be said for transition time though. My routine was that I would always leave the house whenever I was done with work, whether to go get groceries or go to the gym, or just go for a 10m walk. I can't cognitively switch from work things to home things in the blink of an eye, I don't think the hardware we have allows for that.

> Most tech companies have hours ~8-6, because that is their customers hours too, not out of a mandate to irritate employees.

The majority of tech companies do not have hours 8–6. That's farcical.

Only truly archaic companies require developers to show up at 8am. More importantly, most developers are not on "tech support" duty so setting hours by customer call-ins is pointless.

Samsung in Korea requires their engineers to be in at 8am, being even one minute late can be grounds for termination. That may be proving your point, up to you to decide! ;)

Really well said. It has taken me a long time in my career to realize the things I wanted - to be left alone to code - weren't translating into the product getting done any faster when I actually was left alone.

I've watched other programmers fight for and get left alone, and then watched as they went off into the weeds coding things that solved problems we didn't have.

Sometimes being left alone even increases my stress and reduces my productivity in the long run because I choose to work on harder problems and try to solve things I think people want, only to discover after I deliver that it wasn't very helpful and I could have chosen something much simpler to do and finished faster. In the mean time, I've delivered more code and increased technical debt more than I should have, and I end up getting interrupted with more maintenance issues down the road.

> coding things that solved problems we didn't have

Couldn't this be solved by using a project management app?

In my experience, no. Project management apps don't substitute for communication very well, and things tend to get worse and not better when apps are expected to carry important discussions. If tasks are cut and dried, specified precisely, with no decisions to make, and no input from the engineer, then apps might help a lot. I've never had very much work of that sort, I'm usually highly involved in the discussions about what should be done and how it should be done.

Worth noting that the experiences I'm talking about, watching programmers go off the rails, and going off the rails myself, many involved the use of various project management, tracking and review tools.

It's not true for all projects or all programmers, I make no absolute claims. But my personal experience has been that figuring out the right approach to anything that takes more than a couple of days takes multiple conversations no matter what. My personal experience has been that tasks that run longer than a week almost always need one or more course corrections before they're complete.

Well. Remote work demands a little more active communication. If you are not upto it, you are going to have that experience you mentioned, ie solving non-existing problems.

Working in an office also demands a lot like for example all the social stuff and politics that goes with it. Putting in a bit more effort into communicating actively in case of remote work, pales in comparison to that.

To clarify what I mean by active communication: Instead of thinking "Oh, I am not really sure about this. Let me ask John next time I see him in the hallway", Open your email or what ever communication app you use, fire a message right away.

I have also find it helpful to maintain a "thought log", where you scribble down your random thoughts about the works or concerns that you might have, that other interested people can look up..

>I've seen engineers spend months regularly obtaining "flow" with few interruptions or meetings, only to have the projects scrapped because they weren't what the business needed.

That's just a sign of bad or nonexistent management. If you're managing remote people you need to know what they're working on, and you need to make sure it's aligned with the company's goals. If that's not happening you're not doing your job.

I don't get you. What does a developer has to do with deciding what the business needs? If your job is that, ie, figuring out what a business needs, then by all means work closely with people..But I am not sure that is the type of work being discussed in this context.

> I don't get you. What does a developer has to do with deciding what the business needs? If your job is that, ie, figuring out what a business needs, then by all means work closely with people..But I am not sure that is the type of work being discussed in this context.

Well, if you're a rank and file engineer, your "job" isn't explicitly to figure out what the business needs. However, if you care about becoming more valuable over time, you owe it to yourself to understand why the business values you. The business doesn't care about the code itself, it only cares about the solutions the code creates. If it's slow, that's a problem. If it's buggy, that's a problem. My instincts tell me to accept nothing less than purity, but a business needs pragmatism and "good enough".

This is the fundamental difference between great engineers and the rest. Just giving a damn and being engaged. Seriously.

On the other hand, most jobs and companies don't warrant being caring about aside from the salary and resume padding (hence the trend of leaving a job every other year).

I actually think this illustrates the main problem with all these opinion pieces: They depend heavily on the authors experience.

I only work in startups where I feel people expect me to know the business needs, I wouldn't want to work at a place where somebody 'breaks down' the business needs in small packages which need no knowledge about the business needs to implement. I think 'the good' startups realize that this old pattern doesn't work if you try to be innovative and agile.

This is very incorrect in my opinion. It is every engineer's responsibility to figure out what the business needs. Perhaps an intern does not need to worry about that, but that's about it.

Developers at the small companies that I have worked at have had at least some input into business needs.

Developers are often aware of solutions that do not occur to the business people. A business person might think we are being as efficient as we can be in process P, but then a developer may come along and say we can automate parts of process P by implementing solution S, for example.

A lot of the time this sort of thing does not happen in the scheduled, structured meetings, or in email chains, or in video conferences. It happens when people in the office approach each other "out of the blue" and decide to grab a conference room and work something through face-to-face.

If your job is doing exactly what you're told to do, and nothing else, then you'll find that you are very replaceable.

And yet the same people who say that developers are not interchangeable cogs in a larger machine will fight tooth and nail requirements that they attend meetings, interact with business analysts or users, or generally do anything other than programming.

LOL, you think you are not? We all are very replaceable and very often replaced.

Nothing, if you're in a perfect waterfall environment. But requirements are never perfectly frozen, or even perfectly clear. You always run into things where you have to go back and find out what they really wanted. And the requirements always change to some degree.

And being able to resolve issues faster, and respond faster to changes, is valuable to the business.

> only to have the projects scrapped because they weren't what the business needed.

That is most definitely not the programmers fault whatsoever. Scope, feature set, product/market fit, and current status should be reviewed on a weekly basis by a product owner or project manager. If a general contractor builds you the house you demanded 6 months ago but your not happy with it now, who's fault is that?

> remote meetings are simply worse than in-person meetings

You give no explanation as your reasoning for this. Generally speaking, all meetings need to have an organized flow. I work on a team of 15 people where we can easily cover all our checkins remotely in under an hour. One meeting per week.

> If a general contractor builds you the house you demanded 6 months ago but your not happy with it now, who's fault is that?

Blame is not easily assigned in this scenario. If your requirements changed have you conveyed these changes to the builder? Did the builder periodically reach out to checkpoint with you and get feedback? Communication is a two way street. No professional developer anymore can turn off their E-mail and phone and "turtle up" in their office, coding away in a vacuum. Only the most trivial software can be developed that way.

There are the notions of:

o clear written requirements expressing the business and high level technical needs.

o well defined acceptance test procedures to ensure that the delivered software (or hardware or whatever) meets those requirements

o thoughtful partitioning of the work between team members to minimize the needed communication and enable the team members to focus and work on their part without having a committee meeting every few minutes on every minor issue.

None of these are new practices. They, or something similar, is needed to work effectively remotely or for that matter in quiet offices with closed doors.

These are good ideals and they're hard to get right in practice. There's always a certain amount of ambiguity that arises when pen meets paper and it's ambiguity that puts any given task at risk of being done incorrectly or not at all.

A positive trait in an engineer is the ability to resolve ambiguity. That isn't to say that all ambiguity can be solved by a single engineer working in isolation, though. What you don't want is people going with their best guess in an isolated, unilateral fashion, so you need good ways of handling uncertainty when it inevitably comes up. My contention is that, according to my experience, remote work results in a "dead in the water" status more often than office work.

A few points.

I have seen remote work go very smoothly and go very badly. It depends a lot on how well specified the remote work is.

The "agile" and "issue tracker" methods currently popular do not teach good organizational and design skills needed to partition projects well for remote work. We've gone from one extreme -- rigid up front requirements and designs, the much maligned "waterfall" -- to the other extreme of disorganized, short-term chaos where the big picture is lost. Micromanagement without the big picture planning that is the proper role of project managers.

The OP is arguing for remote work versus cramped, noisy, interruption filled open offices modeled on garment industry sweat shops. Somehow most companies are doing this as if they got together in a back room somewhere and formed a cartel to impose garment industry working conditions in a bizarre attempt to magically lower costs by pretending engineers are seamstresses from poverty stricken nations making sub-minimum wages doing piece-work.

Are quiet offices either with high-walled quiet cubicles or offices with doors where engineers can concentrate and focus on difficult work but still walk over to someone and quietly discuss a pressing issue better than remote work? Probably so, but these sensible working environments seemed to have been banned by some mysterious executive decree.

These are all valid points but many organisations are not at the level of maturity where the inputs to the engineering team are of the high quality you're describing.

Additionally there's an element of negotiation or dialogue around requirements which can often lead to cheaper/quicker to market/better solutions with input from engineering.

Both of these are much easier to do in person.

> Having worked on several teams where some members were in completely different locations (and time zones), I never want to experience that again. Give me every person relevant to my work in the same physical space; I don't want to get blocked from doing my work because you've gone dark on slack.

If the office is online, going offline means leaving the office. There's a WORLD of difference between a meeting when 5 people are in an office and 5 are online, and a meeting when 10 people are all online. When everyone is online it works about as well as an in person meeting, and frequently better because conversations tend to be more direct.

That said, having no personal rapport can be a big problem on remote teams - were I to set one up there would be minimum quarterly physical meetings, with most of the purpose being to socialize and sync on new models rather than sit and do normal work.

Having 1-1 vidcalls just to "work together" has been very nice as well. Once you get out of the idea that a video call has to be a meeting I'd say you can get 95% of the way to a physical space. Does not work for every engineer however.

"I don't want to get blocked from doing my work because you've gone dark on slack."

That's poor project/task management if your whole day grinds to a halt because of a single blocker. There should always be more/other work to be done while waiting on a blocking issue to be resolved.

Many people are in situations where task stand up and tear down are the most expensive things in their universe. If something comes up after you have spent 20 to an hour standing everything up but you need someone to do one thing, context switching will be brutal. If you are in the same physical location at worst case you can go find them, or you can ask around to know when they are next available. If they are 100 miles away on slack and not responding or otherwise not being able to get a hold of them, you are blocked and now have to swap to something else.

A good deal of this comes down personalities; yours and the rest of the team. Even with tooling it can be difficult to stay connected...but for someone else it could be difficult to stay focused with the ambiance that comes with a lot of "modern" office configs.

Good points, but why not do voice (Skype) calls while working remotely?

Voice + screen sharing is about as efficient as a face-to-face conversation.

And if you need to sync your working time with other team members - how is that a problem in remote environment?

>Voice + screen sharing is about as efficient as a face-to-face conversation.

Not even close. It's doable, but not as efficient.

Agreed. I've been working remotely for 2 years now and don't think I could go back to an office. The open office floor plans are just horrendous for actually getting any work done.

The article doesn't talk about the high cost of commuting but this is the biggest factor for me. Having that extra two hours per day, and not being exhausted when I get home, has really expanded the amount of living (social, fitness, hobbies) I've been able to do and has expanded my life more than anything else. Not to mention the cost savings.

It's a lot more difficult to find remote jobs than traditional office jobs, especially ones that pay well. But the extra effort in the job search more than pays off.

Your point about being exhausted is true. I used to work remotely. During that time I did a lot of extracurricular stuff and was very active. Now I commute 80 minutes a day and have to sit in a huge cube farm. When I come home I am totally exhausted and can't do anything else. In addition the quality of work suffers. I simply can't focus with people talking around me the whole day.

How do you generally look for and find jobs?

My first remote job started as an on-site office job, and I was able to convince my boss over time to eventually go 100% remote.

My current contract is with a local company that happens to support remote work. I found this job through a recruiter. But like I said, it was a rare find. The recruiters I work with know that I'm looking for remote-only, but those positions are few and far between.

My contract is ending soon so I'll be looking at the online job boards in addition to working with recruiters; it remains to be seen how much success I'll have with that.

> The recruiters I work with know that I'm looking for remote-only, but those positions are few and far between.

The biggest problem is that many companies that refuse remote work, don't have any issues outsourcing big piles of it to the other side of the planet.

Or having several offices across the country and departments/teams split between theses offices, resulting in having just 1 or 2 department/team members in a few of the offices.

The only difference with home office and the only thing that matters to them is that there is a warder (they call him a manager).

I've worked remotely for years, I've worked in an open-office where presence was mandatory, and now I run a startup with a distributed team of engineers on several continents.

While working in a shared office has pros and cons, the benefits are huge. One of the main benefits is in how information is shared. Sharing an office, you overhear conversations, and the chances of random but important information about how things work and how people relate to each other is much higher. In addition, the bandwidth of the non-verbal and paraverbal information is much richer. People working remotely forego most of that information, and their understanding of the org and its culture is diminished.

So why do we have a distributed team? Because we hire the top contributors to our open-source project without imposing a geographic filter, and it's the best, most efficient way we've found to build a really strong engineering team. We're aware of the shortcomings of how information flows, and struggle constantly to improve how we communicate.

Left my work computer to go to my personal computer only to reply and upvote your comment. I have worked for and managed teams in both shared office and remote companies. I could hardly say what you said any better myself.

I think the nature of what companies are best fits for remote work, and how best to mitigate the loss of passive information sharing/lower bandwidth of subtle communication cues would be a great subject for a book or article.

My short version would be: it primarily solves a recruiting problem in extremely difficult to recruit for fields, takes advantage of a bit of arbitrage in some people's utility of remote work (introvert, commute, family, etc), and information needs to be overshared (more meetings than one might prefer, more documentation, more explicit processes, etc).

I feel that gigantic metropolises are not optimal environments for software engineering.

NYC, and it's helter skelter of noise and traffic and garbage and tiny living spaces, in my humble experience and opinion is not conducive to hard engineering problems.

I am probably completely wrong here and just a hopeless introvert with an axe to grind, but from my experience, working in home offices in towns like Boulder, Colorado, with a central, easily bikable office/startup HQ, would present the optimal small company setting.

A quality employee cares, they care about the problems of your company when they shower, when they sleep, when they are knowing their spouse in a biblical sense. The problems of the company they have pledged their allegiance to, like a knight in Game of Thrones pledges allegiance and service to their lord, are always on their mind.

So if you are paying for knowledge work, you would do well to dispel any notions of body/mind duality. Physical health equates to mental health, and a town like Boulder, CO is about the perfect size for optimal maintenance of a human body/mind. And there are hundreds of other communities in America with similar attributes to Boulder, CO.

And if you can take advantage of the space that your workers are already paying for in their rent or mortgages. Spaces that may have gyms and/or pools which are physically and mentally rejuvenating, well you will come out ahead.

I think the future of work will be semi-distributed, and this mad consolidation into a few coastal cities will be seen in the future as a gross inefficiency.

> NYC, and it's helter skelter of noise and traffic and garbage and tiny living spaces, in my humble experience and opinion is not conducive to hard engineering problems.

I haven't spent time in NYC, but I have spent time in a city that's about NYC density, in a neighbourhood that's about Manhatten density.

Honestly, all the above doesn't didn't me. I don't mind the constant drone of city noise. It feels natural and part of the backdrop. Conversely, I do get bothered by hearing a weed whacker on a quiet suburban sunday. The noises in low density areas feel like they "break the peace" so much more, and you can hear and take note of almost every single disturbance.

Though that was working on stuff in my own apartment, I shudder to think the kind of offices I'd have to work in. I agree it completely makes sense for more people to work at home.

> I think the future of work will be semi-distributed, and this mad consolidation into a few coastal cities will be seen in the future as a gross inefficiency.

I disagree with this prediction.

1) If given the choice, most people would prefer to walk to their day-to-day destinations rather than drive.

2) In order to create an area in which most destinations are within walking distance of the residents, a certain level of density is needed. This level of density manifests itself in "the traditional city", ranging from the relatively low traditional density San Francisco Mission district (25k ppl/sq mi) to the medium density neighborhoods in Brooklyn (for example, my neighborhood, Bedford-Stuyvesant, has a density of 57k ppl/sq mi. Williamsburg is similar) to ultra high density Manhattan areas, such as the Upper East side, which supports a population density of 120k ppl/sq mi (!!!). Older European cities are often within these density bounds.

Less density than the Mission and other forms of transportation become necessary for day-to-day tasks, and the city's face starts to resemble more driving-oriented (midwestern) cities.

3) In order to go beyond one's immediate neighborhood, quality public transit is important, as owning a car is an extreme unnecessary expense if the neighborhood is truly walkable.

4) Very few walkable metropolitan areas exist in the USA today, as transit is insufficient and neighborhoods are sparsely populated relative to a traditional city. Most that do are historic urban cores: for example, I'm writing this reply from Downtown LA, which appears visually similar to parts of Manhattan, is relatively walkable, and has decent transit options, but not nearly on the level of NYC.

5) Since so few desirable, walkable metropolitan areas exist with sufficient public transit, the ones that do featuring housing that is either extremely expensive (supply/demand) or, as mentioned, poorly maintained/insufficient. This forces the vast majority of people to live much further than walking distance from their workplaces -- often up to an hour or more away -- if they want to live in a pleasant apartment in a pleasant neighborhood within their means.

6) The result is that (due to shipping, coastal) cities predating cars are the only ones that can offer this living experience, and you will pay considerably for the privilege of walking to the bodega at 3 AM while extremely intoxicated, saying hello to the friendly person behind the counter, and buying a gatorade before you pass out in your 8'x10' bedroom.


NYC had a chance to remain at least somewhat affordable (by building transit options when acquiring right-of-way in undeveloped Long Island and Queens from the 30s thru the 60s), and Robert Moses completely blew it (because of his personal hatred of minorities and poor people). If you want to find out more about that particular topic, I suggest you read Robert Caro's book "The Power Broker".

One idea espoused in the book is that when you build mass transit before you build the community, you end up with a medium-to-high density community. When you build highways before you build the community, you end up with a low density community. These community patterns are nearly impossible to change -- this is why people complain Los Angeles builds "trains to nowhere" -- the existing communities are low density, but medium density is a prerequisite for a train line to be useful to sufficient numbers of people.

The only way to fix this in the future is to build cities with this idea in mind (or, alternatively, pray that self-driving cars fix everything). Redevelop existing areas to support new transit (an older Uber driver pointed out to me multiple new, high density developments in downtown LA, and suggested they were helping improve the area's safety and commercial diversity). Urban areas don't have to feel like NYC, but we chose a path back in the 1950s whose ultimate result was to dissolve the communities and lifestyles necessary for individual human happiness.

Looking forward, I'm seeing this "mad consolidation into a few coastal cities" become a "consolidation into a larger number of smaller cities" considerably more dense than Boulder, CO, and we will see this redevelopment of urban cores as a sign of what's to come.

Fashions and preferences come and go. And, for many people, they change based on their stage in life and changing priorities.

There are tradeoffs associated with life in, especially dense, cities. Yes, walking to restaurants/stores/etc. can be nice. So can stepping out onto a deck or patio without a lot of noise and nearby neighbors--or the ability to hop in a car and be in forests or mountains in 30 minutes.

Also, while I think that fully autonomous vehicles are further out than many people here seem to think, I have to believe that once they do eventually exist, they'll make dispersed living relatively more attractive. If you have a "personal driver" at your beck and call, I have to believe that makes being able to walk to a nearby restaurant or taking the subway to see a play less compelling as tradeoffs against more crowded/noisier/etc. housing.

> Fashions and preferences come and go. And, for many people, they change based on their stage in life and changing priorities.

I think the highway-focused building plans of the USA from the 1950s thru Now is the fad, rather than the dense city. Extremely dense cities were "fashionable" for the couple thousand years before that. You could argue this was because we didn't have sufficient transit technology, and you might be right, but it doesn't feel like a truly compelling argument against the dense city.

> So can stepping out onto a deck or patio without a lot of noise and nearby neighbors--or the ability to hop in a car and be in forests or mountains in 30 minutes.

(1) These things can certainly exist in a city if you choose a neighborhood wisely and (2) pretty much every dense city also has at least one suburb available for people who desire these things.

> If you have a "personal driver" at your beck and call, I have to believe that makes being able to walk to a nearby restaurant or taking the subway to see a play less compelling as tradeoffs against more crowded/noisier/etc. housing.

Compared to taking the subway, I agree.

Compared to walking, I agree that many would rather take a convenient, inexpensive driverless car, but a sizable amount would also rather walk, assuming the time taken to get from A to B is relatively similar regardless of mode of transportation.

Walking has a lot of benefits, but driverless cars really do throw a big "what if?" into the whole urban planning situation. I personally believe that many will want to remain in dense housing for the social/community benefits, but at the same time, we'll have to wait and see...

My main point is that Boulder gets the population density right. The town is inherently bikeable, which in my opinion is much better than a walkable town.

And that is what I think we should be developing for, bikeable densities. And the bike of tomorrow is really a light weight electric vehicle, perhaps a foldable scooter with a small Lithium ion battery pack that is charged with a solar panel.

Bicycles increase human range without excessive negative externalities.

The result is a town that has culture, and restaurants and bars and a very usable public transportation system, along with scenic beauty and ample space so that one need not live packed into a tuna can.

> The town is inherently bikeable, which in my opinion is much better than a walkable town.

It is your opinion that to get from your house to any other location, you need to use a bike, a task that many find more difficult (and dangerous) than walking in cold/rainy/snowy climates, and also results in having to pull out the bike (perhaps down some stairs) and find someplace to lock it up? That sounds like a lot of mental overhead for a brief trip to the deli.

I agree that biking is a wonderful way to get around (especially bike share, which I take advantage of regularly in Brooklyn for commuting and pleasure trips), but I also find it difficult to argue that it's inherently superior to walking in terms of community planning...

> the bike of tomorrow is really a light weight electric vehicle, perhaps a foldable scooter with a small Lithium ion battery pack that is charged with a solar panel.

This sounds pretty similar in concept to the Segway, and we all saw how well those worked. Not saying it can't work in the future, but there are certainly some challenges to solve before it can become mainstream (such as: what do you do in the rain? how do you remain charged in cloudy climates? how do they fit into existing traffic flow: with cars, or with bikes, or elsewhere? etc...)

> The result is a town that has culture, and restaurants and bars and a very usable public transportation system, along with scenic beauty and ample space so that one need not live packed into a tuna can.

You don't need Boulder-level (5k ppl/sq mi) density for this. Brooklyn or SF density will do, and will provide more reliable public transit than a bus network.

I personally find the Mission district coupled with Dolores Park and Bernal Heights to have ample space and scenic beauty for all my needs. Many cities neglect public parks, and they can make the difference between a dense but livable and a stifling neighborhood.

The US has enough empty/low-density land in it that every metropolis west of the Appalachians could be shadowed by completely new cities, with other approaches to planning and density beyond just building around the ubiquitous automobiles. Then people and businesses can just gradually move in.

This is something that China has apparently been doing for a long time, albeit with insufficient attention to quality control. They occasionally get buildings that have high-tension power lines running through the stairwells, or buildings that just suddenly fall over, and then the West points and laughs. But at least they are making gestures towards urbanizing their rural populace, and re-urbanizing their existing urbanites. As useful as planning is, at some point you have to actually start building, or you never get anything done.

But then again, looking at the sort of development effort invested in Olympic Villages, where a huge, concerted effort puts up a lot of new construction in a short amount of time, putting up whole cities at once can also turn into an embarrassing disaster rather quickly.

In the US, it just seems like city governments are holding the city infrastructure as hostage to squeeze some more ransom money out of the residents, then shooting the hostage anyway. It's very frustrating to watch in other cities, and absolutely infuriating in your own. How much would it cost, really, to abandon an old, sprawly city, and build something that starts with a bunch of solutions to well-known urban problems that can't even be implemented when there's already a city in the way?

> In the US, it just seems like city governments are holding the city infrastructure as hostage to squeeze some more ransom money out of the residents, then shooting the hostage anyway.

I don't fully understand what you're getting at here -- are you referring to Urban Renewal policies? Or utilities/real estate industry corruption...?

> How much would it cost, really, to abandon an old, sprawly city, and build something that starts with a bunch of solutions to well-known urban problems that can't even be implemented when there's already a city in the way?

It would cost A LOT, and it would be stifling to live in if it looks anything like the new Le Corbusier-inspired Chinese cities. Some climates such as San Francisco simply cannot be replicated elsewhere.

Also, it would be devastating in a spiritual sense. I know this isn't necessarily the place to discuss a more philosophical/psychological topic, but the deep sense of tradition/history rooted in place is important in creating life meaning for many, many people.

Here is an example of what I mean, amalgamated and possibly exaggerated from several things that have actually happened.

Plans to build a downtown multistory parking garage quashed by city council due to bond issue requirement. Instead, parking meters installed in business district to help manage parking shortage. Parking meter enforcement rights sold to private business for the equivalent of 2 years of parking meter revenue. Private business raises parking prices 300%, cancel free weekend parking, and ticket all violators within 5 minutes. Roads still full of potholes. Residents angrily oil their pitchforks and sharpen their torches, then storm city hall. Residents find that they cannot now build the original parking garage, because the parking meter contract forbids the city from acting as competition in the parking business. The ousted councilmen begin collecting $100k/year pensions. Municipality declares bankruptcy. Judge says that they still have to pay the pensions. Whaddya call your town? The Aristocrats!

Walking your day to day destinations, all of your destinations, is achievable in any 4000 inhabitants town, you know. You don't have to mess with calculating compared densities of big cities and deciding if you're going to invest 50 or rather 200 M$ per mile of public transit.

I agree with every word of this article and after 25yrs experience as a developer I have all similar experiences. Being a computer programmer is about the same as being a 'writer' (book author), and no one expects an author to sit with other authors in a special building to be able to write. With modern technology, and the wastefulness of time and energy spent commuting, there is just no longer any reason for a programmer to not be able to work remote. I mean even if all you are considering is gasoline use and pollution savings, even that alone is enough of a reason for society to say let developers work at home. There's just no downside to it.

I have been working at home for the past year, and I don't think there's any way i'd ever accept another non-remote job again. In any large city you're gonna be sitting in traffic a total of 10hrs a week. That's insanity. That's well over one full work day. With a web-cam you can still have face to face meetings. The only thing that I find missing occasionally is the use of a whiteboard, but that is a very minor thing. Having a whiteboard is not a good trade-off for 10hrs spent in traffic. Not even close. Of course in 10yrs VR will totally make it irrelevant where someone's physical location is, but i think even the basic webcams we have today already does as well.

Most books don't require 10-100 authors, each focusing on the paragraph that they are experts in, needing to hold the pages together with APIs that are agreed upon by all co-authors. The collaborative aspect of a software project is much greater than that of a book.

Yes, there are books that have a multiple of co-authors, but these co-authors tend to not operate lone-wolf.

I too think the book analogy is misplaced here. Books are physical products. They are written by one guy sometimes two but it's super rare. Once it's printed, it's done. Customer can't call you up and demand you rip out entire chapters or revive their favorite character which you bastardly left out.

Looking at software, it becomes very complicated when you throw multiple engineers. If it's written in a manner where people don't talk to each other for weeks and just showing up with the pieces as if building an oil tanker with prefabricated parts that are put together.

Software is much more complicated endeavour and it's fueled by the endless changes that can be made. Nothing is solid or have physical constraints that clearly limit options once the product is out the door, where as software can very easily ebb and flow with changing stakeholders and turnover.

50 shades of grey didn't have multiple authors that came before each other and a group of guys writing it together and readers demanding changes that caters to them.

There are different models for joint authorship. Some are pretty course-grained. In a lot of cases even if the writing used is pretty collaborative, one author does a final editing pass to come up with an integrated end product. From what I've seen, "collective ownership" models mirroring current fashions in software development remain relatively rare.

And while some software projects do need 100 people, most don't -- and most don't even need 10. I get the feeling that a lot of project managers don't even think about the possibility that something could be built by a focussed individual working in a low-distraction environment.

Unless you are in a paired-programming situation most coding is done by one person sitting alone. I would never accept a job doing paired-programming. I want to be alone at my keyboard working, uninterrupted, with total silence 90% of my day. My point was that authors do the same thing, by sitting alone typing 90% of the time. However I do agree 10% of the time you need to be communicating with other developers and sharing ideas, when for example a novelist wouldn't be doing that. However there is nothing about communication that requires face-to-face meetings. Actually as technology gets better and better this will become MORE true not less true in the future. However the one thing missing is a good virtual shared whiteboard, but I guess that's just because I don't have one of those stylus boards, because I think with those you can do virtual whiteboards.

Richard Hamming said [1] it best:

Another trait, it took me a while to notice. I noticed the following facts about people who work with the door open or the door closed. I notice that if you have the door to your office closed, you get more work done today and tomorrow, and you are more productive than most. But 10 years later somehow you don't know quite know what problems are worth working on; all the hard work you do is sort of tangential in importance. He who works with the door open gets all kinds of interruptions, but he also occasionally gets clues as to what the world is and what might be important. Now I cannot prove the cause and effect sequence because you might say, ``The closed door is symbolic of a closed mind.'' I don't know. But I can say there is a pretty good correlation between those who work with the doors open and those who ultimately do important things, although people who work with doors closed often work harder. Somehow they seem to work on slightly the wrong thing - not much, but enough that they miss fame.

[1] - http://www.cs.virginia.edu/~robins/YouAndYourResearch.html

This is anecdotal. It seems to me that there's a time for the door to be open and a time for the door to be closed. Having the option to either at the appropriate time makes a huge difference.

You can't keep your door open in an open office because you have no door.

Remote work optimizes for the individual employee, and often the short term gain of finding early talent before you have an established brand and network effects where talent starts gravitating towards you.

However, at the later stages of a company when you want 100+ engineers or more, it can be a major damper to organizational growth. Front line management becomes a necessity to keep teams healthy and get a consistent culture across the company. Career paths also require curation that is hard to do with people spread across offices and timezones.

So essentially what we end up with is remote work being optimized for small startups and slow growth companies. Large companies that will always waver back and forth on it, without actually figuring out how to make it work at scale. From a career stability standpoint, it's kind of a beating. Every job will seem awesome for a short period and then devolve into a shit show.

Those of you who are betting the farm on remote work should keep all this in mind. The smartest remote folks I know have realized this and just do consulting/contracting and making lifestyle choices to support this way of life.

I say this as someone who worked remote for 3 years from Texas and moved out to SF to work in a big office for a major tech company. There's huge benefits to remote work, but it's not a panacea.

Other reasons to allow or even encourage remote work:

In the US, there's a growing polarization between the coasts and middle America ("flyover country"). I, for one, don't want all the good programming jobs to be on the west coast.

Remote work, where the workers bring their own equipment and office setup, is probably better for people with disabilities. For example, an employer doesn't have to care or possibly even know that a worker is using a screen reader or other assistive technology. Assuming, of course, that all the applications one has to use on the job are accessible.

In fact, let's take it a step further, and propose remote work with strictly text-based communication. Yes, yes, we lose the nuances that are communicated through tone of voice, facial expressions, etc. But think of all the kinds of discrimination, whether overt or accidental, that disappear. Disabilities (including hearing and speech impairments), accents, race, and age are now completely irrelevant. Sounds like a big win to me.

> we lose the nuances that are communicated ... But think of all the kinds of discrimination

That reminds me communist utopia: lets make all people equal ... by making everyone poor.

That's a good point. And on further reflection, I'm not sure I'd actually want to go with what I suggested at the end. After all, I work remotely, but I've talked to my boss by phone several times just today, because it's so convenient.

At home I can control the noise & temperature of my work environment. These aren't brought up often but they're huge to my productivity. I can't work well when I'm uncomfortable. Trying to code with numb fingers or while sweating is miserable to my productivity.

My home office has a $3000 computer, $600 chair, high end keyboard and mouse, a huge 4k screen. My office temperature is at the optimal for my body and my setup is positioned according to the sun coming in the window.

At work it usually* is a $600 computer, a $60 chair, low end dirty keyboard and mouse, small low quality screen. The office is cold, I have glare in my screens... and I share a room with 60 persons.

It's hilarious how my personal setup outclass my professional one.

* I am lucky enough to have found an employer which value his employees and that's not the case right now for me.

Have you ever thought about buying your own keyboard, mouse, monitor, and chair?

I'm not going to invest money into my employer's company unless I get a return on that investment.

Edit: That's a slippery slope. What next? Buying a new microwave, new window blinds, a modern thermostat, softer toilet paper ...

If it's something that isn't standard or I know is so peculiar to me (mechanical keyboard, expensive mouse, headphones) that the company can't redistribute it when I leave, I just buy it myself and bring it in.

That slippery slope is also slippery on the other end, ok, company A bought you "xyz gamer laptop" when everyone uses MBPs or what not. 99% chance it's going to go sit in the closet for a few years after you leave until donated or sold whereas if you used the standard equipment it can be cleaned and released.

I'd rather skip the hassle and bring my own things in if it's not a change to the standards.

There's a difference between setting up your entire programmer team with Razer products and upgrading your programmer's team computers from old 2001 computer to average 2016 computers.

When it comes to the chair it's inexcusable for the company to provide equipment that will hurt the health of their employees.

You're arguing over a shitty employer vs. a good employer but my point was about wanting customized hardware/peripherals that nobody else in the company will ever use. That's not really the point that I was making.

Yes, there are shitty employers that don't care about you being comfortable or provided with the proper hardware for your job, we've all been there. I couldn't tell you the last time I started a new job and wasn't given a current generation laptop and nice monitors (not Apple quality but totally fine).

That's just poor management. I'm costing you the same money to get less work done if my laptop is slow. It doesn't benefit the business at all.

I do not remember any office where I would be sweating. It's always cold in the office for me.

I completely agree with the author's points, except for one small caveat--the overall quality of projects that one can find in remote work (at least based on my personal experience and search) is usually abysmal. At first glance, a good indicator would be the salaries that remote companies pay, and most remote companies tend to pay peanuts, using 'remote' as an excuse to underpay, and thus also signaling that they don't care to pay a premium for software engineers because their projects don't really need top talent or a lot of experience. From all this, it also follows that career development is quite stagnant at remote companies. I wish things were different, but until the Big Five start allowing and encouraging remote-only distributed work, things won't change a lot...

Remote work can be about enjoying your work (and work environment) as well as the lifestyle it provides (flexible work hours, no commute, live in the mountains/at the beach/etc). That is worth something and most remote workers who value those things gladly give up some pay and project 'quality' to have them.

I wouldn't trade my daily lunch with my wife and kids for twice the salary.

The problem is that we are talking about something like one fifth of the salary with no vacation and no benefits for remote. Also, projects boring as heck.

> I completely agree with the author's points, except for one small caveat--the overall quality of projects that one can find in remote work (at least based on my personal experience and search) is usually abysmal.

I've managed to find many good remote contracts but from local companies (which sounds funny). It's either just assumed you will work in your own space or they're happy for you to work remotely after a couple of face-to-face meetings.

Wouldn't generalize as much but point taken. Frankly,my project pays well enough and it is remote too but what really makes the pay great in my case is a no income tax state for me. Otherwise the pay would be meh if I had to shell that out.

I don't think most state income taxes are that burdensome. My state's is 3%, so on a $100,000 salary not considering any deductions, the difference would only be $3,000 between my state and a non-income tax state. If you were making $200,000, it would still only be $6,000. Neither amount is peanuts, I realize, but it's not the difference between good and meh either.

Here in NYC state income tax is ~6.65% and city is an additional ~3.648%. So about 10k on 100k or 20k on 200k.

Yep, Linux is really abysmal, isn't it? ;)

There are some outliers like Digital Ocean and Github, but these are not the common case...

Then maybe you should provide sources for these remote companies that are awful and provide proof that them being remote was the cause of that failure, not them being terrible companies in general?

Here are just some successful companies that are heavily remote-based:

Automattic (WordPress) AgileBits (1Password) Basecamp Chef Gitlab Olark Percona Plex Zapier

WordPress powers over 25% of the web, remember. They have been remote since the beginning and have hundreds of employees.

I've worked remotely for many years. There are good companies and bad, but I've never seen evidence a company failed because it was remote and you've provided no data or examples. Companies fail for a multitude of reasons, but you're essentially saying that successful remote companies are a fluke. Nonsense.

The time to travel to the office is often ignored too (it sounds lazy to even mention it because it's the norm). If you're working remotely and it takes 30 mins to get to the office, you're at an absolute minimum burning 5 hours a week going back and fourth from the office when you could be doing something else. Add in the extra time changing to and from work clothes, and having to leave the office to get food instead of eating at home and the time adds up.

If you're freelance and bill by the hour as well then those hours easily add up to an extra day a week you could be working.

I actually enjoy my commuting time. I listen to podcasts or think about what I need to do when I get to work (or home). If I'm on my bicycle, I find that my mine really wanders and I enjoy that.

Once I'm at work, I get down to it and am good for about 4 hours or so (on good days) of really good work. Spend an hour or two on email, light reading, talking to coworkers, and that's my day.

You're the only one. Commuting SUCKS!

Just haven't found good enough podcasts

Is there a podcast that will stop me wanting to vomit as the bus driver breaks hard every 10 seconds, or help me battle my way through the queue to get onto said bus?

This 100 times. I really loved remote working because of that. Though I tended to go out for every lunch, just to get out of the house.

Such a great point, and I regret not touching on this!

I work at a company which has a beautiful building, I spend the majority of time in the office which is fantastic, the social aspect plus internal networking is very good.

I work from home on average maybe 0.8 days a week, for various reasons, but I get lots of work done and am quite productive from home.

There are some things that you just can't do the same from home. You can be much more agile when working in proximity. Face to face conversations are important and effective. There is a lot of missing out if you work 100% remotely in companies that aren't 100% remote.

My workplace is 80% remote, but not in the way you might think.

Just about everyone works from home 4 days a week, and comes into the office one day.

It expands the hiring pool by a pretty significant amount, one of our devs is 2 hours away (4 hours round trip, and he still commutes less than his wife does every week), it lets us get a lot of the "face to face" benefits done in one day, and the rest of the time is remote.

We do also have a couple fully remote, and a couple "always in office".

It works out nice though as we tend to remember to include the "always remote" people on our in office day because most of us know how much it sucks getting left out.

This seems a great compromise. In my company there is a team that works similarly. They come in one day per week or one week per month.

This actually sounds workable. One other thing that is clear is that a 5-day onsite 40 hour work-week is not productive. IMO a 4-day week split between office and home would be way more productive.

I don't know where you live, but the stress of commuting alone has led me to want to get out of the business. Companies have got to smarten up! There's no earthly reason why dedicated knowledge workers need to be on some cube farm or stupid newsroom office every day. It sucks.

IMO this is a great tradeoff and in some ways an ideal work environment!

To me, that last bit is an argument for more companies being 100% remote. After all, many open-source projects have been developed by 100% distributed teams.

It's not that fair to compare the work put out by open-source project teams vs. the work put out by a company trying to make a profit. They are two much different goals, the latter of which typically has much more mobile goal posts.

And they have many people that aren't just developers who have far less flexibility in what they can actually accomplish remotely

Lone wolves can and do produce a lot of valuable output for businesses. However, on bigger teams, somebody's gotta take care of the juniors.

Junior devs, interns, even moderately experienced devs can all benefit immensely from mentoring by senior devs. Mentoring is a fuzzy thing that happens in the margins, and that's exactly the kind of thing that's hard to replicate in full-remote work.

Of course, everything in moderation. Senior devs need some time alone to churn and burn through tasks, but less experienced devs need guidance, leadership, and experienced perspective. And sometimes you need a mercenary like the author to just run solo and get it done. Different strokes for different folks.

How can anyone seriously believe, at this point, that effective mentoring or other collaborative work cannot take place over the internet with things like git, Github, Skype, Google Hangouts, Facetime, WebRTC, Slack, Screenhero, telephones, etc., etc.?

No one is saying that effective mentoring cannot take place over the internet; the statement is simply being made that it is much easier to do in person.

Less tooling may be required, less time invested, etc. to have effective mentoring happen when you are in person.

Yep, I've been 100% remote for 5 years now (wow, it feels weird to see that number!) and am never going back, for the same reasons.

The only caveat is that it's important that you work in an organization that is aligned with remote work, if not remote-first. Just scoring 'permission' to work remotely somewhere not used to it, is probably a recipe for a pretty bad time.

5 years is a long time, I'm sure you've got some great experience on the subject, would love to read more about your experiences!

I really agree with your caveat, and I've seen a number of places that have some pretty unmotivated individuals try it, and have it fail. This left a bad taste in everyones mouth, and they wrote off remote work. The reality was that they had crappy employees, and not that remote work can't work.

Just scoring 'permission' to work remotely somewhere not used to it, is probably a recipe for a pretty bad time.

Why is that?

Because the processes and mindset won't be setup for it. Decisions will get made in hallway conversations or even in meetings in which no one thought to send out a phone number for the remote employee to attend.

Hence the idea that remote working is probably most effective when companies treat it as the norm--at least on a group by group basis.


I've actually never worked at a place with a large number of devs under the same roof.

>It’s the same reason that communism does not work nearly as well as capitalism — things work best when you give people freedom as individual actors.

You said "capitalism" but you meant "liberalism," and you said "communism" when you meant "authoritarian dictatorship."

But setting aside this equally unnecessary and inaccurate argument, the whole tone of this article seems to glorify the archetype of the "110%" employee. I'm "passionate" about programming and computer science, but I also don't just want to pull up a JIRA and bang away code.

Even if we accept the author's premise that open offices and social work environments are bad for productivity (which many people here have already pushed back against), I didn't try to find a job with lots of smart people so I could only interact with them via email. Sure, an open office occasionally distracts me and gets me out of the "flow," but it's almost always to help someone or join an interesting conversation. These things are valuable to me on their own, because (1) I like interesting conversations and (2) it means I can ask someone for help whenever I need it. And that's a better long-term feeling than slamming out code every day, which, by month two or three, starts to feel a little uninspiring.

Different Strokes for different folks. My personal feeling is that a company should allow employees to do what they want. If the company has an office setting and an employee wants to do the office thing then let them. But if you have an employee who is telling you that they work better from home take them at their word and let the results the judge of whether or not they're telling the truth.

A question to all of you who only work remotely, and I'm sure it's been covered by HN so forgive me, but where do you find reliable work that's remote? I can see getting lucky maybe and scoring one maybe two gigs that allow remote but a caterer doing it? When my wife's gig is up she would love to work from home. She already works from home two days a week.

But she has no idea how to make a career out that reliably. She started out doing QA/testing, now she is all into oracle and DB2. Using oracle tools and IBM tools for managing/writing SQL for enormous databases. Government sized databases.

She is making low six figures now here in KC.

Thanks for any advice or leads on remote only work as a career!

My favorite places to look for remote tech work are

1. Remote job boards https://remoteok.io/ https://www.wfh.io/ https://weworkremotely.com/

2. Stack Overflow https://stackoverflow.com/jobs?allowsremote=true

3. Who Is Hiring? thread posted on Hacker News the first weekday of every month. https://news.ycombinator.com/submitted?id=whoishiring

I only work remotely, but it does really limit the pool of available work. Weworkremotely.com is a good resource.

Thanks for taking the time to reply both of you. I've always wondered how those of you who are able to do remote 100% of the time do it. This helps get us started. Thank you.

I have been working remotely for nearly 3 years now. It is a necessity for me, my kids are very young and some some medical issues, so there is a lot of therapy and special schools involved with 1 pm dismissal times. I love the flexibility but my wife has trouble distinguishing between work-from-home and stay-at-home-dad and that is constant struggle.

> I love the flexibility but my wife has trouble distinguishing between work-from-home and stay-at-home-dad and that is constant struggle.

Sooo hard to do. I worked remote over the summer and tried convincing my wife that yes, I am working, even though I am home and sitting down staring into a screen. Not sure she ever got it but I'm working in office now so not an issue anymore. If I were to do it again I would definitely get a small office to go to or go to a co-working space. Good luck!

Same issue here. Spouse/kids/pets who can't respect "work time" make remote work impossible. I have more distractions at home than I do in an open office at work. There's no way I can get anything meaningful done there.

I've heard people with families kids can struggle with this. The people I know who've been successful at it seem to always have some kind of office work space where they can close the door and get a bit of isolation, or, they invest in an offsite office of some kind.

This is the key - separate office. I've been working from home for 7+ years. My wife and I homeschool our 7 kids. They all know when dad is in the office, he's working and the only interruption I allow is a request for a hug. When I take breaks, we have fun, get rowdy, and help with school work and chores. But when dad's in the office, he's working (even if I'm just burning cycles on HN!)

My kids respect my workspace just fine. It's my spouse that can't or won't leave me alone when I'm working from home. If I ever wanted to go 100% remote, I would almost have to work in a completely separate building, which makes the whole thing a non-starter.

Some employers would argue that your privacy is forfeited during working hours. After all they pay you a salary, and if they want you in the office so be it - even if it is a less effective environment. Needless to say, I sympathize with the OP view here.

Employers can argue what they want, but I argue solely for myself and what I want is to not work for an employer that needs me to be in an office. So I don't.

Good point. It's often stipulated in the contract or made clear during the interview process what the expectations are, which is good. The unfortunate part is that employers may not realize that their policies are actually decreasing productivity.

Maximizing individual employee productivity may not be even in the top ten list of company priorities. For one, making sure that what the company wants to be built is actually built is massively more important. This seems to be hard for many companies.

My roommate's startup has gutted their remote team, only one guy is still there and his days are numbered. From what my roommate told me, managing remote employees can be more trouble than it's worth.

I remain unconvinced that the clamor for remote work environments is really in company's best interests. When push comes to shove, doing remote right requires an investment on the parts of both the team and the company, and if one side doesn't or cannot pull their weight, then it becomes unmanageable, bringing the company down with it.

Employees can bitch about the employers, but they're the ones paying the salaries.

It's a fact that having everyone in an office 5 days a week sadly and far too often does not result in a company getting what it wants built. The problem with that lies elsewhere, usually with management and hiring.

Great post - with a very huge caveat: being out of the office means you miss a lot of nuance that is very, very important.

There is a cultural language, and a lot of facts outside the scope of normal direction.

I've worked remotely often and this has always been a huge issue: requirements can almost never be communicated succinctly, they come in waves and indirections.

So if we can solve that one ... this makes more sense.

As for the 'open office' concept, I can't think of anything more absurd. When I visit my clients I can't get anything done.

I've been 100% remote for the last 8 years. I recently have been commuting for personal reasons and its only 30 min each way and I can already feel the drain it causes. Over a working career a normal commute(30min-1hour) each way can add up to a massive amount of lost time. Working remote is optimal for the kind of work I'm doing now. Previously I was running a larger business and we started to run into issues around 50 people on a remote team. There's advantages to both. I think the ideal environment is 4 days remote, 1 day in an office for in person meetings. To combat being out of contact with people in the business/industry, I attend as many conferences and meetups as I can.

I agree that forcing the same strict work hours (9am - 7pm) is not always effective. The author explains exactly why that doesn't work for them and why they are much less effective.

However, I've found that when people all have different hours (especially over different timezones) it's difficult for the one-off meetings when something needs to be hashed out in person or skype. I suppose this problem may actually be a side effect of our office having strict working hours so we don't know how to operate on the days when most of the office is remote and working on different hours. Companies like 37Signals have clearly figured out how to build a collaborative and productive company across multiple timezones.

For as much as people like to hate on open offices on HN, it still baffles me why there aren't more Y Combinator startups founded with remote work or private offices as core company principles.

Just a guess, but I wonder if the decision to just go with open offices has to do with the ability to scale such a plan quickly and easily, whereas scaling a remote team is too difficult or building or rearranging private offices takes too long and costs too much.

A possibly poor analogy might be the difference between going with some cloud provider which scales more quickly vs building out your own server which is more costly and possibly more difficult to maintain.

We (Cloudstitch, YC S15) are building remote work into our company DNA right from the start. It's been an educational journey, and we're stronger team because of it.

One thing we've learned is that "diversity" is so much more than just race/gender/ethnicity. Geographic location, even within the US, can be a profound contributor to the diversity of ideas, experiences, and opportunities. Makes you realize a non-remote team is living in a [geographic] bubble by definition.

If you're interested in building a better web stack / CMS that integrates with your office suite, give us a holler at hello@cloudstitch.com :-)

PS: Re open office plans in early-stage startups, I suspect cost savings are a driving factor.

I think most people running start-ups are not anywhere near as talented or insightful as they are portrayed, in fact I think some of them are super insecure and have to portray themselves as "thought leaders."

This leads to a situation where leadership can't honestly acknowledge when they've made a bad decision.

What would you guess the average years of experience are for a Y Combinator founder ? I say this not as a judgement but simply because people earlier on in their careers often need more face to face guidance to help them get to the point where they have more experience.

Where would they put the foosball tables if they rent no office?

None of the authors headings are necessary in an in-person office environment. We have both "open" areas and offices with doors. We don't enforce a specific work hours and we most definitely could care less about butts-in-seats, results are what matter. That said I just spent an hour in an office with a co-worker comparing notes on our two separate projects with similar needs and scored a sample of some nice fudge his partner made. Yesterday i spent the morning at the cafe and last week I sat at my desk and got 9hr straight coding without talking to anyone.

I am restless in bed and can’t sleep because I drank too much coffee and I’m worried about getting up early. By the end of the week I am tired, frustrated, angry, and disappointed with my performance.

The author blames this on a 9-6 schedule. But honestly I think it's way more likely a problem with drinking too much damn coffee. Everything he wrote in that part hit home, i was experiencing it very badly... until I started limiting myself to one big caffeinated drink before lunch a day. It's improved my quality of life a lot, I am tired way less.

I feel this works best for companies under 20 people (Lawn Love, MailJoy, et al.) and greater than 1000 (i.e. Google, Facebook, et al.).

The main problem I see with this article is the author is totally focused on himself. If you are a solo developer this is fine, but if you are part of a team then his attitude is detrimental.

I work as part of a team and we all work remotely most of the time, but we work the same hours because working different hours would cause problems. It's hard to conduct a daily stand up if everyone's working weird hours. We have some flexibility for people but everybody has to be around for the 9:30 stand up. This helps with coordinating of larger projects and bringing up blockers which the PO or Scrum Master can remove.

If some lone developer is working 3pm to 11pm then that person is not really coordinating with the rest of the team.

Also I'd really hate to hear what this guy thinks of pair programming.

I love the teams I work with, but that doesn't mean I want them to interrupt me all day long while I'm trying to do meaningful work.

I think it's important to be flexible with work hours, but that goes both ways. My concern is with places where strict requirements are set up for hours, and places that are not willing to be more open minded about crossover work hours. As far as I am concerned, 4 hours of overlap per day amongst the team is sufficient. If more overlap than that seems necessary, it is probably a process problem.

I love pair programming! However I cannot pair program in an open office plan with tons of noise/distractions.

Four hours of overlap CAN work but it depends on the overlap.

For example, if the rest of the team is working more "normal hours", starting before 10am and you don't start until 3pm, that means they can't have the whole team can't have a stand up meeting until 3pm when you get on. End of the day stand up meetings CAN work, but the natural flow is to start the day with it so you can talk about what you WILL be working on today and what you DID work on yesterday, rather than what you think you'll be working on tomorrow.

Also, it's hard to ensure the whole team has overlap if the times are too flexible. I have a teammate who starts at 7am, if we had another teammate who wanted to start at 4pm, they would never overlap.

There are a lot of good code review tools. If you want to do pair programming then do it async using code reviews. Doing it sync is just wasting two peoples time.

Code reviews != pair programming. Code reviews are great, but it's not remotely the same.

The article mentions that strict rules hurt good actors and help bad actors, and you should fix this by filling your organization with good actors. For very small startups this might be possible. However if you need to hire a large number of developers this becomes increasingly difficult. It is far easier to hire "bad actors". If a company finds itself in a situation where adding a bad actor will increase company revenue beyond the actors cost, it financially imperative to hire bad actors. Eventually the good to bad ratio slips in the direction of bad, and strict rules end up helping more than they hurt. Good people leave to new places, and the vicious cycle continues.

The first question I now ask recruiters when they reach out is whether or not the position is on-site or remote. Google, Microsoft, Amazon... no remote work, at least not for any of the positions they frequently contact me about.

IMO humans are just bad at communicating in a precise / efficient way. Most people I meet / work with who are not in a technical field are usually very bad at explaining their business needs in face-to-face let alone by email or over the phone, etc... And ironically isn't it usually the case that these are the people who are (a) the stakeholders, or (b) the ones writing the paychecks.

Until technical folks start taking over the world (maybe we're in the infancy stages of that?) I think most people who want to work remotely will need to expect to be in the office regularly if not every work day.

This is super important. I can sign under this text like I wrote it.

I can say that I like to see people in person and interact with them, but all the problems, not only with startups, but with office environment in general were spot on.

Everyone has something that works really well for them. It's nice to have an employer that respects that.

Personally, I find a lot of value in putting a face on everyone in my team. To me, it's a lot easier to work through a problem in person vs. over Slack or Skype.

But that's not to say I disagree with the OP. I totally value the efficiency of working in isolation if and when I'm at a point where I just need to be heads down to finish a task. At my office, we have the luxury of isolated couch rooms where it feels like working from home w/ the office and your coworkers steps away.

I have had the same issues, but you have to know when to pick up a phone.

This article summarizes everything I think about workplaces. Thanks for the write up, we need to stay vocal for people to get an understanding

I pretty much strongly agree but I will offer one defence of "work rules" that isn't completely pointy-haired.

The reality is that not everyone has the same level of productivity or commitment. With a few rules it's often possible to get more than their salary's cost out of them. Sure, we'd all like to work in an environment of nothing but awesome co-workers, but that doesn't scale. Hell, you presumably support "rules" like "we've decided that the implementation language is L" so everybody's code works together.

What is brain damaged is that some companies are too stupid or fearful to understand when the rules do and don't apply.

I've had good results with finding companies that don't force bad working conditions, and asking for an alternative to open seating when necessary. I've always been accommodated. If people aren't at least asking for flexibility, they should be.

I haven't had to sacrifice the ability to have face to face communications and relationships with my co-workers. I'm not saying these are my best friends, just that there's subtly more that comes across in person vs. remote.

I'm still trying to figure out the ideal lifestyle. When you work remotely, it gets boring after a while not being able to socialize. When you have to go to work every day, it gets tiring commuting.

I'm thinking the perfect mix is to live 1.5 hours from a big city where the jobs are. Go to the office if needed once/twice a week. Do the rest remotely, enjoy living in a house instead of a cramped appartment.

Is anyone doing this?

Having to work remotely is one of the main reasons why it's so hard for me to contributed to open source projects (i am a student btw). I guess it's not for everyone.

I need people to function, people to work with, people to talk about work, people to discuss decisions with and people to not talk to one another. It's what's motivating me, what keeps thinking for hours about problems.

Did this at a previous workplace and it seemed to work but the company culture has to be aligned as well. There is an intangible touch-feely stuff that gets lost behind the unfeeling glare of the monitor and if the rest of the company is ill-equipped to deal with that missing piece then it won’t work out.

I think a right balance between remote & on-site is a better argument. I've worked remotely for a few years and I quickly found myself very isolated and it's contributed to my social anxiety.

Remote working can be a blessing during bad weathers or you want to take a little break from commuting.

In my experience, both, an entirely distributed team and an entirely localized team do well. It becomes exponentially harder to pull it off when you have some people working in the office, and others distributed.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact