Category: Independent consulting

Independent Contracting: How to Get There

The concept of self-employment is appealing for many technologists, but the path to getting there isn’t always clear. Independent contractors may cite several attributes of their work that they find preferable to traditional employer/employee relationships. The allure of money is obvious, but independents may also be drawn to project variety, an emphasis on new development over maintaining existing projects, and additional control over work/life balance.

Independent contracting has historically been a trend primarily among the more senior and advanced in the profession, but today it’s not uncommon to hear intermediate or even junior level developers in pursuit of independent work. Often the decision to become an independent isn’t premeditated so much as it is circumstantial. A lucrative contract offer is hard to refuse, and once a new level of compensation and freedom is reached it is difficult to accept a return to lower salaries. These ‘accidental contractors’ sometimes find themselves wholly unprepared for what skills and knowledge are required to build and operate a sustainable business.

Many seem to think that technical strength is the difference. Technical skills are clearly part of the equation and in unique situations superior skills can trump everything else, but many strong developers have failed as independents. Those that are thinking about exploring the independent contractor lifestyle in the future should start considering the topics below well before signing any contracts.

Communication skills – Independents need the ability to acquire clients, either through direct interaction with the client or through a broker/recruiter. Once a client is made, maintaining their business will depend upon clear communications regarding expectations, schedules, delivery, etc. Using brokers can help those with communication or social skills issues.

Varied skill set / independent learning / research – A skills inventory with some variety (languages, tools, frameworks) is fairly common with successful contractors, although advertising an unrealistic variety will hurt credibility. Independents have more incentive to invest off-hours learning new skills and keeping an eye on trends in the industry.

Comfort with interview process – For those in the salaried employment world, one great interview can result in years of work. Depending on contract durations, independents can find themselves in some form of interview several times a year. Anyone hoping to be successful in contracting must overcome discomfort or anxiety in interview settings.

Relationships – Successful independents usually know (and are known to) a number of people spread across various employers. Senior level contractors may have developed hundreds of relationships over time without any targeted networking efforts, while younger entrants will likely need to reach out to strangers. A lack of professional contacts is a barrier to entry for junior technologists and will negatively impact sustainability for senior contractors.

Basic sales - Advanced sales skills are unnecessary, but an understanding of what a close is and learning a few different ways to close will be helpful.

Basic marketing, brand management – Contractors have a brand, though many don’t think of it that way. Independents should pay attention to making their brand more attractive. Speaking engagements, tech community leadership, and publication/blogging are a few ways to increase visibility and potentially become a recognized authority.

Focus on billing – Independents become frustrated when they realize that running their small business is more than just writing code. Taxes, insurance, contract review, time sheets, invoices, and expense reporting eat into time that would be better spent as billable hours. Successful contractors try to maximize billable time and often outsource (or automate) tasks when possible.

Negotiation – When using a broker it is customary that they handle negotiation with the hiring entity, but an independent will still need to negotiate rates with the broker. A sum as small as a few dollars per hour quickly adds up over long client engagements. Negotiations for salaried positions can be easier due to the number of components that a company may be willing to adjust (salary, bonus, stock, etc.), but for contractors the negotiation is almost always a single figure.

Why You Are Overpaid

I wrote Why You Make Less Money in early 2013, which attempted to account for the many reasons some technology professionals make less than others with similar qualifications. Underpaying employees (defined as below market rate, which can admittedly be difficult to truly know) will cause problems for both the employee and his/her employer, but overpaying also creates some challenges on both sides that are often overlooked.

Rarely do I encounter someone in this industry who openly acknowledges being overpaid, but when it happens the conversation is not what you might expect. The realization of being overpaid is typically not met with a sense of pride or accomplishment, but rather a sense of fear. One explanation for the negative reaction is that the discovery is usually made during a job search (active or passive), where someone finds several employers are unwilling to approach their current compensation.

I am not suggesting that you should turn down job offers that are significantly above what you know is market rate, and taking advantage of market fluctuations is expected to some degree. However, there are three main dangers when it comes to being overpaid.

