I found that there are two occupations that are unexpectedly similar to that of a software developer: prison inmate and line cook. Both of these are heavily male dominated, involve a disproportionate amount of minorities and are very stressful.

I recognized offices in which I worked all my life in prison layouts. The common criminals usually live in a common area in the center of the prison. This is exactly like a common area of an office, except with bunk beds instead of desks. Some actually have semi-private cubicles. Inmates organize into gangs, just like departments. Gang leaders are usually placed into single or double cells that line the perimeter of the common area to cut down on the communication between them and their reports. Even there you have to be a manager to score an office.

Restaurants are a lot like developer shops. You have your front of the house: waiters (sales people), hosts and managers, food runners (analysts). And then you have your back of the house: chefs (architects and lead developers), line cooks (developers) and prep cooks (producers). There’s no good equivalent for dishwashers in a typical developer shop.

People often assume that a chef primarily cooks and a lead developer primarily codes. Do you know the title of Julia Child’s awesome show? Well, she was neither French nor a chef. Chefs do surprisingly little cooking, they are more like conductors in orchestras. They create menus, divvy up the tasks, check quality, train and supervise cooks. Best chefs, just like the best lead developers do find time to cook, but still spend more time organizing, tasting and researching.