Archive for the ‘Career’ Category

Clarify user expectations to the minute to eliminate frustration and extra work

February 9, 2012

Vague timeframes like “ASAP” or “in a few days” are a sure way to get sorrow into your work day.  You’ll likely spend too much effort getting something earlier than the customer wanted, or later than he expected, leaving him frustrated.

Consider this simple request: “Can you get me the number of widgets we sold in 2011 ASAP?”  What exactly does “ASAP” mean?  Always ask for clarification.  “When exactly do you need this?  In ten minutes?”  You might get an answer of “Within half an hour. Jim has a conference call to London at 11:00.”  Or you might get an answer like “Oh, no, by the end of Tuesday is fine.”

This is also the same approach to take when someone asks “How long will it take for you to do X?”  She doesn’t really want to know how long it will take, but rather if you can do it in the timeframe she wants.  Therefore, don’t answer the question, but instead find out what the user actually wants by asking “When do you want it by?”

Make sure you always get time requirements down to the minute, not the day.  For instance, if a user says “Can you email me those numbers by Wednesday?” when exactly does that mean?  You might take that to mean “some time on Wednesday”, but she might mean “Wednesday at 8am because that’s when I come in and will want to incorporate them into a report.”  When 8am comes and no numbers are in her mailbox, you look like a chump.  If it’s the other way around and you get her numbers sooner than necessary, you’ve prioritized her work higher than other tasks that need to get done first.

There are all sorts of vague terms to clarify.  “End of business” usually means “I really want it the following morning”, and “by lunchtime” probably means “when I get back from lunch”.  In all cases, clarify to eliminate misunderstanding.

Finally, close the conversation by reiterating your commitment and include your understanding of the time frame.  “I’ll email you an Excel document with those numbers by 4pm tomorrow.”  This makes everything clear and gives one more chance for potential misunderstandings to be made explicit.

How can I help my 50ish sysadmin brother find a job?

November 9, 2011

A reader wrote me yesterday:

I just finished your great book Land the Tech Job You Love. I wish I’d had this to refer to when I was job searching over the years. This afternoon I’m going to give my highlighted copy to my brother who is currently in his 4th year of his search for a UNIX Sys Admin job.

My brother’s situation is the reason behind this email. He has 14 years of programming experience (at [big technical company]) and 14 years of UNIX Sys Admin experience (mostly at [company] but the latest 4 years were various short term contract positions). We’re in [big tech city] so there are jobs available. He seems to be able to get phone screens and some interviews but hasn’t been able to land a job. The brutal fact is that he is not very verbal and doesn’t interview well. I also suspect his Sys Admin experience lacks some breadth. It doesn’t help his cause that, even though the subject is taboo, he is in his early 50s (see: The graying of the long-term unemployed).

I would appreciate any thoughts you might have specific to my brother’s situation.

You say he doesn’t interview well, and his experience lacks breadth. Sounds like you have the two things to fix right there! 🙂

As far as his lack of experience, I’d do as much on my own as possible. I don’t know what he has NOT done, but I’m guessing you have some ideas. What do employers in the area want that he’s lacking. Do people want him to know LDAP? Set up an LDAP server on your home box. Does he not know enough languages, or maybe the last “new” language he learned as C++? Get a copy of a book on Ruby or Perl or Erlang and start writing some apps. Set up Ruby and Rails on a local server and start learning. Pragmatic has many introductory Ruby titles.

The perception of “This guy is too old” is, I suspect, a vicious cycle. They see him as “an old guy”, and then it turns out he knows old skills, which reinforces the “old” part. So he’s got to know new skills even more than a kid fresh out of school.

As to interviewing well, I can only suggest practice practice practice, and help him identify the areas that he’s weak. Again, I get the feeling you have an idea what these are. Does he not answer questions with enough detail? Then help him practice giving longer answers that focus on business. Or is it just that he doesn’t keep good eye contact or speak clearly? Again, practice is key. Maybe you could record a mock interview, with you as the interviewer. Afterward, the two of you can identify and discuss where he can improve. I’ve also heard wonderful things about Toastmasters for helping people get better at speaking with others.

Let me know how it goes!

Readers, have you had to deal with the perils of job hunting in tech later in your career? How did you handle it? Please let me (and the rest of us) know in the comments.

“The only way to do great work is to love what you do.”

October 6, 2011

As most everyone who knows me knows, I wrote a book called Land the Tech Job You Love. The word “love” is in the title very specifically. As I discussed with my editors at Pragmatic what we’d title the book, the one point on which I was adamant was that “love” had to be in the title. I didn’t want you to find a job you liked, or tolerated, but one that you loved. I wanted “job you love” to be a constant reminder to the reader.

