How to keep a job you don’t love

December 7, 2009 Career, Job hunting No comments

You wouldn’t think I’d be advocating hanging on to a job you don’t love, but in today’s economy it may make the most sense. In the latest issue, #6, of PragPub, the free magazine from Pragmatic Bookshelf, I talk about how to make the most of the time you’re spending in a job that you have to keep. It’s also the first in my new monthly column for the magazine.

PragPub is published every month in three different formats, so you can read in the format that works best for you. I admit, I print mine out. Sorry, trees!

Finally, from last month, there’s an article with me in the blog Interview Mantra.

How to boost your career by contributing to open source projects

August 13, 2009 Ask Andy, Career 2 comments

I’ve been hanging out at lately, after I was the guest forum contributor a few weeks ago. The Java market seems to be glutted with programmers from what I read, and there’s a lot of interest in using open source to boost one’s résumé. One poster asked for specifics of how he could use open source projects to help his career change to one of programmer. Here’s what I told him (with some minor edits):

The key to getting into open source isn’t to find a project to contribute to. What you want to do is contribute to a project you already use.

What open source projects do you take advantage of every day? I’m no Java expert, but it seems like half of what the Apache Foundation is driving these days is Java-based. Do you use Ant? Struts? Jakarta?

How about non-Java projects that you use? Do you use SpamAssassin? It’s in Perl, so would give you a reason to also learn Perl. Any Apache modules you use? You could learn some C.

How can you contribute to those projects? It doesn’t have to be just contributing code at first. Hang out on the mailing lists and provide answers. Update support wikis or contribute documentation. I know that on the Parrot project, a large amount of contributor time goes just to maintaining the tickets in the bug system. Anything you can do to pitch in, do it.

Start with joining the appropriate mailing list for the project, or monitoring forums. Hang out in appropriate IRC channels. Listen to what people are saying. Make yourself known as being someone who is willing to pitch in. And then do the work people are saying needs to be done.

Go into it with the goal of contributing to the project, and not of improving your career. When you take care of the first part, the second part will come naturally.

Good luck!

Any other suggestions? I’d like to turn this into a sort of standard page that I can point people to when this question comes up.

There is no shame in self-promotion

June 24, 2009 Career, Job hunting No comments

The phrase “shameless self-promotion” makes no sense when you’re
talking about your career.

“Shameless self-promotion” implies that there should be some sort of shame in
letting others know about what you’ve done, and nothing could be
further from the truth. Indeed, it’s the only way you can be sure
of getting the message out.

Have you ever had a garage sale? Did you put up a sign pointing
to your garage sale? Or did you hope your neighbor would put up a
sign for you, thinking “It’s a good garage sale, people will tell
their friends about it?” Of course not, because you knew that it
was important that people know about your garage sale. So too it
is with your achievements at work.

Techies seem to believe that if they do good work, they’ll be
rewarded. Unfortunately, “If you build it, they will
come,” only works in fantasy movies.

At work, your job and your career rely on the people above you in
the company knowing what you do. Part of your job as employee of
You, Inc. is to make sure that others know what you do, and how
awesome you are. Your awesomeness may not be self-evident, or may
not be understood by the people that matter. Say you’ve been using
a new editor plug-in that helps you navigate source better, and makes
your job easier. That’s a cool thing you’ve done, because there
are plenty of people out there who would write code in Notepad.
You need to let your boss know about it, and keep track of it for
yearly review time. It may well be worth putting on your resume,
too, for your future self-promotion when you go to get a new job.

Aside from your career, if you’re doing anything in open source and
you want people to use your project, promoting the project is as
important as writing solid code. Without users, your project is
pointless. If it’s a conference or meeting, that needs promotion
even more. See my post on Perlbuzz
“How to announce an event, or, awesome is not always self-evident”
for more on the open source and conference angle.

Finally, for more on keeping yourself employed and boosting your
career even in the middle of a recession, please join me and Chad
Fowler for our webcast “Radical Career Success in a Down Economy”
on July 1st. You’ll need to register in advance. Chad and I are
putting together as much as we can into our hour-long time slot.
Chad’s excellent new book, The Passionate Programmer,
is also where I stole the idea of “your awesomeness is not self-evident”,
for which I’m eternally grateful.

The best career advice my father ever gave

June 22, 2009 Career 1 comment

For Father’s Day 2009, I’d like to take you back to 1984 and how
I learned a valuable lesson in life and work from my father.

I still had shooting pain in my groin when my Dad walked in for

It was my third day working at the McDonald’s in Durango, Colorado
back in 1985. I was 17, going into college, and had just started
my first job in the real world. I’d been trained for about two
minutes total. “Here’s how you make hotcakes,” Vic showed me, and
I’d make hotcakes all morning. Then at 11:00 when lunch rush
started, I was moved to the lobby to mop and clean tables. I didn’t
even need training on that.

My most important training was the harshest kind, that mop wringers
can be dangerous. I’d put my mop in the wringer, leaned over the
bucket and pushed down hard on the handle. My wet hand slid off
the spring-loaded handle, leaving it to arc up and whack me right
where it counted.

