DaedTech

Stories about Software

By

Help, My Boss Sucks!

I might be accused of link bait for a title like this, but I actually get a decent amount of questions that, when you distill them down to their bare essence, amount to this title. The questions are often packaged in narrative (possibly rant) form and almost invariably summed up with an apology for all of the detail. Please don’t apologize for that level of detail. It’s not that I enjoy hearing about your miseries, but I think that there’s definitely a shared catharsis that occurs when recounting or listening to tales of corporate stupidity with a narrator that’s powerless to stop it.

My Expert Beginner series and eventual E-Book resonated with a lot of people largely, I think, because of this dynamic. The experience of dealing with an entrenched incompetent is so common in our industry that thousands and thousands of people read these posts and, thought, “hey, yeah, I had to deal with a guy just like that!” And I’m small potatoes — the DailyWTF is an entire, vibrant site with tens of thousands of subscribers and a number of authors and editors dedicated to this kind of thing. If you want to go even bigger, think of Dilbert and his pointy haired boss or the Peter Principle.

Assuming, however, that commiseration with others isn’t enough to bring the joy back into your life (or at least to remove the angst from it), the question then follows, “what should I do?” It’s at this point that one might expect to stumble across some kind of insipid faux-answer on LinkedIn or something. It’d probably go something like this:

Top Ten Tips to Tame a Terrible Tyrant

  1. Take up meditation or yoga and learn to take deep breaths when your stress level is getting high so that you can react calmly even in the face of irrational behavior.
  2. Ask yourself if you’re not part of the problem too and do some serious introspection.
  3. You don’t have to like someone to respect them.
  4. Talk to human resources and ask for discretion.
  5. Have a heart to heart and explain your concerns, being courteous but firm.
  6. Enlist the help of a mentor or respected person in the group to make things more livable.
  7. Empathize with their motivations and learn why they do what they do so that you can avoid their triggers.
  8. Heap praise on the boss when he or she avoids behaviors you don’t like in favor of ones that you do.
  9. Seek out a project that puts you on loan to another group or, perhaps, minimizes the direct interaction with your boss.
  10. If all else fails and you’re at wits’ end, perhaps, maybe, possibly, you might want to consider some kind of change in, you know, jobs — but do a ton of research before you do anything and make lots of idea webs and charts and make really, really sure that this is what you want to do because it’s a huge decision.

Honestly, go out and google something like, “what to do about a bad boss” and this is the sort of platitudinous, enumerated non-answer to which you’ll be treated.  It’s manicured, politically correct, carefully considered, diplomatic, and a load of crap.

Let’s get real.

What To Do When Your Boss Sucks

  1. Form an exit strategy.  That’s it.  There is no 2.

AngryArch

Wait, Wat?

Yes, you read that correctly.

I don’t advocate that you take up yoga or work it out on the heavy bag or recite “calm blue ocean” or empathize or anything else.  If you find yourself miserable at work day after day because of a boss with whom you are fundamentally incompatible or if you find yourself googling “what to do about a bad boss” or if you find yourself writing to someone like me to ask for advice on what to do about your bad boss, you’re in a fundamentally awful position that’s probably shaving hours and days off of your life.

Whatever appeasement strategy upon which you may choose to embark is only going to mitigate that — it won’t alter it.  You need to take control of your destiny and that requires an executable, measurable, and tangible plan of action.

I’m not advising you to rage quit or do anything rash — that’s an awful plan (or perhaps a non-plan).  What I’m suggesting that you do is start laying out a sequence of events that removes this person from your life.

There are a lot of ways that this could happen.

Obviously, you could quit and work elsewhere, but you could also plan to stick it out until the boss retires in 18 months.  Perhaps you start taking classes at night so that you can transfer into a different group or maybe you find some team-lead type that acts as a buffer between you and Mr Spacely.

It could be that you do something as unusual as becoming a huge advocate for your boss to upper management so that he’ll get that promotion that will take him to another division or, at least, away from dealing with you directly.  Maybe you initiate controlled explosions inside of your own ears so that you never have to hear his terrible voice again and he can’t deal with you unless he learns sign language.

Go make yourself a brainstorming list — no idea short of criminal malfeasance too farfetched — and capture every imaginable path to your emancipation.  Once you’ve got that list in hand, start narrowing it down and firming it up until you have several strategies that you can work simultaneously, all timeboxed and with contingency plans.

You need to have measurable goals against which you can measure progress and you need to understand when to pivot.  A good plan would be something like:

“I’m going to get that certification that will make me a bit more cross functional and then I’ll start volunteering for work over in Bill’s group in my spare time.  Within 3 months of that, I’ll casually broach the subject of spending some time in that group and within 4 months, I’ll make it official.  While that’s going on, I’ll talk to HR within the next month about the idea of a potential transfer.  If after 4 months, none of that is going well, I’ll start interviewing for other positions.”

Now when you’re looking at your life, you’re not seeing an unending string of misery to be mitigated only with non-actionable platitudes like, “be more understanding” and “ask yourself if you aren’t partially responsible.”  Instead, you have a plan of action that you believe, if followed, will lead you to being happier.  Because here’s the thing — if you’re fundamentally incompatible with a boss then “who is responsible” is a non-starter and being more understanding isn’t really going to help.

There’s a Protestant Work Ethic, “Pain is Gain” underpinning to all of this that’s really not appropriate.  Is it an inappropriate sense of entitlement that must drive you to say, “I shouldn’t have to work somewhere that my boss makes me miserable?”  Many would argue yes, but I’m not one of them, and I think that’s silly.