Every so often, either in person or in an online forum, someone will make a snarky comment along the lines of “Work sucks, work is supposed to suck, why fool yourself into thinking that you’ll ever enjoy going to work in the morning?” I always answer yes, I do believe that it’s possible to get a job you love, and if you’re not in one now, then you can find the next one that you do love, or you can work to make your current job into one you love.

And if you don’t believe me, perhaps you’ll believe our dearly departed Steve Jobs, from his
commencement address to Stanford in 2005:

You’ve got to find what you love. And that is as true for your work as it is for your lovers. Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do.

If you haven’t found it yet, keep looking. And don’t settle. As with all matters of the heart, you’ll know when you find it. And, like any great relationship, it just gets better and better as the years roll on. So keep looking. Don’t settle.

The other drum that I keep beating is “Life is too short to spend in a crappy job.” Steve agrees.

For the past 33 years, I have looked in the mirror every morning and asked myself: “If today were the last day of my life, would I want to do what I am about to do today?” And whenever the answer has been “No” for too many days in a row, I know I need to change something.

Please, if you’re in a job you don’t like, change it. Change the job, or change jobs. If you’re stuck in the job because of the crappy job market, then at least make a little change in that direction. Start a side project that scratches an itch. Release it to the world. Do something awesome and spread it around.

As Steve said, quoted here: “Being the richest man in the cemetery doesn’t matter to me. Going to bed at night saying we’ve done something wonderful… that’s what matters to me.”

Thanks for everything, Steve.

Trying to get your boss fired means you’re looking at the wrong problem

September 30, 2011

I found a thread a few days ago where someone asked “I want to get my boss fired, because he’s incompetent and is ruining the department, so how can I do this?” This idea is broken at many levels, and the stuff of delusional daydreams.

If you’re ever in a situation like this, stop and take a breath and consider a few facts.

First and foremost, you’re not a superhero, and you’re not smarter than everyone else. It is not your job to come in and single-handedly save the IT department from ruin. That level of hubris is self-delusional and dangerous to your career. And if you ARE smarter than everyone else in the company, then you’re in the wrong company.

Second, you can’t “get your boss fired” by yourself. If you imagine that you can walk into your grandboss’s office with a list of the boss’s stupid moves, you’re fooling yourself. That’s not how things work. Do you think your grandboss is going to look at your well-documented list of the boss’s sins, say “Thank you, Johnson” and then can the boss? That’s fantasy. What’s more likely to happen is that you’ll get fired for insubordination. At the very least, you’ll piss off your boss because he’ll find out about it.

Note that I’m not talking about times when the boss is doing something illegal or unethical. In times like that, it’s your responsibility to take these issues up with upper management. I’m talking about when the boss makes bad decisions (or more likely, decisions you don’t agree with and have dubbed “bad”), or is a jerk, or is just somehow a bad boss.

Finally, what do you think is going to happen when you “get the boss fired”? Do you imagine that a better boss will be hired in his place? Why do think that upper management will get it right the second time? They screwed up once, and they’re not fixing the problem, so what will change the second time around?

Realistically, when you’re in a situation like this, one of two things will happen. Either upper management is aware of what a loser your boss is and he’ll be gone soon enough, or they can’t tell he’s ineffective, and no amount of your documentation of his bad decisions is going to change that.

So the question is, which situation are you in? Do you trust upper management to take care of things and get rid of your bad boss? If so, sit tight and do your job. And if you think upper management is as dumb as your boss himself, then you are in a crappy company and need to get out.

The bad boss is not the problem. The company that allows him to be a bad boss is the problem.

What I learned hanging out at the vascular surgery conference

September 26, 2011

I spent a couple of days this month at Postgres Open in Chicago.  It was a fantastic conference with a ton of good technical information. (Here are my notes from the Postgres Open sessions). However, my favorite part, by far, was going to check out the vascular surgery conference at the other end of the hotel.

I’ve always enjoyed peeking into other subcultures.  I’ll devour any trade magazine I can get my hands on. If you’ve never read Pit & Quarry Magazine, you probably never considered the importance of maintenance of the belt system on your aggregate conveyor. For all the differences between programming and, say, running a brake and alignment shop, the core business principles are still there.  Everyone still wants to do a good quality job, do it cheaper, do it better, and without going crazy from unreasonable demands from customers or the bosses above. The wisdom of other groups can lead to insight to help our own.

I’d seen the signs for the conference in the hotel earlier that day, so I moseyed down to see what was going on. Inside a room full of exhibits, the vascular surgery community was having its opening get-together. I didn’t see anyone checking badges at the door, which was good because I sure didn’t have one.  I figured they would probably ask me to leave, since I was so out of place, the only one without a suit, but no harm could come from trying, so in I went.

