Wednesday, October 27, 2021

Cowboys vs. Soldiers

I classify developers into two main camps: Cowboys (aka Hackers) and Soldiers (aka Tweakers) - cowboys are great for startup environments where you need innovative, duct-tape solutions as quickly as possible. Soldiers are necessary for long-term scaling - they're interested in doing things the "Right Way", coming up with processes and completing tasks as assigned. I'm more in the first category (I tend to do a lot of duct tape fixes), but I know a number of developers in the second category - it's pretty amazing that when I ask them to do something and they just... do it. They do high quality work, they ask questions when appropriate, they learns quickly but they're not trying to introduce projects/drive their own agenda. 

(Note: in casual discussion I've had some people point out that you can hybridize the two approaches - this is a spectrum, not a binary)

(Note 2: yes, I realize both of those jobs are male dominated and this reinforces problematic stereotypes about the tech world. Mentally replace "Cowgirl" or "Nonbinary ranch hand" wherever you see fit; I'm talking about archetypes, not individual people.)

The stereotypical Silicon Valley leadership model of tech says "Only Hire Rockstars and Cowboys", but I strongly disagree. Working with Soldiers is great. Unfortunately, the road to promotion and power often expects "Cowboy" skills  - being visible in high-profile projects, driving your own agenda and pushing through changes. In an ideal world, we could just reward "leadership by example"; in many organizations this isn't really possible. Especially in a large organization, I can't honestly recommend for Soldiers to start acting like Cowboys - Cowboys often butt heads with each other (we all think we're the smartest person in the room. As the smartest person in the room, this is really annoying to me.)

Instead, I would encourage Soldiers to start thinking about different ways to drive change - not necessarily "screw you guys, I'm using my OWN programming language" (cowboy style) but a more diplomatic, soft-skill driven way of implementing changes within an organization. Leverage the fact that you're easy to work with as a way to start collaborating across a larger team. I don't know of any magic formula to do this, but emotional intelligence helps. Also, free booze (or free herbal tea for the non-drinking coworker).

Cowboys vs. Soldiers

I classify developers into two main camps: Cowboys (aka Hackers) and Soldiers (aka Tweakers) - cowboys are great for startup environments wh...