If you’re overly picky or sensitive, you’ll wind up job hopping, getting stuck somewhere or, perhaps, have trouble finding work.  That’s how you pay the piper for being too picky or sensitive and, if those things start happening, maybe you should embark on a course of introspection.

But if you’re miserable under a boss, that’s real and there’s no way it’s entirely your fault.  It’s not your sole responsibility to figure out a way to prevent someone from making you miserable and you ought to view this as a no-fault problem to set about solving.  That’s where the plan comes in.

A boss is someone who should be removing impediments from your path to allow you to be as productive and awesome as possible.

That’s not feel-good BS — it’s the way to get the most value and productivity out of knowledge workers.  No boss that truly embraces this mandate should be making your life miserable, even if you are an over-sensitive, uber-picky prima donna.

If the boss is making you miserable on a daily basis then he’s an impediment and not an impediment remover.  Since you’re then responsible for removing your own impediments, there’s only one thing to be done with this boss: remove him from your life.

That’s All Well and Good…

I realize that this all probably sounds rash and maybe you think, “easy for you to say,” but it didn’t just happen to become easy for me to say.  I planned for it.

I’ve spent a lifetime optimizing for my own happiness and satisfaction with what I do and, when that temporarily wanes, due to a boss or anything else, I form a plan, follow it, and fix the problem.  And I do this by thinking in terms of diversification and dependency.

If you take a job at Acme Inc, settle in for a 10+ year stay, and let your resume gather dust, then you’re largely dependent on Acme Inc for your well being via income — you’re putting all of your eggs in that basket.  If Acme then burps out a bad manager and puts him above you in the org chart, you find yourself in the same position as a cable company customer: “yeah, we’re awful, but good luck doing anything else.”

If it seems daunting or hard to plan at this point, it’s because you’re pretty coupled to Acme.  You still can and should make a plan, by all means, but that’s why my advice might seem cavalier.

I have contingency plans all the time, and they range from W2 opportunities to 1099/B2B work to royalty streams to oddball, go-for-broke schemes like moving to the country to be a hermit and try my hand at writing novels.

Some of them are clearly more realistic or feasible than others, but they all exist and I’m in a constant state of assessing my happiness and weighing my options.

Don’t confuse this with fickleness or disloyalty in me and I’m not advocating those things in you.  If I could find something that made me consistently happy, work-wise, for the next 2 decades, I’d happily take the consistency and stability, and I cheerfully advise you to do the same.

But when life or companies throw crap situations at you don’t hesitate to start executing contingency plans to bring your happiness level back to where you want it.  Your happiness is something that you can’t count on anyone but you to monitor and it’s not just important to your quality of life — it’s important to your quality of output as a knowledge worker.  You and your reputation can’t afford for you not to be happy.

By

Keeping Your Eyes on the Prize

I’ve heard people say things like, “we need to use the strategy pattern here” or “we need a repository layer between the services and domain objects.” Let’s take that at face value and assume that these are things that they “need” to do, in the sense that they’re solid solutions to some problem. The point of confusion then comes from a lack of understanding of the goal. I mean, I doubt that the goal is “to use the strategy pattern” or “add a repository layer,” so someone is explaining a means of achieving a goal.

If the context of the discussion is two people well aware of and in agreement upon the actual goal, then this is entirely unremarkable. It’s just a couple of people collaborating to solve a problem. Somewhat more interesting is the case of the two people not sharing a common goal. For instance, if the first person’s goal is “make it easy to add a new implementation to the code base” while the second person’s goal is, “practice using the strategy pattern,” agreement becomes a matter of coincidence rather than collaboration, and the possibility of tragi-comic feuding emerges. The most noteworthy case, however, is where one or more people are unaware of the goal or don’t actually have a broader goal. “We need to use the strategy pattern because my Software Engineering textbook says Gang of Four is good.” Or, in the Expert Beginner world, “we need to use Strategy Pattern because that’s just what we do.”

Lack of a Goal

I’m not going to spend a whole lot of time on this because it’s pretty straightforward. Assuming that the person in question isn’t a nihilist or troublemaker, this is the epitome of cargo cult. I think that perhaps the most iconic example of this is the pervasive mid-2000’s use of Systems Hungarian Notation. This gives rise to the following type of terminally stupid conversation:

Interloper: Why did you do this: “const char* lpcstr_str”
Cult Member: I wanted to declare a string.
Interloper: Okay, but why did you name it that?
Cult Member: Because it’s a string.
Interloper: That name seems inscrutable and redundant — what’s the upside?
Cult Member: I don’t understand the question. It’s a string. That’s what you name strings.

Cult member has no goal whatsoever because his routine has become a goal unto itself. And really, that’s sort of a sad state of affairs not worth elaboration.

Pawn

Lack of Consideration of a Goal

Not all participation in routine is the celebration of routine. Routine does, in fact, have a purpose. It’s sort of the human-natural way of prioritizing cognition. What I mean is, imagine a world where you approached everything as if it were a riddle requiring critical thinking. Every morning you’d stop to ask yourself if there wasn’t, in fact, a better way to brew your coffee than using your Keurig. And, the drive to work? Should you find a new route? Should you drive at all?

Nobody has time for this, so a great many activities are conducted on auto-pilot with rationale revisited only strategically. Every now and then you may wonder if you should make your coffee differently or drive to work via a different route, most likely as a result of ongoing frustration with something. And that’s fine. In fact, it’s probably efficient.

