Category: Uncategorized

Salary Negotiation For Geeks

negotiate2

Advice on salary negotiation is abundant, but material written for the general public may not always be applicable to a technology sector where demand is high and the most sought after talent is scarce. There is quite a bit of misinformation and the glorified mythology of negotiation is often mistaken for the much less interesting reality where little negotiation actually takes place.

Let’s start by going over a few “rules” that are often thrown around in these discussions.

Always negotiate

Using absolutes is never a good idea (see what I did there?), and there are definite situations when you should not negotiate an offer. For example, entry-level candidates who are considered replaceable with other entry-level candidates often do more harm than good by negotiating, particularly when the job being offered is among the most desirable. We will cover when you should and should not negotiate a bit later, but there are clearly some conditions when it’s not a great idea.

There’s no harm in asking for more/Doesn’t hurt to ask

Actually, sometimes it does. When you propose a counteroffer, there are only a few realistic outcomes.

Continue reading

How to Prevent Crying During Your Technical Interview

endcall

A recent blog post Technical Interviews Make Me Cry by Pamela Fox tells the personal tale of a technologist and conference speaker who gets a Skype/Stypi interview for her dream job, becomes stumped on a technical question, breaks down in tears, almost abandons the interview, fights through it, and eventually gets the job.  Everyone loves a happy ending, and it was courageous for the author to tell her story so publicly as a service to others.  However, I think some of her takeaways and the advice she provides can be improved upon.

So how can we prevent crying or freezing up during a technical interview?

Let’s start with the author’s advice.  She offers that interviewees should prepare for the format and not just the material, and writes
Continue reading

Recruiters Are Pretty (and How to Find One)

You would need to be blind not to notice that tech recruiting firms are now tending to hire young and attractive female rookie recruiters, which is an obvious strategy (similar to the so-called “booth babes” at trade shows) to get the attention of the predominantly male tech audience.  Some of the LinkedIn recruiter profile photos border on racy, and perhaps sad.  I should confess here that I too use a LinkedIn profile photo, which is probably best described as smug (included below, for science).

014

Since I started blogging I have been regularly approached by readers living hundreds of miles away asking if I know a recruiter in their geography that might be able to help them find new work.  For every ten people that hate on recruiters, there are at least a couple that see value.  Many tech pros complain that they are only being approached by the aforementioned 22 year old crowd with an average six months of recruiting experience, sending canned messages with a pretty LinkedIn profile photo.  How much solid career advice can you get from a new liberal arts or PE grad who was waiting tables until a couple months ago?  Very little, and I should know – because that was me 15 years ago (except Economics and bartender).

I deal with internal recruiters that work at my client companies, but readers want intros to people who do what I do.  These internal recruiters only represent their company, whereas agency recruiters like me can provide several job opportunities.  Instead of just replying with “Sorry, I don’t really know anyone in your area”, I thought I’d provide some thoughts on methods to find someone you will want to work with in your job search.
Continue reading

LinkedIn Spam (?) and Recruiters: A Guide for Geeks

LinkedIn accept

Recruiters take quite a bit of heat from those in the tech community based on what many refer to as LinkedIn spam, and the definition of spam within LinkedIn’s context seems to be fairly wide. Recruiter shaming in public forums and blog posts about making ridiculous demands or nasty responses when being presented a potential opportunity are usually popular among a certain set.

Some potential recruits are a bit more creative, like making the Contact Me on their blog a puzzle that most recruiters will be unable or unwilling to solve. I for one truly admire his creativity and think this is a great way to keep recruiters from knocking based on your desire to have a web presence. +1 for allowing both a Python and Haskell option, which just makes me want to hire him more!

As I’ve said before, when the shaming and mockery of recruiters is deserved I’m not against it – I’ll grab my popcorn and watch. Although I probably use LinkedIn much less than others in my industry I am cautious to try and keep my use appropriate. Bashing recruiters is becoming a bit cliché, and I think the backlash related to LinkedIn in many cases seems unwarranted for a few reasons.