I was not having a good day.

A few minutes later, my father walked in for lunch. After a while
my mopping duties took me past his table. “How’s it going?” he
asked me.

My frustration came out. All the barked orders, being treated like
a peon, my scratchy polyester uniform, and to top it off I just got
cracked in the family jewels because the wringer handle was wet!
It was just too much!

I looked at him, tears welling in my eyes, and as emphatically and
dramatically as I could, I sniffled “They don’t pay me enough to
take this shit!”

Dad chuckled. “Yes, they do,” he said, “they’re paying you minimum

It wasn’t I wanted to hear. He might have said something else more
concillatory and sympathetic. But later that day, as I slopped
away with that mop, I thought about what he’d said. He was right.
It was silly of me to think that I would have a life of luxury,
only doing fun tasks, on my third day of work at a fast food joint.

It’s like that in the technical fields, in our cushy white-collar
worlds. The first year I was a professional programmer, I spent
hours separating the carbon paper and tractor feeds from thousand-page
reports on 5-part fanfold paper. It wasn’t programming, but it was
part of the job. As I got better as a programmer, my value as a
programmer increased, and my boss assigned me report duty less and

I never thought that it was beneath me, either. I knew that different
jobs had to be done, and that’s part of working on a team. My
patience and learning paid off down the road.

Lessons for the working geek

  • Everybody has to start somewhere, but it’s never at the top.

  • No task at your job is beneath you. If you have to string cable, you string cable.

  • Wisdom can come from anywhere. Sometimes that might even be a parent or boss, surprising as that may sound.

  • Stand on the side of the bucket opposite the wringer.

What low points did you have at the start of your geek career? What
important work life lessons has your father taught you? Post them
in comments below.

“Radical Career Success in a Down Economy”: A free webcast on July 1st

June 21, 2009 Career No comments

On Wednesday, July 1st, at noon Central time, I’ll be giving a webcast presentation with Chad Fowler called “Radical Career Success in a Down Economy.” We’ll be discussing how to thrive at work and further your career, rather than worrying about losing your job.

From the webcast announcement:

We all know we’re in the middle of an economic downturn. The news is full of statistics on job loss and unemployment. Everyone is feeling the crunch. In times like this it’s natural to worry about your career.

But you don’t have to be afraid. With the right steps, it’s possible to not only succeed in this environment but to succeed radically, as well as be prepared if the axe should fall. This webcast is about how to set yourself up for now and the future.

Career experts and authors Andy Lester and Chad Fowler will walk you through strategies for preparing yourself to not only stay employed but to find the work you love.

A webcast is an online presentation, where slides are shown and Chad & I give the audio presentation. A chat window lets you ask us questions, as well as discuss topics with other webcast participants.
The webcast is free, but you must register in advance. Register now to make sure you don’t forget, and O’Reilly will email you a few hours in advance of the event.

How does a contractor make his resume appealing to a hiring manager?

May 12, 2009 Ask Andy, Career, Job hunting, Resumes No comments ,

A reader of Land The Tech Job You Love wrote to ask:

I have been searching for this type of book for years now. One question, as I’m only on page 75: How does a contractor make his resume appealing to a hiring manager?
I do NOT want to contract, but in DC, it seems to be the only way to either get a job or get a foot-hold into a long-term opportunity. But I hear from so many hiring types that they hate “job hoppers”. But I’m not. I want and crave a long-term full-time position.
How do I address that?

Exactly how you just did it.

Put it in your cover letter. “I’ve been a contractor out of necessity for the last two years, but I want a long-term full-time position where I can set down some roots with the company. I think that WangoTech can benefit in the long-term from my skills as a …”

You can also try to turn this potential negative into a positive. “I’ve worked on a wide variety of database systems, including Oracle, PostgreSQL and DB2, for companies from a 10-person accounting firm to a Fortune 100 textile manufacturer.” You’ll show the breadth of knowledge you bring to the position.

If you’re concerned about the resume not being seen along with the cover letter, I’d suggest adding a final bullet point to the professional summary at the top of the resume, such as:

<blockquote* Experienced contractor looking to start a long-term full-time position in DC area

In some ways, it’s the dreaded Objective, which should never appear in your resume but I think that if you put it as the last bullet in the summary, you’ll put the reader’s mind at ease, before she gets to the work history that shows you’re a contractor.

I saw a comedian once explain that if there’s anything out of the ordinary with you (very tall or short, a speech impediment, etc), you call attention to it at the beginning of your routine. If you don’t, your audience will fixate on that aspect of you and not listen to what you’re saying. Just do half a minute to acknowledge the attention-grabber, and move on. That’s the approach I suggest you take in this case.

Sometimes when we write resumes, we’re so concerned with short sentences and bullets, we forget about the power of a cover letter. In this case, the cover letter shows that you’re interested in that specific company, because your cover letter discusses the very specific relationship with the company you’d like to have, and heads off a potential problem. That shows foresight and it shows that you’re thinking like the hiring manager.