This applies in a limited way to programming. I say limited because programming is knowledge work and it’s also rarely repetitive if you’re doing it well. Programming isn’t like driving to work or making coffee; you’re generally blazing a new trail even if you’re doing something comparably formulaic like some kind of forms-over-data/CRUD app. The domain changes, the languages/frameworks/tools in use change, and the business context changes. There may be aspects of the craft that you don’t revisit as often, such as, say, which source control tool or programming language you use, but by and large programming demands fewer brain reps on auto-pilot than most other things in life. In this context, lack of consideration of a goal puts you in danger of settling in to a rut and not being at your sharpest.

Keeping your Eye on the Goal

As you go through your life as a programmer, I have a definite suggestion for how you can avoid a rut. Always be able to rattle off your goal when asked about what you’re doing. That’s it, really. The goal doesn’t necessarily have to be great, and your means of achieving it doesn’t need to be either (I mean, do your best, but I’m making a point here). Just knowing what it is you’re trying to accomplish well enough to articulate it will help you a lot.

So if you’re overhead saying, “we need to implement the strategy pattern here” and someone asks you why you think that, be ready with “the goal is to allow future implementations with a minimum of violence to the code base ala the Open/Closed Principle.” Now, it could be that the strategy pattern is a poor choice or that you’re gold plating or whatever else, but at least you’re not caught flat-footed when challenged on your motivation and, more importantly, thinking in terms of goals creates a concrete link between your solution and added value.

And if the next question you want to ask is, “what if someone asks you for the goal behind your goal,” this absolutely iterates. A logical follow up would be “why are you worried about future implementations,” and your logical answer may be, “we’ve been asked to add 3 already, so it seems like a 4th and perhaps beyond are likely.” Now, your connection of solution to broader goal is “business has created a lot of churn around X, so I think we can use the strategy pattern to minimize the risk associated with any more similar churn.” Want to go another round? How about the fact that each time this has churned it’s cost your company $15,000, and you think that, with the strategy pattern, you can cut that to $5,000.

So, where does the iteration end? Perhaps at “we’ll have more money if we do this.” Perhaps further (“we need more money so that…”). Perhaps not that far. But, really, the further back along the path of your reasoning, the better. The more you can tie your specifics to broader, strategic goals, the more persuasive you’re going to be and the more likely you are to have solutions that, even imperfectly executed, will be a help. So the next time you find yourself talking about patterns or repositories or frameworks or whatever, do an exercise and see how far back you can iterate if you were confronted with a child asking, “but, why?” ad nauseum. Worst case scenario? You waste a few minutes practicing justifications of your decisions.

By

Breaking Free of the Golden Handcuffs

In a comment on my post about how to resign from your company, I was asked about advice for a situation where you don’t like your job, but they’re paying more than any other competitors in the industry.  In other words, what to do when leaving the company would mean that you’d personally take a haircut, financially speaking, and have to go somewhere for a smaller paycheck.

I refer to this situation as “golden handcuffs,” though I Think that term applies more to firms specifically offering you financial incentives aimed at retention, such as delayed vesting in your 401K, lump sum bonuses for staying on, etc.  I personally think that a salary well above fair market value (which is, ipso facto, what we’re discussing here) is just another form of this — we’ll make you stay by offering you money you can only make by staying.

But regardless of terminology, the question is, “what do I do about this state of affairs?”  As I see it, there are a number of solutions.  I’ll briefly cover some common sense ones first, and then get to the more interesting solutions.

Obvious Solutions

First of all, you could always just leave and take a reduced salary.  You’d obviously need to set your affairs in order financially to accommodate for the lower paychecks that would be coming your way.  A good way to do this might be to estimate what you’d command on the market, ratchet down your budget accordingly, and put the surplus in savings for a bit to help smooth the transition when you do make the move.

Another obvious solution is that you could simply “suck it up” and keep at your current job.  It’s all well and good for people to say “money isn’t everything,” but money does have real world, practical uses, like medical bills, mortgages, and children’s tuition.  It might be that, however much you don’t enjoy what you’re doing at work, you need the money and will just have to grin and bear it (though this can be a reasonably temporary solution where you bide your time until you’re clear of some obligations).

Last up here is the Hail Mary, which is sort of a modified version of “suck it up,” wherein you go out looking and interviewing but with the stipulation that you receive pay comparable to what you currently get.  It could always be that you’re simply assuming that you’re overvalued but really you aren’t.  Honestly, the single biggest predictor of your next salary is your current salary.  You might be surprised at how readily a new firm will pay you what you’re making or a bit more.  But, if you’re accurate in your self-valuation, you wind up in “suck it up” mode indefinitely, but at least you’re constantly looking.

Now, with those out of the way, here are some interesting options.

Supplement Your Income

So, you have a job that you really don’t like and you’re there 40 hours per week (and not a minute more, amirite!?)  Perhaps you don’t even give them quite that many because of organizational inefficiency or unstructured-unstructured time and maybe that’s even why you want to leave.  Whatever the case may be, there’s a decent chance that you’re not exactly dedicating all of your spare brainpower to your current gig for as long as your golden handcuffs keep you and the company reluctantly married.

Take some of your spare time (or perhaps some of your unstructured-unstructured time at the office) and secure another line of income.  This could be something like moonlighting or consulting for money, but the reality here is that you’re tying up extra hours on top of (or in lieu of) current work hours.  So, even if this gets you extra income to make the jump to something lower paying, you might have to work 40+20=60 hours at the new gig to have the same income as just 40 at your current gig.