Many technologists use their LinkedIn profile as a way to attract employers – If you go to a publicized networking event and I approach you with a quick, “I’m Dave!  Nice to meet you.”, punching Dave in the face is probably not an appropriate response. The environment you place yourself in (a networking event) should create the expectation that someone may try to engage you. Independent contractors, unemployed tech pros, and recent graduates often use LinkedIn specifically as their preferred method (over say Monster or Dice postings) of exposing their experience to recruiters and potential employers. If you are not using LinkedIn for this purpose, it might be useful for you to include that information on your profile.

It can be pretty confusing for a recruiter to get a nasty response from some LinkedIn users and a warm response from others, particularly when both profiles could be virtually identical. LinkedIn has products specifically targeted to recruiters and hiring entities. Being contacted about jobs on LinkedIn shouldn’t be considered a surprise or an infringement on your rights. LinkedIn is pretty clearly trying to allow people to find and contact you for this purpose.

LinkedIn limits how many characters you can include in an invite – If you’ve been complaining that the recruiter who pitched you a job through a LinkedIn invite gave you vague information, I’d encourage you to try pitching someone a job at your company through two tweets (and no URLs). Not to mention, you of course want to know why this recruiter feels you might be a good fit for the job. And you want to know about the job itself.  Funding status?  Tell me about the founders at least?? Chances are you will have to leave out something the potential hire would find important if you are limited to about 300 characters.

If a recruiter finds you on LinkedIn, the only way to contact you may be an invitation to connect – Most recruiters don’t expect that you will want to connect to them (as if connecting has some sort of implied relationship, which in most cases it clearly doesn’t) after a single relatively anonymous interaction on the internet. The majority of LinkedIn profiles for technologists don’t include an alternative contact method for those they are not connected to already. If the recruiter is unable to find other contact information the invitation to connect may be the only way to reach you, even if the recruiter feels that connecting is somewhat premature based on the lack of a prior relationship.

What to do when a recruiter sends you a LinkedIn invitation to connect, and how to prevent it?

Some thoughts

Remember that you are fortunate – You have a job that people are falling over themselves to hire you to do. The inconvenience of clicking Accept or Ignore is about as first world as a first world problem gets.

Don’t respond – Simply deleting the request takes hardly any time at all. If you get a lot of these requests and deleting them takes a bit more time, please see the point above.

Respond, but don’t connect – If it is something you might want to discuss but you aren’t ready for the whole level of commitment that a LinkedIn connection surely brings, just send a response and take the conversation to email. No harm done.

Create a canned response – Write a few sentences that you can cut/paste into a quick reply, explaining if/why you were offended and what (if any) type of opportunities you might want to hear about in the future. Recruiters who value their reputation will try and take your recommendations to heart (for the minority that have one) and be more courteous in the future.

Clarify on your LinkedIn profile that you don’t want to talk to any recruiters –  Why is this necessary? Because you are on LinkedIn. If recruiters disobey this request, shame away.

CONCLUSION: You have every right to complain if you are approached for a job that is not at all appropriate to what you do, and you can certainly shame recruiters that ignore any notices you posted on your profile to try and prevent such contact. But let’s not call every LinkedIn contact about a job LinkedIn spam – for most, that is exactly what LinkedIn is there for.

Like my writing(s)?  I wrote a book.

Why You Didn’t Get The Interview, Part II

In August 2012 I published a blog post Why You Didn’t Get The Interview, which received a good bit of attention from readers and was republished a few times (most notably by Lifehacker).  Of course one article could not list every possible explanation that an employer or recruiter might use to discard a résumé, so I decided to revisit the topic once again.  This is not intended to be a comprehensive list, but rather an addendum to the previous post that may help explain a lack of response to your job search.

