Extreme Programming: Where are the startups?
My career focus right now is Extreme Programming: exploring and experimenting with it. I’ve been sold on test-driven development for several years, and incremental design is a perfect fit for my preference for gradually steering toward a goal while experimenting. When I read books from XP masters like Uncle Bob and James Shore, who advocate those practices, the other XP stuff also makes sense to me. So I began looking for a team already committed to XP where I could continue learning and proving XP to myself, and I hit something of a wall.
Since the five years in a college library that launched my software career, I’ve worked in two mid-stage startups (50–100 people), and I expected that XP would be easy to find in a subset of similar companies: I assumed that the sort of person who would be a technical co-founder would also be the sort to embrace the elegance, progressiveness, and striving for excellence of XP.
Instead, I discovered that the job ads which leaned obviously toward XP (and which I discovered by searching for “test-driven development” or TDD) tend strongly to be Java shops producing financial software. Even when I interviewed at a startup where the team lead was the son of a high-profile XP master, all I got was “yeah, we don’t do all of that…”
I was pretty surprised by this, and also frustrated, because I’ve been able to get interviews at Ruby and PHP startups, but my scattered Java experience doesn’t present nearly as strongly on my résumé. I’m also a lot less interested in the financial domain than some of the more educational and human-interest companies in the startup world. I started to wonder why startups haven’t adopted XP to a greater extent, and I came up with a couple of speculative answers.
In early-stage startups, there is a need to prove the concept quickly in order to focus on the true value and maximize funds/satisfy investors. Perhaps startup founders see XP as putting too much emphasis on long-term quality and process at the cost of quickness, and once they reach a point of sustainability where they could begin to focus on XP values, it’s too late — the people they have hired and the flow they have adopted cannot easily be transitioned to using XP practices, and the team is effectively fenced out.
I perceive that startups are often launched by people with a drive and with vision, but not necessarily with experience in leading teams to effectively execute on that vision. Perhaps the people that inhabit leadership and management positions in startups lack the knowledge and experience that would make them aware of XP, and enable them to nurture an XP environment in the startup.
I’m going to try developing some of the specific technical skills that will make me more marketable among the companies that actually have the environment I’m looking for. Maybe once I gain that experience with Extreme Programming, I’ll even be in a better position to bring some of that to the world of startups which I find so compelling and invigorating.