A better solution is to work on something that generates passive income for you.  It could be something like a rental property (I mean, you typically don’t wind up with golden handcuffs without a bit of gold in the mix), but it could be something more in line with your day-to-day.  For me, Pluralsight authorship has helped to give me a decent amount of career flexibility.  Perhaps you could monetize a blog, write a book, or something else along these lines.  This is not an overnight solution, but it’s a career option to consider over the long haul.

(Please note, I’m not encouraging you to misappropriate your company’s time to pursue your own financial interests.  If you choose to do that, it’s purely your own ethical conundrum — I’m encouraging you to economize downtime not otherwise accounted for, such as commutes, quiet home time, or cases where you literally have nothing to do at the office and couldn’t even be helping the organization with a side project)

Orchestrate a Non-Lateral Move

Speaking of what to do in your spare time that could help, how about brushing up or solidifying your credentials toward the next career step?  Are you a software developer?  Time to shoot for Senior Software Developer.  Already a Senior?  Shoot for Architect?  Already an Architect?  Dev Manager.  You get the idea.

This type of career jump can be somewhat hard to negotiate, but it comes with an expected increase, that, in the case of golden handcuffs, might translate to a lateral move from a salary perspective.  However, it’s anything but lateral for you as you’re now in a position to resume a career of growth and get COLAs and merit increases that pace the industry.

Admittedly, this can be difficult, but it can also be doable.  Identify the position title that you’re after, and then look at common job descriptions for it, focusing on the responsibilities.  Those are the things that you want to be able to tell people in an interview that you are currently doing.  So, if you’re gunning for Architect, ask to sit in on formal code reviews or architecture meetings or whatever the grand code poobahs at your company do.  Work your way into these types of responsibilities and then, in interviews for this career-advancing move, you can say, “well, it’s not official in my position title, but I have been doing the role of X for a while now.”  It’s not as much of a no-brainer as going from Architect at Acme Inc to Architect at Beta Inc, but it should get you a fighting chance.

Make Your Skill Set More Marketable

So, let’s say that you lack the spare time to secure passive/other income (perhaps you hate your job because they work you 60 thankless hours per week) and you don’t think you can swing a non-lateral promotion.  What you can do is identify why you’re comparably devalued on the market and then do something about that.

A common scenario might be that you’re using dated or obscure techs.  Your company pays you handsomely to maintain a maze of code written in Cobol and VB5 because there are like 4 other people in the world with that combination of skills and they refuse to lose you.  Meanwhile, you hate writing code in Cobol and VB5, but recruiters aren’t exactly knocking down your door and calling you a “A Full-Stack Ninja Rockstar.”  Well, your company is probably good and hosed no matter what, but there’s no need for you to keep sinking with that ship as they buy weird, old decommissioned machines capable of running a compiler that no longer exists.

If you have spare time, start writing some Ruby or C# or whatever in your spare time.  If you don’t (because they’re mercilessly working you 60 hours per week), start finding ways to bring the new stuff into your day-to-day.  Sell management on letting you write some new functionality in a more modern language.  Or just do it, reasoning that it’s better to beg forgiveness than ask permission.  Find a way to get some kind of modern tech plausibly onto your resume, and watch your options improve.

Change Your Company

I’m not sure who said it originally, but I first heard a quote that I love from the .NET Rocks guys.  “Change your company… or change your company.”  The context, as you might imagine is that if you’re unhappy, you should try to change the way your company does things and, failing that, you should leave for a more suitable company.  What I’m advising you, Golden Handcuffs, is actually the converse of that — quitting ain’t an option for you, so try changing your company.

Anarchist

A company offering you golden handcuffs presumably needs you around.  This gives you some bargaining leverage.  If you’re exhausted or miserable because of working conditions, talk to HR about it.  If it’s the techs or the fact that you’re surrounded by Expert Beginners, start a grassroots movement toward improvement.  Or, perhaps, secure an assignment where you’re more on your own and can have some creative freedom and autonomy.

The key here is to identify the things about the company that make you happy and develop actual strategies for addressing them.  Changing an organization can be exhausting and it’s often a long-play, but it’s doable.  In my career, at times, I’ve emerged from such efforts battered, tired, and war-torn, but ultimately successful to some degree.  You can do this too — the pay is already good, so make the rest of it good.

Time Is On Your Side

To wrap up, I’ll note that the one common thread here in your favor tends to be time, provided you’re not just twiddling your thumbs, running out the clock to retirement (and even then, you might argue that it’s on your side).  Most of these solutions take time to implement and will have a higher probability of success, the longer that you can stick out your current situation.  For instance, I’ve implemented organizational changes that only really took root after I’d left, and it took me years of blogging, writing, and mentoring before I turned any of my moonlighting activities into passive revenue streams.  Had I been desperate for a change but unable to secure a competitive paycheck, these things wouldn’t have been my game-changer by any means.

It may sound like cold comfort if you’re in this situation right now, but assuming you can’t simply take the income hit or continue to suffer indefinitely and check out, you’re going to have to strategize and bide your time.  But it’s my experience that once you lay out a plan and start acting on it, you’ll feel a renewed sense of purpose and see that proverbial (cliched) light at the end of the tunnel.  There’s a pretty good chance, in fact, that lacking a feeling of real purpose is at least part of what’s bumming you out about your job in the first place, since it’s clearly not money.  Here’s a chance to take it back.