No submittal content – Online applications often consist of several fields and check boxes that don’t always give job seekers an opportunity to express interest or differentiate themselves.  However, when you send a résumé via email or are provided some space within an online application to craft a custom message, you are foolish not to take advantage.  Simply sending a résumé without any supporting information about your experience or interest in the job comes across as lazy or aloof, and can give the appearance that a job seeker is simply blasting résumés indiscriminately (perhaps even in an automated fashion).  SOLUTION:  Tell the employer at least one or two things that drew your attention to the job and company.

Multiple applications to the same employer for vastly different roles – Sometimes I will open my inbox and find an email from a job seeker about one job that could possibly be a fit, and then find another four or five emails from the same applicant for other jobs that are not remotely connected to the candidate’s experience.  This applicant may have received some attention if he/she only sent the one semi-targeted application, but the additional blind stabs have too many negative implications.  It typically signifies either a lack of self-awareness regarding qualifications, immaturity, or desperation.  SOLUTION:  Before submitting your résumé, check several of the company’s listings to make sure that you are applying for the one or two jobs that best fit your experience and goals.  If you have a strong desire to work for a specific employer, sending a targeted application to one or two listings is much more effective than spamming your résumé to all of their vacant slots.

Many small red flags – My original article last year referenced 14 fairly obvious reasons that job seekers are not interviewed, but often it’s not that simple.  Many times a résumé/application package will contain a handful of items that would not be a problem when considered individually, but when combined add up to a rejection.  The recruiter or hiring manager will feel that too many special circumstances would have to occur that make the candidate’s hire unlikely.  Perhaps a candidate has a slightly elevated salary expectation, requires relocation assistance, is minimally qualified, and lacks any easily identifiable positive indicators of talent or ability that stand out from others.  An applicant with only one of those characteristics would likely be considered, but the aggregate picture makes it too much of a longshot.  SOLUTION:  There is no real fix to this.  You could always try to explain what could be perceived as a red flag.  For example, if you are relocating to a specific area, make it clear why you are looking in that specific market to avoid being viewed as someone open to jobs worldwide.  Displaying some level of interest or passion for the employer could also help overcome objections and get you a shot.

Personal reputation and your employer’s reputation – It shouldn’t surprise anyone that if you apply to firms where people either know you or are connected to those that do, a decision to interview will typically be based on how these contacts feel and talk about you.  However, your employer’s reputation may also come into play here as well.  If a particular company has interviewed multiple former employees of your firm without much success, chances are they will not waste time interviewing another.  As a recruiter, it is fairly common for companies to tell me “Unless they are outstanding I’m not overly interested in candidates from COMPANY, as we see many and have not had any luck.”  Your company’s reputation is more likely to work in your favor if you are employed by a firm known for having talent, but it seems the trend to discriminate against employees of certain shops continues.  I wrote about this a bit in a past post regarding discrimination by startups against workers from large enterprises.  SOLUTION:  Keep your personal reputation in mind when dealing with co-workers and particularly when leaving jobs.  Minimize stints at employers that have a negative reputation in your market.

Inconsistency – This can be the result of discrepancies between a résumé and cover letter/application, between a résumé and LinkedIn profile, or just something fishy in the résumé itself.  If you changed professions more often than Barbie (impressive list) or have travailed up the corporate ladder and come back down multiple times, your application will raise suspicions.  Candidates that list titles progressing from CTO to CEO and then down to Junior Developer will be scrutinized.  SOLUTION:  There isn’t anything you can do to change the past, but explanations could go a long way if you left an industry to pursue a passion.  Make sure all of your online profiles match your résumé details before sending applications.  Try to use job titles that reflected your actual duties if you worked for a small firm and had an inflated title.  Even if you were CEO or CTO of your dorm room software company, it may not be helpful to list the job that way.

Meh – Your qualifications and history are virtually identical to the others in the stack of résumés received.  You may have met what was listed on the job spec, but so did everybody else.  This is of particular importance for jobs where it is expected that most applicants will have similar qualifications, such as entry-level positions for new graduates or jobs that list highly generic specifications.  SOLUTION:  There has to be something different about you that you can add to give some positive spin to your candidacy.  Review the requirement again and try to find an area where your background exceeds the expectation, or a specific experience you have that others probably don’t.