1. You’re locked in to your job unless you take a pay cut. Acknowledging that you are overpaid may not help.
2. You based your lifestyle on an unrealistic earning expectation.
3. You are likely first to go when rates normalize or the employer has financial difficulty.

If you are overpaid, it is vital that you recognize the anomaly and you should not base important financial or career decisions on current income.

It is useful to look at some possible explanations as to why one may be considered overpaid. (and how common it is)

Consulting or contracting dollars – In the technology world, these complicate market rate. Consulting companies and body shops charge big bucks, and they are able to hire salaried or hourly employees at levels well above what are typically paid to the client’s own staff. These premium rates and salaries are routinely explained by several contributing factors, such as the instability of contracting, the advantages of hiring temporary employees, or benefits plans. The compensation is also fairly easy to justify, as a company can easily afford to pay you 100K salary if it is known you’ll bill 2000 hours at $125 (250K).

The disparity between contractor/consultant pay and traditional employee pay primarily becomes an issue when someone makes the move from one world to the other. Most would expect to increase or maintain their compensation when changing employers, but that is usually not the case for contractors or consultants switching over. This is also why you may witness contract-to-hire employees trying to extend their contract period before conversion, as they are likely about to take a pay cut with little difference in any other aspect of the job. Very common

Unique combination of skills with unusual value to a specific company – An experience profile that is highly valued by one firm is much less valuable across the general market. An applicant with significant experience using every component of a company’s stack that also possesses highly-specific domain expertise may receive an inflated offer that won’t be matched by other employers. This situation is compounded when there are known competitors that value an identical skill set, and the cost of losing the employee will negatively impact the business. Rare

An employer early adopts and banks on a new technology – This is not dissimilar to the explanation above, with the exception that it is one particular skill that creates the variation. New hyped languages and platforms tend to cause spikes in demand that are impossible to fill with experienced workers, which temporarily raises wages above what they were and what they will likely be in the future. This creates a short-term seller’s market. Very common at any given time for certain skills

Unattractive employer – Companies that develop a poor industry reputation may resort to paying (and advertising) compensation above market in order to attract candidates. Other than promises of a brighter tomorrow, the easiest element to quickly alter is usually pay. A firm’s infamy may be the result of overworked staff, bad press, or even accumulating technical debt, and public opinion often remains negative long after the ills are repaired. Common

Poor benefits, limited perks – Job seekers tend to focus on salary and not overall value when comparing job offers. Part of this is ego-driven, as you are unlikely to brag about your firm’s high 401(k) match or insurance premium contribution at a cocktail party. Some companies recognize this and will scale back benefit offerings in order to maximize cash compensation and promote the perception that they are paying above market rate. This is not exactly overpaying when we consider the total package, but the statistics and surveys that provide market data primarily depend on cash compensation. Rare

Long employment tenure – Large organizations that schedule regular cost-of-living and salary increases into employment contracts often find themselves paying above market rate. Somewhat common for large firms

Compensated to take a chance on something risky – Startups that do not offer any form of equity or options to new hires may find themselves overpaying for talent. Employees that remain during or immediately after an acquisition will often be offered retention bonuses, which may indicate the company’s acknowledgment of uncertainty for future employment. Common

Counteroffer (upon resignation) or pre-emptive counteroffer (they knew you were looking) – Counteroffers may just be a corrective measure for long-term retention that bring an employee up to market rate, but in some instances a counteroffer is a method for only the short-term retention of an employee due to the inopportune timing of their resignation. In the latter case, compensation is often forced above market rate to ensure retention and project stability. The employee’s value temporarily spikes during key moments in a project, and a resignation with counteroffer at any key moment can result in overpayment. Once the project/goal is attained, the employee’s value returns to market rate but salary does not. Rare

CONCLUSION

Being overpaid is only a problem when you aren’t aware of it or sometimes when seeking new work. Research market rates for your skills and keep tabs on compensation trends in the industry. If you receive multiple offers below what you perceive as your market value, get some professional opinions from recruiters or colleagues.

Discuss on Hacker News

Why You Make Less Money

