What you just described is why it’s so important to have daily standups and an assumption that when people on a team finish a story they will pair with somebody who has not. It has to be a standard mode of operation because there are so many people who are too proud to ask for help or think it will make them look bad. Sometimes, you just need another set of eyes.
The perks of pairing are regularly unsticking stuck people, getting another set of eyes on a problem, learning from each others development habits as a side effect of doing your job. People tend to really overthink what is involved in pairing, turning it into some rigidly drilled type of exercise.
All that is needed to get most of the benefits is to fire up a screen share and verbally communicate while the main developer keeps working. Everything else falls into place. Even if it's just for a couple of hours here and there rather than "finish this entire story with this person" it's beneficial.
When people get stuck on something, it can become harder for them to focus. They'll start looking for alternatives like opening HN or Facebook, reading an article, etc. For a lot of people trying to prove themselves, asking for help isn't going to happen until it's too late and that makes it easy for people to work in their own little bubble.
If it's considered an interruption for you to screen share while the person continues to code, you're doing pairing wrong.
If pairing periodically is enough of a burden on you that it would cause you to interview elsewhere, it really seems like you're overthinking the impact.
These are the questions that periodic pairing answers with the lowest possible negative impact to members time.
Now, if you get into an environment that is 100% pairing all the time, or two people at the keyboard taking turns with an egg timer, etc...that can be a huge pain and I'd totally understand not wanting any part of it.
Watching somebody code while you drink a cup of coffee at your desk and offering the occasional "you know, if you do such-n-such it will be a little cleaner" or "I think there's a function that already does what you're writing"...is pretty low-impact.
EDIT: I read through your comment history and see that you were with Pivotal. IIRC they are a pairing all the time shop (I seem to remember seeing a presentation at some point). I can completely understand how that would suck.
I had this issue as well, but managed to solve it by renting an office with a few of my remote working friends. This resulted in best-of-both-worlds: I could still go to the office to work with tech people (and grab coffee, lunch) while noone really cared if I came in. Also the city I was living in was decently small which meant 15 min "commute" with bike if I wished.
> if you are struggling for 3 days x 10 hours per day to fix a bug, chances are high that nobody will realize this
That's on you. You need to seek out help no matter what environment you work in. You should never struggle on something for more than an hour or two. Seek help early instead of wasting time.
> You're constantly alone.
The author described the way they tackled this. You can also join a coworking space or rent a shared office.
> There is no separation between private and professional life, unless you have an office space
Also an advantage of working at a coworking space.
> You need to be everything.
Only at very small companies. In that situation it'd be the same problem if you were working at an office. Larger companies should have a proper management structure and good management of remote workers.
That's typically what can do bad remote managers. Don't ask any question, don't know details but already judged the situation. :-)
Can you expand on this? I do not work remotely right now but as programmers, we're problem solvers. Often times I leave the office after 8 hours but the problem I was solving is still in my head through the night. However, I do not open work stuff over the weekend or in the evening unless there's an emergency. Do you find yourself doing work stuff after your working time or just thinking about it? Also, do you have a work computer and a personal computer, or both in one? Back when I first joined my company was cheap and I used my personal laptop for work, and it made it hard to ignore work stuff when I wasn't in the office.
If I worked remote I'd do that I do now - request a work only laptop.
Answering emails, reviewing docs, project management drudgery at all hours is oppressive.
The asynchronous nature of the medium you think is understood but it is not always at all times.
I had to change my thinking that my inbox is always zero priority. I choose what to focus on. In the evenings I only do email if that is what I want to do.
Not always possible if there is someone elses anxiety to deal with. I was motivated to help because it was a rare human connection that I didn't want to strain. But I eventually learnt expectation setting is a key skill to master.
While I was working from home, just seeing this desk / chair make me think of job. The temptation to look on mails / slack outside of your working hour is also much higher.
That's all very well when you own your mode of transportation. When I was working and decided to work from home, I was limited to a train that ran every hour, taking an hour to get to the destination. Many times I was either in a shoddy train (A cost savings measure by arriva) with nobody, or (more often) I was packed like tuna with a bunch of other people who also used it to go to work. If I missed that train, I would then have to wait another hour, usually in the cold and wet, being totally unproductive. It was an hour's walk to this train station as well, making it irritating when you add on the usual time cost of preparing to Enter The World. To add to this, people from my area tend to talk very loudly. I would often find myself either deafening myself to avoid listening to them, or being completely and utterly distracted and unable to focus for much of the journey (I used to attempt to read).
When I switched to working from home, I no longer had those concerns, which allowed me to dedicate more time to my job. Of course it lacked the usual work/life separation, but there are other ways to enforce that. A shower, or going out for a short walk often works. Putting on a short episode of a favored show is another.
It's interesting to me that you didn't have those! Is that because you were working for small startups? I work for a pretty large company, so I have a manager, HR, a legal team, and IT support. I can't go see the IT folks in person obviously, but they have occasionally mailed me things I need. I talk to my direct manager 1:1 once a week, and he also works remotely. I definitely feel like I'm part of a larger team / company of people who can help me and not like I'm just off working on my own without any support.
I edited the post to add a section about "But if you are struggling for 3 days x 10 hours per day to fix a bug, chances are high that nobody will realize this." (that hasn't been my experience so I wanted to talk about how I approach spending a long time stuck on something)
- Unexpected physical 1-1 with an HR in a meeting room about your problems.
- Cleaning and organization of your working space. Even if this represents only 10 minutes a day this can represent half a day at the end of the month...
- And more generally everything that goes through email / chat / calls tend to take more time than if you just go to see the person and ask.
The fact though is that remote working will work for some people but will completely fail with others.
1: https://www.glassdoor.com/Overview/Working-at-GitLab-EI_IE12...
I'm in this situation, and it really does feel like an in-house job. It's not as "free" as people would think it is, because while I can technically work from anywhere, I have a very comfortable setup at home (multiple screens), and I don't really like to leave it. I still do it from time to time, and it's pretty handy.
One thing everyone talks about when talking about remote work is loneliness, but I think it doesn't always apply. If you have a family and / or volunteer somewhere at least weekly, it's very easy to avoid feeling lonely.
This is possibly the biggest (theoretical) feature for me. I want to be judged in results produced, not work done. In practice, even remote-friendly places seem to want (at least) daily check ins, and a lot of visibility about how people are working, not just what they manage to build.
Biggest issues were :
- Nobody sees how much you are invested into your day to day work. They just see bunch of commits / builds and the little gray or green presence indicator on your messenger app. But if you are struggling for 3 days x 10 hours per day to fix a bug, chances are high that nobody will realize this.
- You're constantly alone. Even if nowadays we have great communications tools, the reality is that you'll spend 95% of your time alone in front of a computer in an empty apartment. I am excluding working from coffee shops because of the noise and bad setup (chair/table), this can only work once in a while.
- There is no separation between private and professional life, unless you have an office space and you dedicate yourself to go there on a daily basis (which is at the end equivalent of having an in-house job...). Being in the same place where you live and work makes it very challenging to not think of job in your private time or vice-versa. I also have to be honest and tell you that temptation of using your working time to do private things are much higher when you are at home.
- You need to be everything. In regular companies, you usually have direct manager, human resources, office manager, cleaning personnel, legal department, IT support, etc... When you are alone at home you need to do everything by yourself, organizing/cleaning your space, negotiating your vacations, dealing with your personal issues, etc...
So now, let's analyze the most common issues of working in an office is... ... The time lost in transportation.
Right now in my new office job, I am spending around 1h30 everyday to get ready and to travel back and forward to the office. At first I started to see that at pure waste. But actually this is not that bad. The days weather is good, I am biking to work and also doing sport, days weather is bad, I drive listening to music and relaxing.
With the biggest advantage of not thinking of job as soon as I leave office, I will definitely never go back to remote work!