The Code Mill

“Code Mill” is a standard business practice at software development companies and big agencies.

It works like this: Hire as many programmers as possible for as little as you can. Bill them out for as much as you can. Keep them working a minimum of 60 to 70 hours per week, with massive efforts to convince them that working that much is the mark of developer that is “going places.”

Then keep them distracted from their situation with silly office games, cheap benefits like pizza lunches & free pop, and letting them poke fun of being nerds, while subtly reminding them that they are nerds. Basically do anything that gives them a false sense of hope and optimism as you pile up their hours that you can bill for fat stacks of cash.

If anyone of them complains, let them go and find another one. Always maintaining the notion around the office that anyone is replaceable. If the jobs lean out, eliminate anyone who isn’t going along easily with the game. Constantly be on the hunt and hiring new coders to replace the ones who got out of line.

It’s business model that comes out of the worst part of the industrial age. It is manipulative, sad, and pathetic.

It’s also an insanely stupid way to build a company.

The Code MillI know about this because I worked with other agencies that did it very well.  I thought it was the way to operate an agency because I had not seen any other way. Back when I started my first company in 1994 I could find reasonably good coders and bill them out at a 700% increase.

Did I make money, sure? Lots of it. Was I happy? Hell no!

Here’s why and why I stopped doing it the moment I realized how awful it is:

1. Sub-par results. Bad code piles up tech debt and gets more and more expensive. It then becomes more and more of a headache for everyone involved with the project.

2. Manic manipulation. A Code Mills spends an enormous amount of energy trying to convince good people to just stay in that chair and keep racking up billable hours. They will lie to them or bully them. Or they will tear them down and build them up just a smidgen to keep them working as many hours as possible. It’s ugly.

3. Fatal burnout. When you keep a developer basically locked in a dark room for days, weeks, or even months at a time, there is a high risk that they will decide they don’t like developing. They will then quit to find a new way to make money. This may be the most evil part of operating a Code Mill – snuffing out talent before it can even get started.

4. 24/7/365 Hiring. It’s just part of the model to go through people like you would toilet paper, so you have to keep coming up with new supplies of them to burn through. It’s time-consuming and exhausting.

5. The operator becomes sub-human. In order to make the Code Mill a cash printing machine, the Code Mill operator has to become completely insensitive to the horror they are inflicting on others.

It’s just not a good way for anyone to live.

After realizing I wanted no part of that model, I devised the one we are using here at Digital Opera. Over the years, we have made improvements to it, and now it works insanely well.

We maintain a healthy database full of extraordinary talent. We spend up to, and sometimes over two years working on smaller projects with new recruits until we are certain they are as good as we believe. Once they get to that threshold, we don’t hire them. Instead, if they have not already done it, we set them up as a company in the state where they reside and assist them with creating their own company or ensuring they are set up properly as an independent contractor.

From there, we essentially have Specialists (those who want to keep working to become the very best at one discipline, say PHP development as an example), Generalists (those who have become, over the years very good at a lot of disciplines), and finally Full-Stack digital biz developers who can code, write a blog post, spin up new servers… whatever needs to be done, and done well. We let people stay in one of those areas if they like, or we help them transition up to the next phase.

This works so much better. In the years since we started doing it, some of the people we started with are still here kicking ass, while others have gone on to build their own agency, company, or SaaS company, or perhaps found their calling outside of tech. In any case, I always love to hear from them and see what they are up to now.

It’s so much more rewarding than running a Code Mill.