The first difference in parties thrown by medical companies vs. open source database consultants is just how much money the medical guys have.  There was an open bar with a guy in a tux, and another guy was serving little roast beef sandwiches carved off the biggest piece of cooked meat I’d ever seen in my life.  I hope that someone from the kitchen staff got to take home the leftovers and feed his family for a few weeks.

A sales rep in a suit came up and asked if I was familiar with his company’s products.  I figured it was obvious I wasn’t one of the actual conference attendees, standing there in jeans with a laptop bag over my shoulder, so I said, “I have to confess, vascular surgery is just a hobby of mine, I just dabble on the weekends in the garage.”  Blank look. He didn’t get that I was making a joke. “I’m not really a vascular surgeon,” I confessed.  He lit up, “Ah, what’s your main area of practice then?”  I guess it wasn’t that obvious at all.  I said, “I’m not a doctor at all, I’m from the database conference down the hall.”  He huffed back to his circle of friends in suits.

The range of products and needs of the vascular surgeons is amazing.  There are instruments to go inside the vessels, and there are wrappers that go around them.  Some products are fabric, and some are coiled wire. Signs trumpeted the capabilities of one brand of wire mesh over another, allowing 60 degrees of angulation over a 10mm distance, or up to 75 degrees of angulation over a 15mm distance.  Who knew it was so tough to wrap blood vessels in wire?

At another booth, a rep started her spiel and I explained right off that I was from the database conference.  She thought that was the most amazing thing ever, laughing and saying “That’s incredible, I’ve never heard of that!”  I explained “Hey, we’re all geeks, we like science, we like learning.  How could I not?”

She was selling surgical tools, and she explained a little about the various doodads that the doctors put in and around the arteries during surgery, although she was light on tech details. I asked her about the buying process, and who makes the decisions about which tools from which companies get bought by the doctors. Purchasing processes are interesting to me because my company at my day job sells books to school libraries, and how those purchasing decisions have become more centralized over time. She was more eager to talk about the sales process, and explained that it each surgeon decides which tools and appliances he or she will be using during the surgery.

Finally, I talked to a guy who was selling his company’s form of thrombin. I told him right off that I wasn’t going to buy any because I was not a doctor at all, but he was more than happy to give me a crash course in thrombin.  Thrombin is a substance that helps close bleeds in blood vessels, and it’s in our blood normally, but sometimes during surgery the patient’s body needs help.  The two major forms of thrombin are from human blood and bovine blood, but his company sells thrombin from Chinese hamster ovaries, which is better than the other two for some reason I don’t recall.

I asked him about the purchasing decision behind thrombin, and he explained that it’s usually made at a hospital level, but with a lot of hospital-wide debate.  Some doctors only want human thrombin because they want as few potential complications as possible, and others want bovine for other technical reasons.  The doctors also have to coordinate with the hospital pharmacy because they have their lists of concerns, not least of which is dollar cost of the products.  Sounds like the eternal struggles between programmers and sysadmins, no?

I thanked him for his time and left the exhibit room to see…

… a dozen huge bulletin boards showing the research papers that were to be presented at the conference’s sessions.  Large full-color banners, 10’x3′, gave the details of the research, often with large full-color photos of blood and guts and “frank purulence”.  Clearly, when you’re presenting at a medical conference you can’t pull a Schwern and crank out the slides in the hallway the morning of your talk. They were so detailed, I wondered what would actually get presented in the sessions.  Would the doctors just restate what was already on the banners?  I guess I’ll have to crash another conference to find out.

I can’t overstate how important I think it is for us to branch out and learn about more than just the jobs we do every day.  We are all programming for some sort of business, and there is much to be learned from other businesses around us.  Even more, we can learn from other communities as well. For example, at this year’s OSCON, the convention hall also hosted the Sock Summit, a few thousand sock knitters getting together. Ricardo Signes paid a visit and found that they have a similar problem to the open source community: The sock knitter world is almost all female, and they want to attract more men to sock knitting, but the men that do show up often feel alienated.

What other communities and subcultures have you visited? What did you take away from them? Please post your stories in the comments.

Toot your own horn at work

February 21, 2011

Do you think it’s bad to talk about what you’ve done? Do you have an aversion to self-promotion? Learn to get over that for the sake of your career. Remember the first rule of career management: Your awesomeness is not self-evident.

Your performance at work is judged on your achievements. You need to let your boss know what it is you’ve done if he’s to judge your skills fairly.

When the boss comes and asks how things have been going, instead of

I’ve just been working on that customer record data conversion.

you say