By the way, if you liked this post and you're new here, check out this page as a good place to start for more content that you might enjoy.

By

A Developer’s Guide to Recruiters

More and more of my posts these days are in response to reader questions, but this one actually isn’t. However, I’ve been asked about specific aspects of this general theme frequently enough that I figured this was a good subject to cover. I’ve dealt with a lot of recruiters in my career, both as a candidate and a candidate seeker, and this has put me in a position to at least have an informed opinion about the subject. It’s something that’s at times overwhelming and often counter-intuitive, so hang with me, and let’s take a tour through the subject. Even if you’re a savvy job-hopping veteran, maybe I can at least offer you a different technologists’s perspective.

First Up, Check Yourself

Okay, so there are a lot of recruiters out there, and you’ve probably seen a less than stellar display from some of them. “5 Years of Experience with Swift.” “Mad XML coding skills.” “C-Pound a plus.” It’s common for developers to laugh together at these antics. There are even (hilarious) twitter accounts lampooning this. It can also be annoying to get repetitive emails from some organization about jobs that are not fits for you or to have a guy call you three times in a day, saying things like, “I couldn’t help but notice you hadn’t returned my first two calls.” I get that.

But here’s the thing. You’re incredibly, ridiculously fortunate to be in a position where so many people are saying, “hey, please come interview for this job for more pay” that you find it annoying. I’m not saying “you’re fortunate” in the sense that you lucked into it — I know this isn’t easy work — but that you’re fortunate the market is and remains so strong. It can be overwhelming at times, but imagine the alternative of being stuck in a dead end job and being thrilled when some company wants to schedule a phone interview after you’ve sent out 100 resumes through monster.com or something. You might not even know what monster.com is, and that’s because you don’t have to go looking for jobs like other people. That’s the reason that recruiters exist — because the only way to find software developers is to go prying them loose from other firms, and it’s not like CTOs are going to take it upon themselves to start cold-calling competitors’ developers to offer them interview opportunities (though some larger companies do have staff recruiters that do this).

Also to consider is that recruiters are humans, and often they are humans probably no more interested in cold calling you than you are in receiving cold calls from them. Their paycheck depends on calling up a bunch of people who are most likely to sigh angrily and tell them to lose their numbers. That’s not exactly the stuff dreams are made of, so you might extend them a touch of sympathy and understanding if they’ve built up a thick skin and don’t seem overly sensitive to your social signals. They’re out there trying to make a living by getting you job interviews.

The Nature of the Game

Alright, up front caveats aside, the next thing to understand is how the game actually works. Follow the money and understand everyone’s motivations. Understanding everyone’s motivations is the key to knowing whether you’re being fed a line or whether you should take what you’re being told at face value.

Recruiters are sales people. Their customers are companies that need software developers. Their product is mutually beneficial employment agreements, which really means that their product is you, developer. Recruiters sell you to companies. Kinda literally. Typically, their cut is 20% of your first year’s pay, give or take. So, if Devs’R’Us places you with Acme Inc for a starting salary of 100K, Acme Inc. writes Devs’R’Us a check for 20K, and the individual recruiter (typically) gets some kind of commission on this. (This obviously doesn’t apply to companies with internal recruiting staffs, except that I’d wager their recruiters are still incentivized with a commission structure.) If things blow up before an allotted time period (often 6 months) and you and the company part ways, recruiting firm has to cough back up their cut in the form of a refund.

So, you’re a “customer” of recruiters the same way that you’re a “customer” of Facebook or Google — you aren’t. You get a benefit for free by allowing something of yours to be sold to a bidder (your labor, in the case of recruiters, your ice bucket challenge videos in the case of Facebook, and everything short of your soul in the case of Google). Understanding this is the key to understanding recruiter behavior.

Amway

So Hot and then So Cold

This leads to sort of a weird arrangement. Typically, when you hear from a recruiter, you’re more than likely to ignore them or politely decline their invitations. But, if you don’t — if you show some interest — suddenly they’ll start blowing up your phone with interviews on which they want to send you. “Let’s pencil you in tomorrow morning for a phone call with Intertrode and how does your Thursday look for an in-person with Initech, and also my boss, the senior recruiter, would like to get on a call with you, and…” Wow. But then you say no thanks on Initech and Intertrode says no thanks on you, and suddenly you never hear from the recruiter again. Curious, you call and leave a message, and nothing. Maybe they get back to you halfheartedly.

Here’s the reason that this is happening. When you decide to stop ignoring the recruiters of the world, you suddenly become “fair game.” What the recruiter then does is evaluate every one of its clients that are seeking candidates and send you on a bunch of speed dates, trying to be the one to place you before anyone else snatches you up. But if none of those things works out, you’re yesterday’s news and not really worth revisiting until later when they’ve filled enough positions and taken on enough new openings that they can cross reference you against a bunch of new things.

Of course, not all recruiting firms are identical in their approach, but this is extremely common. I can’t tell you how many times I’ve heard from a recruiter that was extremely excited about a few gigs or even a single gig, and then radio silence for 3 or 6 months, only to have this repeated again and again. Recruiters’ clients are the companies, so they systematically go looking for people that would match that particular vacancy. Once they find you to match that one, they’ll economize by considering you for any others as well, but after that initial wave, it’s on to the next set of people.

If you can find a recruiter or a recruiting firm that is developer-focused — that is, one that gets your resume and talks to you, and then regularly checks in with you about potential positions — hang onto this one and partner with them on a long timeline. This is not common and it’s a nice resource for you.

