I originally posted this on my blog a little under two years ago. If it's interesting to you, I post new content on daedtech.com roughly weekly.
It's been a while since my last reader question post. It's hard to feel too bad, though. I was combining a cross-country relocation with a two week vacation. So I suppose the internet just had to do without my wisdom for a few weeks.
But I'm back in the saddle, so that changes today.
For this week's reader question post, recall a post I wrote about how to find remote programming jobs (and why you should find them). Anyone who follows my digest posts knows that I'm location independent and nomadic.
Naturally, this means that I work remotely.
I've actually worked either partially or completely remotely for years, since before I ever started to vagabond. And the longer I do it, the more I advocate for it.
Companies love to mass the troops inside of four walls for the kind of camaraderie and collaboration you just can't achieve remotely. And, while I understand the draw from a management perspective, from a quality of life perspective, I find life too short for commutes, khakis and birthday cake in the break room.
Remote Work for When the Office is Actually Torture
But what about a different situation? I've gradually evolved to remote work because I prefer it. In contrast, today's reader question concerns someone for whom going into the office is actual, acute torture rather than the vague, existential angst embodied by Peter Gibbons.
Here's the question:
I was reading your article about finding a remote programming job, and I was wondering if you have any advice for someone who has very bad social anxiety, to the point where they have not been able to get any type of programming job, outside of an internship for school. I'm asking for my brother, who has a degree in computer science and is incredibly smart and gifted.
He just has an extremely hard time forcing himself to interact with people. He's really interested in finding a remote programming job, but doesn't know where to start. If you have any suggestions for him I would really appreciate it!
The One-Two Punch of Social Torture and the Entry Level
Looking at this question, the social anxiety element certainly pops out at you. I mean, after all, it's the meat of the question. But it's not the only challenge here.
We're also talking about someone without significant previous work experience to draw on.
I've spoken to challenges at the entry level before, in a post about finding an entry level job without a degree. The person in question has a degree here, which is certainly a help.
But the desire for a specifically remote position mitigates that. The corporate world doesn't trust entry level people to work "unsupervised."
Now, one quick note here. As someone who is an introvert and has embraced that, what I'm not going to do is offer any advice about dealing with or "conquering" the social anxiety.
That's really not my forte and, even if it were, I see nothing wrong with a quiet, introspective life.
Look for Remote Jobs, But Don't Expect Much
So, without further ado, let's get to the advice. And I'm going to make this pretty tactical stuff.
As I mentioned in my post about finding remote programming jobs, there are sites and resources that index such positions. They're out there, and you can find listings for them.
But as I mentioned earlier, you're probably not going to have a lot of luck at the entry level.
So, by all means, look for these jobs. See if you're qualified and apply when you are. But don't make this the entirety of your search, or you'll probably be searching a long time.
Accept that you're probably going to have a look for and accept a job that isn't entirely remote -- at least not initially. But not all non-remote jobs are equally excruciating for those who want to minimize social interaction. And some non-remote jobs are more likely to become remote jobs than others.
Avoid Listings that Talk about Agile or Open Office Plans
When you start looking for jobs, certain keywords in the listings will serve as cues. If a company talks, for instance, about its highly collaborative culture or about endless group outings, it's probably not for you.
But there are a few other important keywords that are code for things you want to avoid. In this case, I'll pick specifically on companies that bill themselves as agile, or that talk about have open office plans.
This is basically code for extrovert-specific culture.
I'm sure some people will offer objections, but most of the constructs of agile software development are highly collaborative and exhausting for someone that would prefer solitude. Don't get me wrong -- these cultures deliver software effectively. But if you're not an extrovert, you'll find it something between tiring and nightmarish.
As for open office plan?
If you don't know what that is, imagine working in a busy Starbucks, but where the other patrons often want to directly talk to you about anything ranging from your work to the weather. Steer clear if you have social anxiety. Steer very, very clear.
Instead, Look for Small Companies with Little or No Existing IT Staff
Social anxiety sufferers will want to avoid a lot of different types of gigs. But let's talk about the ones that you might want to look for.
Specifically, look for really small companies that are looking to hire their first software developer. Note that I'm not talking about startups here, where they'll add you as the first engineer and then, after a round of funding, hire like 12 more.
I'm talking instead about a small company without an intense growth trajectory. Most likely, this isn't a company that makes software -- you'll be doing something like customizing their website or taking over some internal database thing that an app dev shop built for the company years ago.
Why this? Well, three main reasons:
- Your interactions with others are more likely to be relatively minimal, since nobody is really going to speak your language, so to speak.
- Because you're more likely to be left to your own devices, it should be pretty easy to make the case for working from home once you're established.
- It's probably hard for them to hire and retain software folks, so you'll have a good bit of leverage for negotiating an environment that's suitable for you.
The idea here is to look for opportunities that are generally less collaborative, with your coworkers going about their business and leaving you to do the same. And a company where you're the only one doing what you do is perfect for that.
You Could Always Wait it Out, But I Wouldn't
Of course, you could say "I obviously don't want to work in a busy Starbucks-like environment, but I also don't want to work in a quieter office setting. I think I'll just wait it out for my remote job."
Certainly, that's an option. But I'd argue that it's not a great one.
As I've said, these opportunities are going to be hard to score when you find them. And, even in a time when we have the technology to make it easily possible, there still aren't that many such opportunities. Humans are, at the mean, social creatures.
So if you wait it out, you're going to have a longer and longer gap on your resume that will get harder and harder to explain. Sure, you can mitigate this by building an app, contributing to open source, or trying to start some kind of venture.
But it's still tough sledding.
I would definitely recommend a combination of seeing if you can, indeed, score a remote job, and trying to work at a traditional company where the environment is minimally bad for you, and where you might be able to convert to remote.
Understand that Your Goal is to Work for Yourself
I'll close with a longer-looking piece of advice. As you navigate your near-term future, understand that eventually you want to work for yourself.
If you establish your own business or practice, you obviously determine your own working situation and interaction models. And, since you're a professional lone wolf, it'll obviously not involve collaboration in terms of delivery on your side.
But, once you're established, you'll also dictate how the customer interactions will go.
Let's say, for instance, that you establish a niche practice converting old, corporate MS Access databases to modern, web-based database applications. On your website, you can explain that you do this, and also how you do this. "Send me your database via this Dropbox link, and 2 weeks later, I give you back your new application."
Your prospective customers can then take it or leave it.
It's surprisingly hard to establish yourself as a minimal-interaction programmer, given the profession's reputation for attracting loners. But with a bit of short-term selectivity and a long-term plan, you should be able to create the sort of work arrangement you like.
If you'd like to ask a reader question, you can do so at the "ask me" page.