Have you ever had a conversation with a fellow technologist that you felt wasn’t quite at your skill level, and at some point you discovered that she/he makes $20,000 more than you do? $50,000? As someone who has had a great deal of access to the salary and compensation details for thousands of software engineers over many years, I can report that there can be significant variation in salary between technologists with almost indistinguishable skills and qualifications. This may not be news to some, but the reasons might not be obvious to professionals in the field, particularly if someone has only been exposed to a small subset of industries or companies. Many of the explanations are somewhat unique to this industry or just more prevalent in the software world. Regardless of whether or not money is a primary motivator in your career, it is still useful to understand why others may be earning more (and what you can do to join them).

money

What are some possible explanations as to why someone equally or less-qualified makes more money?

  • Public image and intangibles – An average technologist may be compensated above more productive co-workers if there is some advantage that the company sees in that person’s employment. Community influencers such as open source project leads, conference organizers, meetup/user group leaders, speakers, and authors may all fall into this category. In business this is the concept of goodwill, where an asset has a higher value due to an intangible. Google’s high profile hires of James Gosling and Ray Kurzweil and Dropbox’s hiring of Guido van Rossum came with a certain level of goodwill bundled. On a local level, a company may believe that hiring the local Python group leader could make hiring Python pros easier and less expensive, which may justify a higher salary independent of the developer’s quality or production. Regulars on the conference speaker circuit can ask for a premium simply based on the PR provided every time their bio is published on an event website.
  • Negotiations and raises - Software professionals are often stereotyped as unskilled negotiators or uncomfortable in situations where they are seeking additional salary or perks. This first requires the courage to ask for more (in the form of a raise, or a higher starting salary for a new hire), and then the knowledge and skill to ask effectively. As a recruiter I typically handle salary discussions for my candidates, and I know that for most engineers that particular service is highly valued. A difference of even a few thousand dollars as a starting salary has the potential to dramatically alter your lifelong earnings. Remember that this number is regularly used as the basis for bonuses and raises, and most importantly it usually has some bearing on salary at your next job. Think of starting salary as the principal level for compound interest.
  • Market knowledge - Remember that conversation alluded to in the first line of this article? If you had three or four similar interactions within a year you may have noticed a pattern and it seems your friends might know something that you don’t. Many engineers aren’t even aware that they are paid below market rate because they just trust that they are fairly compensated and have no reason to investigate further. I have had conversations with experienced and well-qualified developers who are floored when they learn that they have been paid 20-30% below market rate for many years. Know what you are worth.
  • Self-promotion - Even if the high skill level is there, many technologists are either unable to properly express their own expertise and accomplishments or feel awkward tooting their own horn. The ability to market yourself often starts with a powerful résumé and a confident interview presence when trying to maximize salary at a new job. When staying with your employer, self-promotion requires the savvy to make your accomplishments known without looking like a braggart.
  • Consulting differential (both independent and staff) – Developers that are independent consultants charge clients a premium to account for expected frictional unemployment and to address the fact that a temporary employer typically will not make any real investment in the career of a temporary employee. It is rare to see independent consultants sent to conferences or trainings by their clients, and independents do not always get the most desired projects. Independents are also on the hook for their own benefits, retirement savings, etc. Salaried employees of consulting firms are also often paid above other similarly qualified professionals, as it is easy to measure a consultant’s contribution to the firm’s net revenues based on bill rates, billable hours, and their compensation package. There may also be regular travel or variable commute that tends to inflate salaries. Salaried consultants who know their bill rate, utilization, and total compensation package have a distinct advantage when trying to justify their value (and salary) to an organization.
  • Profit vs Cost Centers - Similar to consulting, companies that use technology as their main source of revenue tend to pay higher than firms where it is considered a cost center. Building software products that will be sold usually results in higher salaries than building systems for internal use. There are some major exceptions, but those tend to be specialized to industries where technology utilization is a key differentiator in the performance of the firm’s primary business interests (trading systems come to mind).
  • Rare skill – The premium paid for even one single rare skill among many common skills can be substantial. When a new language, framework, product, or platform is hyped as the ‘next big thing’ and adoption begins, even junior level talent with that skill can earn above more generally qualified individuals. This is simple supply and demand for a scarce resource. In years past the premium was greater for rare skills, as companies today seem more confident in their ability to train an existing resource than to hire someone new and much more expensive.
  • Time expectations – Some employers pay a premium because of the high expectations they place on hires. Unless you have some vested interest in the success of the company (stock, profit sharing), a 70 hour work week is probably unacceptable unless you are being compensated accordingly for that level of commitment. Positions that require employees to be on-call are also commonly paid above market. Work/life balance has a price, and some are willing to sell.
  • Long tenures at big companies – Many large organizations have systems of pre-determined fixed raises and regular bonus or vacation increases for certain milestones. The hire’s value to the company increases over time as they become highly specialized in a certain environment, and the concept of golden handcuffs is born. The downside of this for the employee is that it often leads to compensation well above true market rates, which makes it nearly impossible to find new employment at a lateral compensation rate.  When these types are victims of a layoff, the result is brutal.
  • Location – No explanation needed, I hope.