They Say the Damndest Things

When you’re actively engaged in the interview process courtesy of a recruiter, the recruiter wants everything to go well. They want you to show up on time for the interview and make a good impression. They want the interview to go well and both sides to be impressed. They want things to sail along, resulting in offer, acceptance, and employment for at least six months. Cynically, that’s it, anyway. In reality, they probably want both sides pleased over the semi-long term so that companies keep giving them business (though they also depend on market fluidity, so they probably don’t want anyone sticking anywhere for too long). They want to pluck you from companies and put you in a new job as quickly as possible because higher churn rate means more money. Toward that end, they’ll say a lot of things, some of which are solid advice (such as their position on counter offers, described here), and some of which are nonsense.

Bear in mind their goal and the fact that they don’t mind a bit of reality distortion to achieve that goal, and it’ll be easier to understand why they say what they do and whether you should believe it. Here are some things that I’ve heard multiple times from different sources that you shouldn’t let fool you:

  • “Why don’t you come in for an in person interview with us?”  Nah, don’t do that.  It’s not a good use of your time.  They basically want to make sure that you’re not going to embarrass them and cause them to look silly to their clients, so they’d prefer to make sure you can dress and act like a human.  You can offer to do a chat over Skype, and they’ll usually be fine with that.  I personally just decline outright with no offer of anything because there are plenty of fish in the sea.  Almost invariable they say, “oh, yeah, that’s okay.”  If you’re employed, you don’t get that many absence excuses — don’t waste the ones you have going to meet with recruiters.  A lot of the savvier recruiters will often ask to meet you 20 minutes before your interview, so you could even suggest something like that.
  • “It’s okay for you to call in sick again, people do it all the time.”  No, that’s not true.  People don’t call in sick on a Monday morning and then again on a Wednesday afternoon “all the time.”  To be clear, the recruiter doesn’t care a lick if you get in trouble or jeopardize your current role — in fact, they’d probably prefer it because it would make you more likely to accept an offer, should one be made.  Do not ever listen to recruiter ‘advice’ about how to handle your job search when it comes to your current employer.
  • “We really need to get you over there today or tomorrow because they’re probably going to fill this role soon.”  Don’t rearrange your schedule as part of a pressure sale.  One of two things is happening here.  The first is that the recruiter is trying to light a fire under you to move quickly, in which case, who cares.  Schedule things when they make sense for you, not to let the recruiter squeeze in a commission before month’s end.  The other case is that the company is really scrambling to fill a role, and if that’s the case, you’re probably better off moving on anyway.  I mean, can you picture a company like Amazon, Facebook or Google saying “we really need a warm body in here in the next few days, so even though your resume is impressive, if you’re not here by Wednesday we can’t use you?”  That sort of reeks of desperation and I would consider it a red flag.
  • “Yeah, it’s not technically a senior title, if that’s the kind of thing that matters to you, but this is a great opportunity that you should take.”  Senior title.  Certain pay grade.  Certain benefits/perks, whatever.  If you have requirements you’ve made clear up front, don’t let them wheedle/coax/beg/manipulate/browbeat/guilt you into thinking that you’re being silly or overly picky.  Your requirements are requirements for a reason, but the recruiters don’t care at all about that reason or your ambitions.  If you want to leave your current role to become a “Senior Software Engineer” somewhere, don’t let them cause you to doubt your goals.  They want their placement fee, no matter what your title/pay/benefits/etc.
  • “Look, I make more money if you make more money, so I want to get you as high a salary as possible, but you really should take this offer as-is.”  Yeah, well, let’s talk expected value.  If there’s a 100% chance of offer acceptance of a 100K offer, there’s a 100% chance of the recruiter getting 20K for an expected value of 20K.  If there’s a 50/50 chance of an offer acceptance at 110K, the negotiated wage, the recruiter has an expected value of only 11K (50% chance of 22K and 50% chance of zero-Ks).  And they know it.  Like real estate agents, they don’t want you to have the highest wage — they want you to sign the offer.
  • “This is really a great opportunity and you should take it.  I’ve helped place billions of developers just like you and I know a little something about this industry.  Think of how much it will benefit your career and your personal life and everything else to blah, blah, blah….”   You don’t need life coaching from a recruiter.  This ‘advice’ when there’s an offer in hand is something you should utterly and completely ignore.  Think of the conflict of interest.  It’s like a car salesman telling you how important car ownership is when you’re contemplating a purchase.  Of course they’re going to say it, whether or not it’s true.  So it’s literally just noise.  Tune out the recruiter and make your decision.

You may hear these exact things, variants thereof, or even arguments I haven’t encountered, but the important thing is always to keep in mind how they make their money and what their motivations are.  Their goals are mostly aligned with yours — you both want you to be placed in a new role that makes you happy.  But to you “makes you happy” is most important and to them “placed in a new role” is most important.

Working Effectively with Recruiters

With your goal and their goal being pretty similar, it’s not terribly hard for your relationship with them to be a beneficial one.  Here are some tips that I’ll offer for getting the most out of working with recruiter:

  • Decide your requirements for changing jobs ahead of time and be crystal clear about them when talking to any recruiter.  In fact, state up front that you’ll immediately shut down the interview process if at any point you discover one of them won’t be met.  If they believe you on this count, they’ll have no incentive to try to shoe-horn you into something with the hopes that they’ll figure out how to persuade you to take it.
  • Be firm about things, but be polite.  Sales pitches of any sort can be annoying, but keep your cool.  Stick to your guns, make your position clear, but resist the temptation to get worked up in any way.  They are, after all, trying to help you in general.
  • Screen your phone calls.  If you’re actively engaged with a number of recruiters in a job search, you’ll probably get a lot of calls that might be awkward to take during the day.  They might also be pinging you with needless status updates or check-ins.  Your mileage may vary, but I’ve generally found it helpful to let them leave messages and call them back later.
  • In advance of dealing with recruiters, decide on your preferred times of day/week for phone interviews and recruiter calls and also decide on your preferred medium of communication, such as email, text, phone call, whatever.  Make this clear to the recruiter up front.
  • Let them address and cover your mistakes.  Just like they’re trying to sell you on the company, they’re trying to sell the company on you.  If you had a brain fart and thought your phone interview was tomorrow morning instead of this morning, call the recruiter and ask what to do.  Most likely, they’ll apologize to the company and say it was their miscommunication.  Smoothing over logistical snafus is something they’re good at and usually willing to do.
  • Let them help you negotiate and do things like thank you notes.  I know I said that they’ll want you to accept offers as is, but once it’s clear that you won’t be deterred from negotiating, they’ll turn right around and apply the same shtick to the company about you.  Having this intermediary is nice because it defrays conflict between you and someone who is about to be your employer.  In general, the recruiting firm is good at maintaining the best face of both you and the company to the other party.
  • Avoid giving recruiters specifics of leads/offers you’ve obtained through other recruiters.  They’re clearly just going to try to talk you out of whatever it is, so there’s really no need to have the conversation.
  • Whatever happens, don’t take it personally.  Ideally, you land a job, and the company, recruiter and you are all happy.  But maybe you get two offers and then decide to take the other one.  Maybe you even accept an offer and then quickly switch to taking a better one (or decide to stay put).  Maybe you pass on an offer.  There are a lot of end-games where recruiters might resort to more desperate techniques: lecturing you, affecting anger, sadness or disappointment, telling you that you’ll never get a better offer, even vaguely threatening you.  It’s all part of the game.  I promise you that no matter what they might say to you and how you might react, they’ll call you in three months about a new full stack senior role as if nothing ever happened.  It might be offensive to you, but it’s just part of the game.

Recruiters provide a service that matters to our industry where job hopping is common and demand is through the roof.  They grease the skids for us to be able to move fluidly between gigs.  The paradigm isn’t ideal, but it’s the best we have for now, so you might as well get used to the idea that you’re going to be playing this game and then, and enlist their help to play it well.

Recruiters are really just sales people, and the relationship between developers and sales people is generally a somewhat reluctant ones.  We’re makers that want to build things so well crafted that adoption is a no-brainer and requires no selling.  Sales people are relationship-oriented and deal mainly in people.  Within organizations, these groups often have natural friction, so the friction only increases when the software people are the product being sold.  But if you can get past the intense weirdness of this arrangement and work effectively with recruiters, it will only benefit your career.  Work with a lot, find firms that you like and work well with, and remember them for next time you’re on the market.  You won’t regret it.

By

Walk a Mile in Their Shoes

It’s easy enough to look back and chuckle at your own foolishness in your younger days, but sometimes I have the weird, sadistic (masochistic?) thought that I’d like to rip a little hole in space-time so that I could get my money’s worth. I’d go back and actually belly laugh and point at 12 or 13 year old Erik. Then I’d settle down and tell me to trust me because we’d be better off for it in the long run, lest you think that I’m cruel.

But I Have So Much To Offer!

What’s so funny? I have this memory of being convinced that some girl or another couldn’t possibly help but be interested in me if only she could see me how good I was at knocking aluminum cans over from 6 or 7 feet away with a bull whip. You tell me that isn’t funny — I think it’d be like laughing at Ralphie after shooting his glasses with his Red Ryder BB Gun.

ChristmasStory

So the back story was that my father, at some point, had gone to Australia or some far off land on business and brought back an Indiana Jones-style bull whip as a souvenir. Over the course of my childhood I became quite accurate with this thing, able to hit small targets and take impressive chunks out of them when I did. In my early teenage years, at the crossroads between wanting to be Indiana Jones and wanting to find young women to take on dates, this odd juxtaposition took place. As kids, we sat in school all day, confined to relatively run-of-the-mill social interactions and activities, and the lone hope you might have for standing out in such an environment was to create some sort of ruckus by misbehaving. There was no chance for anyone, least of all girls that I wanted to impress, to see the unique and clearly very appealing set of skills that I had, such as knocking over cans with a bull whip.

One of the iconic things that you hear children utter, at least in movies of the “16 Candles” genre, is “s/he doesn’t even know I exist.” That wasn’t my problem; I went to a small enough junior high school that pretty much everyone in the grade was aware of one another. My problem was that people knew I existed but didn’t particularly care. But it was a problem that could be solved if I could just devise some way that the entire school was threatened and only someone who was pretty accurate with a bull whip could save it. Or something.

I Can Guess What Interests You

I wised up. Certainly not all at once, and I make no claim to have figured out, even at the age of 34, a foolproof plan to make someone sympathetic to my cause. But I did learn that no girl in my junior high would be interested in watching me shred cans with a bull whip unless she were already interested in me for some other reason. I kind of had to wise up, earlier than some and later than others, or else I would have been the socially stunted Napolean Dynamite character who, at the age or 17 or 18, thinks that girls liked guys with “Bo skills, nun-chuck skills…”