On breadth vs. depth of technical knowledge

May 10, 2009 Career 4 comments

Friday’s posting about balancing the value of learning specific technologies and following technologies you enjoy got Jeffrey Thalhammer thinking about depth vs. breadth of knowledge.

Whenever my colleagues and I discuss our career plans and the job
market, someone always asks me whether to learn programming language
X, or operating system Y, or framework Z. But I like to point out
that time spent learning some new skill is also time not spent
honing the skills you already have. And in my opinion, it is both
more lucrative and more enjoyable to be a master of one craft, than
to be mediocre at several of them.

This is because I’ve noticed that those who are the best in their
chosen fields are always fully employed and highly compensated.
Especially during an economic downturn, employers become more
selective about who they hire. So when they go looking for a
candidate with a particular set of skills, they want to choose the
person who is strongest with those skills — not the person who has
the most different skills. And employers are usually willing to
pay a premium for top-notch talent, if they can find it.

I’ve been on the hiring side of the interview table enough times
to know this. When a job candidate shows me they have mastered one
technology, it also demonstrates to me that they have the potential
to master others. But having partial expertise in many technologies
may only prove that they own a lot of O’Reilly books.
Truly mastering any technology requires a great deal of patience
and dedication, and those traits are far more valuable to the team
than being able to write code in 16 different languages.

Having said all that, I do acknowledge there is a real tradeoff
between the depth and breadth of one’s technical skills. Not all
job candidates are created equal, and it just isn’t possible for
everyone to be the “best” in something. I’m sure there is a
sweet spot where you can optimize your employability, and this
doesn’t mean that you should completely ignore other technologies.
The industry is constantly evolving so you must stay up-to-date,
and learning a little bit about other technologies can give you a
fantastic new perspective on the those you already know well. And
of course, this all assumes that you actually enjoy the technologies
you’re working with. If you don’t enjoy them, then by all means,
go learn some new skills.

But if you do enjoy the technologies you work with, then I urge you
to consider mastering those technologies before going off to learn
some new bag-of-tricks. To be sure, the road to mastery is long
and difficult. It is fraught with frustration and can be boring
at times. But it is also challenging, exciting, and deeply rewarding.
In the end, I believe it will lead you to a much happier and more
prosperous career.

I’d rather be the first-pick candidate for just one position than
the second-pick for several.

Jeff Thalhammer has been specializing in Perl software
development for over 10 years. He is the senior engineer and chief
janitor at Imaginative Software Systems, a small software consultancy
based in San Francisco. Jeff is also the creator of Perl-Critic,
the leading static analysis tool for Perl.

Do I need to learn Microsoft technologies?

May 8, 2009 Ask Andy, Career, Programming 17 comments

In a thread on Stack Overflow, a reader named Andrew finishing his undergrad degree asked:

I notice that the vast majority of companies I’m looking at are strictly Microsoft users, from windows to visual studio. Am I going to be at a disadvantage as most of my experience is unix/linux
development based?

My response included:

Whether or not “most jobs” are using MS technologies, would you WANT to work with MS technologies? If you went and boned up on your .NET and Visual C++ and had to use Windows all day, would that be the kind of job you wanted? If not, then it doesn’t matter if that’s what “most jobs” call for, because those aren’t the jobs for you.

I was taken to task by a reader named Ben Collins (not Ben Collins-Sussman of Google) who said:

I think this is stupendously bad advice. Of course you should bone up on Microsoft technologies. The chances of you making it through a 40-year career in technology without having to work with MS stuff is slim to none.

Ben’s right, you’re likely to have to use Microsoft technologies, if that’s how you want your career to take you. What I think we’re seeing here is the difference in viewpoints between someone like Ben who seems to think primarily in terms of maximum salary and maximum employability, and someone who thinks about the importance of loving what it is that you do for a job.
There’s nothing wrong with wanting to be employable. Nobody who knows Visual Studio or Java is going to have too much of a hard time finding jobs that need those skills. Then again, I flipped burgers at McDonald’s for three years, and McDonald’s is always looking for people, so I’m pretty employable there, too.
To those of us who look at our jobs as more than just a way to make money, it makes little sense to ask about what “most companies” do. We’re more concerned with the joy of working in our chosen part of the tech industry. I’d learn Visual C++ and try to find some joy in working in Windows if it was the only way to support my family, but that’s not the case.
To the fresh college graduates out there, I ask you to not put yourself in the situation where you’re concerned with what is going to give you the maximum salary, or the maximum number of potential job openings. Instead, look at what you want to do, what sparks the excitement in your heart. Optimize for the maximum amount of love for your job, especially as you’re just starting out.
For those grizzled veterans out there who slog through the trenches, working on projects that don’t bring them joy, I ask you to reconsider your career choices. Imagine you’re fresh out of school. What would you love to be doing? Figure out what that is, and work toward it, if only in small steps.
You spend more waking hours on your job than with your spouse. Optimize your career to bring you as much happiness as possible. Life is too short to work in a job you don’t love.