Conversely, here are a couple explanations as to why someone might make less.

  • Startups – Startups often exchange equity for cash compensation. These employees are often earning less for the opportunity to receive a big payout. Candidates negotiating with startups must place their own figures on the value of the equity, which is a difficult task. Startup compensation today is much more competitive with large companies than it once was, at least in my experience.
  • Benefits, work/life balance – Since most professionals refer to compensation in terms of cash paid, employees that receive significant value in their benefits and perks may be mistakenly considered underpaid. Generous paid time-off, tuition reimbursement, and childcare can be major expenses that are covered by some employers and often not included in discussions. 
  • Experience value – The opportunity to work for certain companies, to learn a valuable skill, or to be on a highly-regarded team is a reason that many engineers may sacrifice some salary, and shops that provide that ability may leverage that during negotiations. Many developers are entirely comfortable with accepting compensation below market as a trade-off for the positive effect on their career and marketability.

Conclusion:

If the topic of compensation comes up with other technologists, consider that there may be several explanations and hidden factors for the disparity between numbers. When exploring new opportunities, keep in mind that the amount of your offer is not solely based on your skill level relative to others or the value the company feels you will provide. In situations where several of these explanations apply simultaneously, the numbers become even more skewed.

If you found this post useful, you may find my ebook Job Tips For GEEKS: The Job Search even more helpful.   You can also follow Job Tips For Geeks on FacebookTwitter, or Google+.

Overqualified is Overdiagnosed

I’ve been inspired by comments on prior articles to discuss the sensitive topics of ‘overqualification’ and ageism.  My Why You Didn’t Get The Job and Why You Didn’t Get The Interview posts were republished on a few sites, resulting in some active debates where at some point a participant states that the real reason that they weren’t hired was that they are overqualified for all the jobs out there, or they were victims of ageism.  In my opinion and experience recruiting in the software engineering world, the term overqualified is used too widely by companies (and then inaccurately cited by rejected candidates), and  claims of alleged ageism are often something else entirely.

Before we begin, I acknowledge that companies want to hire cheaper labor when possible, and some shops care less about quality products than others.  And for the record, I’m over 40.

By saying you are overqualified for jobs, what are you really saying?  “I am more skilled or more experienced than the job requires.”  That feels kind of good, doesn’t it?

SPOUSE:  How did the interview go?
JOB SEEKER:  I didn’t get the job.
SPOUSE 1:  Oh, I’m sorry.  What happened?
JOB SEEKER:  Unfortunately, it turns out my skills are simply too strong.

Of course rejection hurts, but to tell your spouse (and yourself) that you were turned down because you were too skilled or too experienced is much less bruising on the ego than the alternative.  For companies looking to eliminate candidates, using the word overqualified may take some of the sting and fear of retribution out of the rejection.  But is it true?

Think about this scenario for a second.  You are trying to hire a software developer and you estimate that someone with say five years of experience should be able to handle the duties effectively.  A candidate is presented with fifteen years of experience that has all the attributes you are seeking.  This person should theoretically perform the tasks quicker and even take on some additional workload.  Do you really think a company would not hire this person simply because he/she has those additional years of experience?  I would argue that is rarely the case.

Question:  Is ‘overqualified’ a code word used by managers/HR to mean other things?
Answer:  ALMOST ALWAYS

What can overqualified actually mean?

(listed in order from most likely to least likely, IMO)

  • Overpaid/over budget – If your experience > what is required, it generally becomes a problem when your salary requirements are above what is budgeted.  It’s not that you are classified as overpaid in your current role, but that you would be overpaid for the level of responsibility at the new job.  I list this as the most likely culprit because I often see companies initially reject a candidate as overqualified, then hire that same person because of a lack of less experienced quality talent.
  • Stagnant – Candidates who have worked for many years as a developer in a technically stagnant and regulated environment will often not thrive in less regulated, more technically diverse firms.  The conventional wisdom, right or wrong, is that you can’t release the zoo lions back into the jungle once they’ve been tamed.
  • ‘Overskilled’ - If your skills > what is necessary for the job, an employer may fear that the lack of challenges provided will bore you into looking for more interesting work in the future.  Hiring a tech lead to do bug fixes could lead to a short stint.  There is emerging evidence that shows skilled workers do not exit less challenging jobs quickly or in high numbers, but hiring managers are not quite ready to abandon the traditional line of thinking.
  • Threatening – If your experience > those conducting the interviews, there could be some fear that you could be a competitor for future opportunities for promotion.  If a start-up is yet to hire a CTO, the highest geek on that firm’s food chain may be jockeying for the role.  This may sound a bit like a paranoid conspiracy theory, but I genuinely believe it is prevalent enough to mention.
  • Too old – Ageism is a real problem, but in my experience in the software world, ageism is also widely overdiagnosed by candidates who think the problem is their age when in actuality it is their work history.  Most of the self-diagnosed claims of ageism that I hear are from candidates who spent perhaps 20+ years working for the same company and have not focused on keeping their skills up to date (see stagnant above).  I can’t say that I’ve ever heard a claim of ageism from a candidate that has moved around in their career and stayed current with technology.  The problem often isn’t age, it is relevance.

Some of the best and most accomplished/successful software engineering professionals that I know are over 50, which is older than some of the candidates I hear claiming possible ageism.  One trait that the overwhelming majority of these engineers have in common is that they didn’t stay in any one place for too long to stagnate.  I don’t think that is a coincidence.

If you are an active job seeker that is continuously hearing that you are overqualified, what can you do to improve your standing?

  1. Rethink – Try to investigate which of the meanings of overqualified you are hearing most often.  Is your compensation in line with what companies are paying for your set of qualifications?  Do you present yourself in interviews as someone who may become easily bored when your work is less challenging?  Are you making it clear in interviews that you want the job, and you explain why you want the job?
  2. Retool – Make sure your skills are relevant and being sought by companies.  Invest time to learn an emerging technology or developing some niche specialty that isn’t already flooded.
  3. Remarket – Write down the top reasons you think a company should hire you, and then check to see if those reasons are represented in your job search materials (resume, email application, cover letters).  Find out what was effective for your peers in their job search and try to implement new self-promotion tactics.
  4. Reboot and refresh – Take a new look at your options beyond the traditional career paths.  Have you considered consulting or contracting roles where your guidance and mentoring skills could be justified and valued for temporary periods?  Are there emerging markets that interest you?

Terms like ‘overqualified’ and ‘not a fit’ are unfortunately the laziest, easiest, and safest ways that companies can reject you for a position, and they almost always mean something else.   Discovering the real reason you were passed up is necessary to make the proper adjustments so you can get less rejections and more offers.

Geek Independents

The decision to become an independent consultant in the software world is not something to be taken lightly.  Although the work you will be doing on the job is probably very similar if not identical to what you have done as an employee, you really need to conduct an honest and thorough self-examination to determine if you are cut out for the demands of running a successful consulting business.

After years of working with many independent consultants to help them find gigs, and in many cases serving as counsel for engineers considering the transition from employee to independent, I have compiled a list of traits that are necessary in order to thrive in today’s marketplace.  Conveniently for me, the necessary traits are often associated with body parts (which helps with extended metaphors, bad puns, etc.) – so I give you “What it Takes to Be an Independent Consultant From Head to Toe (but not necessarily in that order)”.