coverpicsmallestMy ebook Job Tips For GEEKS: The Job Search was recently released and is available for $9.99 (reduced to $6.99 in December 2013) on iTunes, Amazon, Barnes and Noble, Google Play, and Kobo.  I can provide a PDF version for sale by request.

When To Leave Your Programming Job

I am often approached by programmers that are thinking about leaving their job but want to discuss to see if they are making a wise move.  These conversations are quite sensitive in nature and I do not take them lightly, as the decision is rarely easy to make and will have a lasting impact on the programmer’s career and livelihood.

The thought of potentially leaving a job is often accompanied by the fear of being labeled a job hopper.  In my experience, far more programmers tend to overstay their welcome and later experience difficulty with limited career prospects than those that move jobs too often.  As I’ve written before, some positive flow in career moves is expected and even desired by hiring companies.

Technologists often rely on the more common and obvious signs to leave their employer (company product failures, layoffs, or reductions in pay/benefits) as primary motivators for making an exit. One could argue that experience at a failing company can be infinitely more valuable than time spent at a highly successful shop.  Waiting for those alarms to sound, which could be false alarms, is a mistake for your career.

When should you think about leaving your job?

You are clearly the ‘best’ programmer at the company and/or have no teacher or mentor available – Many people may get this wrong due to overconfidence, so you need to assess your skills honestly.  Even if you acknowledge you are not the best, do you have access to others that you can learn from that are both able and willing to share their knowledge with you?  Your company may have hired loads of great talent, but if these individuals are too busy to help or not interested in dialogue you are no better off than working alone.

The technologies employed are static and make your skills unmarketable – The extended use of dated, proprietary, or very specific technologies can kill your marketability.  If the firm is still using very early releases of popular languages or frameworks this could be a good indicator.  Multiple years in a stagnant tech environment is much worse than the same tenure in a shop that consistently improves their tools.

You have accomplished nothing – This is often not your fault.  Perhaps your company is consistently delaying releases and never seems to deliver on time, where the problem could lie in the development process or management decisions and not on tech talent.  If you look back on your stay with the company and can not point to any significant accomplishments (given a reasonable amount of time), consider the reasons why.

You are underpaid with no upside – There are at least a handful of justifications to accepting compensation below market rate.  The ability to work with great people is probably the #1 reason, with learning a valuable skill a close (and related) second.  If you took less money with the expectation of a future positive that just hasn’t panned out, it’s time to look at your options.

You are consistently passed over for interesting projects or promotion, and your ideas are not considered – If you are rarely given the plum assignments and not even a candidate for higher responsibility roles, the company simply doesn’t value your service.  The firm feels you are doing enough to keep your job, but they do not see you as a true long-term asset.  Keep track of how often you volunteer for a new venture and the company response.

You are no better off today than you were when you joined the company – The phrase ‘better off’ can take on a few meanings.  Traditionally one might use better off to refer to improved financial standing (raises), but you should add more qualified as well.  If your skills, marketability, and compensation have not improved after a reasonable amount of time, you need to question why you are still there.

You see little change in what you do – A consistent and small set of responsibilities for long durations tends to be a career killer.  Working on one small part of a very large project/product is usually the culprit.

You have no inspiration – Many domains in software development might not be all that interesting to you personally.  In those situations, the technical challenge at hand or the opportunity to do something truly innovative may trump the lack of industry interest.  Building a website for an insurance company might not be a dream, but scaling for millions of users could make it fulfilling.  If you are finding no value in the work you do and lack any inspiration, there is probably something out there that will get you excited.

coverpicsmallestJob Tips For GEEKS: The Job Search ebook is now available in most ebook formats.  Find out more here.

Rethink Career Path

The baby boomer generation probably helped define the image of career path and trajectory for many Gen X and Millennials that followed.  It was incredibly common for the baby boomer to remain with one company for their entire career, possibly move up the proverbial corporate ladder, and retire with a pension.  The typical baby boomer’s lifespan may have looked like