There’s a spectrum of ages at which people come to understand this social lesson. And, I’m not talking about figuring out what attracts girlfriends or boyfriends at an age when bodies and minds are changing on a weekly basis, but rather I’m talking about the lesson of recognizing alien approaches to and outlooks on life. Children have a simple and rather solipsistic view of the world, even as they tend to have a high amount of empathy. The child will be genuinely flummoxed that you could enjoy the taste of brussel sprouts when he cannot, but is also liable to start crying if you start crying. In a way, this empathy is part of the simplicity — all for one and one for all, with the all and the one being external clones of the child.

But at some point, I figured out that me thinking it was cool to whip cans did not cause the various girl-crush of the week to agree with me. I learned that she did not empathize. Together as aging children, in fits and starts, we shed both our empathy and our belief in our opinions and values being shared by all. Budding psychopaths probably get there quicker than others. After all, they never had any empathy to start with and glib social chameleons tend to be the best at manipulating social situations to get reactions that they want. A psychopath would be entirely too busy running a series of social experiments to have private emo moments and thoughts of, “if she only knew how awesome I was.” Psychopath would think, “tricking her into thinking I’m awesome will be fun.”

I mention this because it’s not really matter of “EQ,” exactly, to adapt to the alien outlooks of others — it’s pretty much a feedback loop with the slowest to adapt being among the more introverted and leery of spending social capital on potentially doomed experiments. And so it went, and so it went. I learned, slowly but profoundly, that a lot of people wouldn’t be impressed with me, wouldn’t value what I valued, wouldn’t necessarily approve of me, and perhaps flat out wouldn’t like me. It wouldn’t necessarily be any fault of my own — it could be a matter of circumstance or misunderstanding.

What I learned from this, particularly as an introverted sort, was to spend a lot of time trying on masks of other people’s outlooks on life. Please don’t confuse this with empathy — I’m not particularly empathetic. I just got good over the years at putting myself in the shoes of others to understand their motivations and predict their behavior.

You Have Nothing that I want

In case it wasn’t entirely apparent, I’ve drifted away from talking about love interests and am just talking about life interactions. That is, I didn’t go to singles nights and try some kind of Sherlock Holmes shtick to deduce what would endear me to women. But I did carry my bullwhip and its valuable life lesson with me to adult social interactions, jobs, engagements, etc.

Why does Steve in accounting give me dirty looks whenever I pass by? I’ve never done anything to him. Well, rather than just chalk it up to Steve being a scumbag, maybe I do a bit of listening and a thought exercise. Maybe I learn that one of Steve’s big initiatives had been pushing to have the software group write a series of extensions onto Quick Books that could, ideally, be parlayed into a side business venture for the company and thus into impressive resume fodder for himself. Maybe I also learn that this initiative had died on the vine when they brought me in to overhaul the company’s software practices and that, as a result, Steve’s stock had dipped some with the company. Maybe I also learn that Steve is sort of paranoid, so he perceives this mild dip as an existential threat to his livelihood. So maybe, I am a threat to Steve earning a living. This makes no sense to me, and it would probably make no sense to most people, but none of us is Steve.

I was a pretty weird kid with pretty weird interests, so the profound lesson that I learned had a lot of reinforcement. It was unusual for others to share my outlook, and this gave me a whole lot of practice figuring out theirs for the sake of relatability. When I was younger, this skill was needed for me to form friendships and romantic relationships, but having squared those things away and as an increasingly reclusive adult, it no longer helps me attain things that I want; it helps me maneuver deftly through professional situations. I don’t want anything from people, except, by and large, pleasant professional collaboration. I’m a maker and builder and I’m comfortable with the square I’ve carved out for myself, so my days of using the skill of walking miles in others’ shoes to get things are long past. I just want peace.

So what to do about Steve? Well, the natural thing to do would be to approach him and ask him if, given his expertise, he might have some ideas for software initiatives and that I was thinking of asking some higher-ups if we could give him more of a challenge, given how marketable he is. He most likely wouldn’t assume that I’ve quietly assimilated information and made an effort to understand what life is like looking out from Steve’s brain. He’ll no doubt be distrustful and skeptical, but he’ll also probably start to adopt a different attitude toward me, if subtly. And what does any of this cost me, whether or not I follow through with any of it? Nothing, really.

I’ve come full circle. Steve is out whipping cans and feeling spiteful toward anyone who doesn’t agree with him that this is a wonderful skill. I think his skill is silly and I’d laugh at him for this privately, the way I laugh at 13 year old Erik, but I don’t want his spite. So I’ll watch him do his thing stoically and then offer some praise when he’s done.

What’s the lesson in all this? Why am I posting about it? Why did I spent so much time on narrative and so little time relating it to your life? Well, the point is pretty simple. When you have conflicts with people in a work environment — when you distrust, dislike, or even despise a colleague — fight the urge to categorize others as adversaries or enemies. Almost without exception their behavior, however capricious, childish or cruel it may seem to you, will make some kind of sense if you really get inside their head and understand how they look at the world. It may even be that you have to preface this to yourself, “if I were a petty, sadistic person…” So be it. However alien, you need to understand it. And I say this not to heal the world or advocate that you seek understanding and turn the other cheek, but to counsel you toward simple pragmatism. If you understand those around you, then you’ll understand what it is they want, and how you can steer interactions with them toward favorable outcomes.

So, take a few deep breaths and try to understand what makes those around you tick. It’s not the empathetic thing to do, but rather the practical thing to do.