I’ve been working on that data conversion, which has been pretty interesting. I was only getting throughput of 500 records per minute, which would have taken far too long. Turns out that the profiler showed that 60% of the time was spent in doing the vendor lookup. So I hacked together a little Ruby program to build an intermediate Berkeley DB and bypass the Oracle connection. Now it’s cranking through about 6400 records a minute. Much nicer.

This little explanation has threefold benefits. First, your boss knows what you did, and has a better idea of your skills and achievements. This can only help when it comes time for performance reviews.

Second, your success can infect the rest of the department. Maybe the boss will bring it up at a team meeting, and others can learn from you. Maybe he’ll mention it to another team member in a similar situation. (When people ask things like “We’re a Java shop, how can I get the boss to use Ruby?”, it’s examples like this that are steps in the right direction.)

Third, if your boss has any micromanagerial tendencies, this will help fend those off. Bosses micromanage because they’re afraid you’re going to screw something up. When you make it explicitly clear that you know what’s going, you help soothe those fears and may well minimize the micromanagement.

Learn to effectively and tactfully talk about your achievements. Your reputation and paycheck will thank you.

Andy’s jobs/work news roundup for 2011-02-21

February 21, 2011

These links are collected from my Twitter feed. If you have suggestions for news bits, please mail me at

  • Job boards no more “help” you find a job than a billboard “helps” you find a new pair of shoes. (
  • A few things every job-seeking programmer should know about project manager (
  • What job qualifications can trump work experience? (
  • Ten tips for submitting your resume (
  • Don’t call to schedule an interview (
  • This is how salary negotiation should work (
  • RT @mjdominus A recruiter asked me to rate my programming 1–10. I said 10, since nobody who asks that is qualified to dispute my answer.
  • From the daily @tom_peters email: If your failure rate is one in a million, what do you tell that one customer?
  • RT @AskAManager Be Cautious When Referring a Friend for a Job (
  • What to do when you think you might lose your job (
  • Should you work for free? Probably not. This fine chart lays it out. (
  • The importance of being able to say “I don’t know” (
  • How to tailor a resume for an employer (
  • 57% of the Inc. 500 use social media to recruit (
  • Quit whining and send a thank you note after an interview (
  • How to be a better coworker (
  • Ditch Starbucks and work at the library. (
  • 8 things you should know about job references (from @AskAManager) (
  • Smokers need not apply (
  • Six reasons you shouldn’t quit without notice (

Job ads to avoid

February 18, 2011

I came across an ad for programmers the other day, and one of the requirements was that you be able to:

Get along well with other sometimes mal-adjusted geeks

The way I read this is “some of the other people are anti-social assholes, and we, as a company, are OK with that,” probably because they are able to turn out code and they’d rather not deal with the long-term effects of such people on a team.

Having worked for such a company before, I suggest that life is too short to work at them, regardless of how cool the job may be otherwise.

When was the last time you were thanked?

May 30, 2010

Seth Godin’s blog entry today sums up so much of my frustration with much of what I see on the Net:

Yes, I know you’re a master of the web, that you’ve visited every website written in English, that you’ve been going to SXSW for ten years, that you were one of the first bloggers, you used Foursquare before it was cool and you can code in HTML in your sleep. Yes, I know that you sit in the back of the room tweeting clever ripostes when speakers are up front failing on a panel and that you had a LOLcat published before they stopped being funny.

But what have you shipped?

What have you done with your connection skills that has been worthy of criticism, that moved the dial and that changed the world?

Go, do that.

Right on, Seth. To that list of “so you can…” I’d add

  • You’re a master debater on Slashdot and Reddit
  • You’re quick with a link to
  • You correct people in the ways in which they ask questions in IRC

The tough part is that most of the things that you do “with your connection skills that has been worthy of criticism, that moved the dial and that changed the world” require you to get off your ass and get out from behind a keyboard.

Ever given a talk at a user group meeting? Ever organized a conference? Or lined up a speaker for a user group meeting? Written an article or blog post where people say “That’s changed the way I look at things?” Or created software where people say “I don’t know how I lived without this?”

When Seth talks about “moved the dial and changed the world,” I’ll even set the bar a bit lower. When was the last time someone thanked you for downvoting someone on reddit, or being an oh-so-clever snark poster on Slashdot? Ever received appreciations for pointing out what you perceived as someone’s shortcomings in a flame war?

Which is more likely?

  • “Thanks for telling that guy your negative opinion of him.”
  • “Thanks for that presentation on Ruby modules.”
  • “Thanks for reaching level 75 on Farmville.”
  • “Thanks for putting together this group. I learned a lot.”

Get out there from behind your keyboard and do something that builds rather than tears down.

What schools should be teaching IT students

April 18, 2010

This past Friday, I spoke at POSSCON on what schools should be teaching IT students. Here are the slides from the presentation.