college/military → entry-level → low level management → higher level management → retirement with pension

For engineers, the problems of traditional career paths may be compounded.  To ‘move up’ and maximize earnings often means getting further from what you do best or enjoy (code) and the result may be to leave jobs more often than you should.  Management responsibility is not always on the engineer’s wish list, yet that direction may be the best way to earn more. There is a career point where salaries plateau, and switching employers becomes unsustainable as a method of increasing earnings.

Considering that statistics show the younger generations  are typically switching employers every three years, two things are clear:

  1. Employer loyalty is dead, and has been replaced by either loyalty to one’s own career (hopefully this is the case) or just the need for new challenges (boredom).
  2. We need to start looking at alternative employment and earning models, career path, and trajectory in a different way.

Entry-level and junior candidates in the tech industry often ask how long they should stay at any given job, how to get into management roles, or what options they have in their career given a certain set of skills.  I’m always amused when entry-level developer candidates inquire about getting into management, as if they are trying to get out of coding before they’ve written one line.  It seems that most are focusing their questions based around traditional baby boomer type standards of career path and earning, while very few are even considering what alternatives may exist.  “Layoff victim?  Go find another job, of course!”  “Not making enough money?  Get promoted or find someone to pay you more!

Aren’t there some other possibilities that one might at least consider?  In technology, the range of opportunities for earning are substantial and alternatives to the standard employer/employee mindset are somewhat vast.

As opposed to approaching your career as simply the search for new jobs, think about career for just a minute as a collection of ways to earn money while building your skills and marketability.  One of those ways is obviously to take a full-time job slinging code for the bank or insurance company.  That works for many people.

But what if your job isn’t paying you enough?  Naturally, you either try to get a promotion (which for engineers is often into a role that may make you less happy) or you go out and get a new employer.  Did it ever cross your mind, even for a second, to get a second job?  This second job could take on several shapes, so perhaps we should call it a second source of revenue so we don’t lead people to believe this will require 80 hours a week.

Or what if your job is not fulfilling professionally?  Do you ever hear about actors who will take peanuts to do the indie films they want and make up for it by doing a few summer blockbuster movies for millions?  This isn’t a perfect analogy, but it’s a valuable mindset.  I know independent contractors who may have three or four clients at one time, with varying hourly levels of commitment to each, different rates, and a range of project technologies.  It’s not easy to do, but it can be done.

If your day job is technically unfulfilling or not providing the necessary financial rewards, at least consider some of these possible options before taking the usual steps (listed by perceived level of difficulty, starting with least difficult).

Day job + moonlighting (contract) –  Could you make a few extra bucks and perhaps learn a new skill through a paid side project ?  If you have contacts that own businesses, they may be a good source for this type of work.  This could cure both your boredom at the day job and being underpaid.

Contracting – It seems the decision to go into contracting is often not made consciously, but rather based around a specific opportunity that leads to a contract and then an acquired appreciation for the lifestyle and money.  A proactive approach to entering contracting as a full-time endeavor is probably more effective, as you need to think like a business owner.

Contracting, multiple concurrent clients – This usually requires having a widely respected set of technical skills (a ‘name’), a network, and some basic business knowledge (not to mention time management and negotiating knowledge).  Not easy, but something to strive for and aspire to be.  Doing 50 hours of remote work a week on three different projects and getting paid for every single hour is probably fairly enticing for most.

Day job (full-time or contracting) + product – Could you supplement your primary income by creating some sort of product for sale?  Your product could be mobile apps, a web app with a subscription model, or even a tech book.  This could be time intensive at first and obviously requires some creativity for ideas, but also financially rewarding.

These alternative arrangements are not for everyone, and they may come with some associated risk.  The world of employment, especially tech pros, has changed significantly over the past two decades.  It’s time to start thinking differently about career paths and traditional employer/employee models.  Whether or not these options are right for you, they are worthy of consideration.

Job Tips For GEEKS: The Job Search is out and available in most ebook formats.  See the book page for more info on where to buy.