The Stomach – Obviously it takes some guts to leave a steady job and take the plunge into independent work. You need to have confidence that your skills will be in demand by clients, and that you will be able to reach your target audience (hiring managers) either through your own network or via agents/recruiters that you can trust. It also helps to understand that sometimes independents will be ‘between gigs’ – many indies appreciate the ability to take a week or two off before starting a new assignment, but if not carefully choreographed the beauty of an independent’s flexibility can become an undesirable period of unemployment. Being able to digest some weeks without a paycheck is a necessity, even if it never actually happens to you.

The Teeth – Chances are you’ll be asked to cut your teeth on some new technology on every gig. Never expect to be using the same set of languages, tools, databases, operating systems, etc. on every project. The ability to learn new technologies quickly and ‘on the fly’ is essential to your success as an independent. Ask the client what tools you should brush up on a couple weeks before the project starts, and do a little research to hit the ground stumbling if not running.  Invest additional time to keep up with trends and learn new tricks that may be valuable on future gigs.

The Head – We’ll assume you have the head for technology – if not, please stop reading this now and get back to your work! In addition to knowing your way around code, you’ve got to at last have some mind for business. Most tend to leave the tax and legal stuff for the professionals (a decent accountant and lawyer will save you time – good ones might save you jail time!). You also need to have at least some idea of the numbers behind independent work. What do I need as an hourly rate to maintain or improve my lifestyle? Did I factor in some costs that I may not have worried about as a salaried employee (insurance, mileage, parking, taxes)? How much time can I afford to take off without hurting my bottom line?

The Legs – Finding a great gig can take quite a bit of legwork, especially if you decide to go it alone and not use an agent. Even with an agent it can take some time and effort to secure a project, so be prepared to take the search for new assignments just as seriously as the job itself. Be organized in your search, reach out to past clients and touch base with an agent you know and trust. Finding a five year or even two year project is extremely rare, and many gigs are in the six month range.  Thankfully, your job search activities should only happen a couple/few times a year at most.

The Feet – Unless you can find telecommuting positions, independents may have to be more open to locations that may be less than ideal from a commuting perspective. It is always better in the long term to take the project 40 miles away that offers a new marketable skill over the Cobol gig next door. Openness to a bit longer ride will surely enhance your ability to stay utilized/paid.

The Heart – You are the sole representative of your company, so you need to make every interview and client interaction a positive experience even if you don’t get the gig. Walking out of/canceling interviews, leaving assignments without proper notice, or presenting yourself as negative or unfriendly can get you a reputation with both hiring managers and agents, and that will hurt your chances of securing future work. Don’t burn any bridges! Show some love to your clients and they’ll keep you coming back for more work.

The Nose – Getting stuck on a doomed project will happen to almost every independent during their career, but having a nose to smell out rotten gigs will save lots of headaches. Ask the right questions in interviews to learn as much as possible about the team, management, customers, and expectations for delivery.  Then decide if you have a chance to be successful.

The Elbows – Rubbing elbows with fellow software professionals and staying in touch with old contacts should keep you off the bench, and tools like Twitter and LinkedIn make it that much easier to keep connected. Foster relationships with other independents that could potentially find you work when necessary.  If you are active in some open source communities, developing personal relationships with other committers and contributors could lead to referrals.

The Ears and Mouth – The ability to listen to and understand your clients’ requirements is perhaps the most important skill required to be successful as an independent. At the rates you are being paid, there is little margin for error. Get a good req and ask the necessary questions to be sure you are clear as to what is expected and when it needs to be delivered.

The Face - Many successful independents have a reputation in the community as having deep expertise in one certain subject, or while others are regarded as great and well-rounded engineers.  How did they achieve that notoriety?  Independent consultants often choose to be very conscious of their ‘brand’ and to proactively take time to help build and maintain that identity.  Blogging, authoring books or articles, presenting at conferences and user groups, or simply being seen at certain industry events are ways to keep your face out there for potential customers to see.

Do you have the necessary traits to run a successful independent consulting business?

Note:  If this content sounds remotely familiar, I originally wrote parts of this article for a newsletter in 2008.  I made several edits and updates for this posting.