Gant Software Systems

The Anna Karenina Principle in Software Development Environments

All healthy companies are much alike; all dysfunctional ones are dysfunctional in their own way. For instance, every healthy company I’ve worked at has fairly consistently spent time and effort to make sure their employees are appreciated and productive. They’ve spent time involving the employees in the process, giving them workable goals to progress towards, and generally making sure that their people are taken care of so that they can take care of the company. And while such stability is laudable and makes the places fun to work, if you really want the good war stories, you have to work at a dysfunctional place.

Leo Tolstoy expressed the concept best in his book, Anna Karenina. All happy families are alike; each unhappy family is unhappy in its own way. Companies are much the same way. Functional companies largely get a lot of their basic activities out of the way in very similar fashions once they get over a certain size (startups are always going to be wild-cards). There are outliers out there who do things in a vastly different way, but for the average company that is actually functioning well (which is not the average company, by the way), most things are rather uniform and unsurprising.

But for the others, there are the war stories. Here are a few of mine for examples. If you are reading this and know the person/people in question, please don’t name names and get me in trouble.

  1. The place I worked where the owner would come in all tired and bleary-eyed first thing in the morning, then go to the bathroom for a little bit, returning hyper and constantly rubbing his nose. He was later indicted for a wee bit of fraud that likely funded his drug habit. You could never tell if you’d get a pat on the back and reassurance that you did things well, or whether his bald head would redden up like a tomato before a string of profanity would hurtle out of his mouth.
  2. The place where I worked where we were developing software for massage therapists, where my workspace was in the office with the therapists. I had to manage the therapists (which is a pretty jarring mental leap from writing code, as some massage therapists are a bit…out there, to put it nicely) and answer the phones while attempting to write software at the same time. You might guess that I did none of those things very well and still detest the smell of lavender to this day. I also had to throw a customer out of the building for doing something…ahem…vastly inappropriate during a massage, which was actually the highlight of my day that day.
  3. The recently-divorced cougar that wouldn’t leave me alone while I worked at another place, constantly rubbing my shoulders, making inappropriate comments, etc., even in front of subordinates. Now, before you go shouting “that was sexual harassment”, well, yeah it was, by any reasonable definition. I never reported it to HR – I figured, having been a bit of a shy nerd in high school and college, that making a woman not interested in me was pretty much a life skill I had down. Besides, the rest of the company culture had so much backbiting and sniping, that I wasn’t entirely sure I would be believed even if I said something. The matter resolved itself in a rather crappy way for her in a couple of months, but I suspect like the rest of us that no longer work there, she was quite glad she got out when she did.
  4. Another company that I worked at where I was told I was not a team player, even though I scored quite a few major wins for the team over nights and weekends while everyone else took a break. And the place had a guy that I never could quite identify, because I always saw only his shoes from the bathroom stall, who always had nice leather shoes, who would use the urinal and then immediately proceed to the hand dryer without first going to the sink. I never shake hands with any male from that building even now, just to be sure.
  5. The manager that thought that product timelines could be improved by constantly expecting developers to act as tech support for the wireless network (which included a couple of cheap wireless routers that would lock up if too much data went through them or if there was a blip in power) and screaming at the team when things got behind because of interruptions.
  6. The guy that didn’t use source control and wouldn’t allow his developers to use it, because it was much easier to make a backup to the file system. This was well into the 2000’s, so it’s not because the technology was new. Then, when something would get overwritten or lost in a merge, he expected everybody to cancel their weekend plans to handle it because deadlines were immobile.

I point these things out not just to get a laugh out of my fellow developers (that was a motivation, however), but also to point out something I’ve noticed. If your developers are starting to develop a lot of war stories and drama of the sort that you’ve never or seldom heard before and that involves the local office environment, but that doesn’t quite implicate you, it’s a good bet you may not have a good environment, no matter how many smiling faces you see in staff meetings. The sort of low-level dysfunction that produces the sort of things that you see enumerated above is insidious and slips right through the cracks of an organization. If you’re seeing the beginnings of dysfunctional behavior like that above, you are probably seeing 10% of the total, if that. So, managers, pay attention to your developer’s stories. There are often lots of little clues in those about things that aren’t quite right on a bigger scale in your organization and it may be that the developers are relating these things to you for a very good reason (in other words, they want you to fix the problem and think it’s your idea, rather than coming to you with a problem). I’ll certainly happily tell you that I’ve bombed out of management enough times not to seek it out, but I’ll also tell you that I do a lot of consulting, and I see this behavior all the time, especially when employees are somewhat intimidated by their bosses. Pay attention to water cooler talk and funny stories at lunch – you might be in the story and not particularly aware of that fact.