One of my readers wrote in to me with the following message:

Would you study and write about why programmers are not subject to the protective labor laws of society? When and how did the term salaried become coequal with slave?  Look at the change in contracting laws where independent programmers were not accepted by corporations and the middlemen got the profit and the programmers got to be salary-slaves.

I asked Justin James, our Programming and Development blogger, if he would like to take a crack at covering this topic. He gladly agreed. Here is what Justin had to say:

There are a large number of underhanded and often illegal labor practices in the software development industry, and the abuse of “contractual” workers is amongst the most prevalent.

Before we go any further, please keep in mind that I am not a lawyer, and none of this is intended to be treated as legal advice. I’m just telling you about my personal experiences and directing you to information that I found on government Web sites.

Here is a small sample of these kinds of abusive relationships that I have personally experienced or witnessed:

  • H-1B visa mills (think: “puppy mills” with immigrant workers instead of dogs) that lure workers to the United States, and then hold the requirement of employment over their heads to force them to work for sub-par wages and often in illegal circumstances.
  • Staffing agencies getting paid by the hour, but paying their workers on a salary and forcing them to work grueling hours.
  • The old “comp time” ruse where hourly workers are not being paid overtime wages as required by law, but instead granted comp time. While this would normally be legal, everyone knows that the comp time will never be taken due to the demands of the project, so the worker is effectively working for free.
  • Being told by the client that overtime is mandatory, but the contract agency then rejects the timesheet and claims that the overtime “was not authorized.”
  • Laying off swaths of long-term employees because an “outside vendor” was brought in to do the work. During the exit interviews, they were told that they could be hired by the outside vendor to do their old job, but they’d take a deep pay cut, lose all time accrued, receive inferior benefits, and no longer be able to move up in the ranks unless they were “converted” to employee again. The kicker? The “outside vendor” was owned by the company!

Disgusting, isn’t it? The ones who victimize immigrant workers are the ones who burn me the most, because those workers often have families counting on them, have dreamed of coming to the United States for ages, are not aware of the laws, have few friends or family ties to fall back on, possibly have communication barriers, and may even be happy with the arrangement in comparison to their previous circumstances.

But even for U.S.-born programmers, we too often do not know our rights. Or when we do, we find it easier to just sneak out the back door and find another job than to bother going through the work to find some justice. For example, nearly every developer I know is under the assumption that programming is always going to be exempt from overtime laws. Well, that’s not entirely true. Here are a few examples of software developers actually getting overtime pay:

As you can see, this is fairly endemic. And, more importantly, justice is achievable. How do you really know if you are entitled to overtime? Well, it is not so cut-and-dried as one would hope. The key lies in your responsibilities and, partially, your compensation levels. The IRS divides this decision into three categories:

  • “Behavior Control” – Can the business tell you how to do your job?
  • “Financial Control” – Does the business control how you can make your money or business decisions?
  • Type of relationship – How does this relationship exist on paper and in reality?

In addition to considering workers “independent contractors,” there exists a particular attitude in many companies that a salaried employee must be at the employer’s beck and call. First, a bit of clarification around the word “salary.” A “salary” simply means that you get paid the same amount each week, and it has no bearing on whether or not you are truly eligible for overtime pay. If you are not eligible for overtime pay, then you are an “exempt” employee. It is possible to be paid on an hourly basis and be “exempt,” and it is possible to be on a salary and not be “exempt.”

All the same, many software developers are being classified as “exempt” illegally! Check out this sentence from the Department of Labor’s guidelines for technology workers: “Technologists and technicians do not meet these requirements for the learned professional exemption because they do not work in occupations that have attained recognized professional status, which requires that an advanced specialized academic degree is a standard prerequisite for entrance into the profession.”

Unfortunately, there are no regulations (that I can find, at least) covering whether you can be forced to work in excess of a standard workweek. That being said, in my experience, the best defense against this kind of abuse is to work to become classified as a “nonexempt” employee; when the boss (and the accountant) realizes that you took home a paycheck bigger than his boss’ paycheck because he forced you to work a 60 hour workweek, you can bet that it will end!

For more information, you’ll want to check out the following IRS and Department of Labor pages: