I have been giving a fair bit of thought lately to app developer segmentation. Considering how much money is poured into developer relations, its surprising just how little solid segmentation work has been done in terms of understanding developer roles or personae. I am currently working on a project for a client, and began some rough segmentation work for an internal report I am writing. Then it struck me I should ask the Internet what you think. The list below is not designed to be comprehensive- in fact its more like a first cut. What to call the types is certainly a challenge – on another call with a developer relations client, yesterday, they referred to “bedroom developers” – is that an insult or a compliment?
So here are some types. Please File under “Work In Progress” and please suggest improvements/ideas/more types.
- the “hobbyist” – deeply interested in tech, learning and coding at home. May code in environments related to their daily work, but just as likely to be working in another environment entirely.
- the enterprise timeserver – codes in Java or .NET at work. Switches off at 5:30pm. Only interest is tools that can help get the job done. But not experimental- not polyglot.
- the ISV timeserver – as above, but works at an ISV which is more likely to be interested in current and future, rather than earlier versions of products and technologies.
- the independent web developer – like the hobbyist, but a much closer alignment between “work” and “play” in terms of target environments. Consultants, small agencies, and Shoreditch Roundabout types tend to fall into this category.
- the Big Web Company web developer – again – close aligment of work/play. lives the job. Web companies are increasingly looking at more “enterprise”-like environments to improve QoS.
- the ISV – a software company offering products or services to end customers. Likely to make technical direction decisions on the basis of market and company dynamics, rather than technical factors.
- the Systems Integrator – whether global or regional, this is an important developer type. Developer go to markets for all kinds of firm look to SIs as a crucial channel – its been interesting to see the growth of open source practices in these businesses over the last few years.
- the Agency – often from a design background, expect a lot of Flash skills and talk of user experience
- Snarky – believes most people are stupid and need to be ignored or coded around. You may have optimistic snarky people who simply deal with the drudgery of programming by being crass. Sarcasm is soma.
- Optimistic – often smiley, works longer hours, willing to help other people. This is extremely rare, and can be confused with an arrogant-ignorant developer who thinks everything is happy-go-lucky just to get off-shored next week.
- Lots of talk, little code – spends much time on the labor and process around coding, hoping that the smaller amount of time coding is done effectively by the measure twice cut once ideas. An anecdote: a NASA software developer walks into a his managers office, saying it’s great that they finally committed so much code this week. The manager has a dark look on his face, no, he says, think of all the bugs we’re about to discover.
- Craftsman – interested in being better at what they do, but often lacks the tools to measure the betterment, or even get a baseline for how bad or good things are. Instead, they try new developer self-help programs (like Agile, etc.) and are always looking for the new thing that will help them be better.
- Coders – spend most of their time simply coding in, mostly isolation, generating a lot of code. Managers love these types, other developers tend to bad mouth Coders behind their back as (a.) the Coders output amount “ruins the curve,” and, (b.) their code is not always liked by the group.
- I just work here – just there for a good paying job, rarely works on becoming better but is often very dependable in getting work done, if only by using out of date methods.
- Legacy – “this is like CICS all over again” is the kind of sentiment you get from these folks. They continually muse that 20 years ago, they were doing the same thing, except in all upper case.
- Startup-dreamer – works at a “normal” company, but is always trying to start something: a company, an open source project, a service, etc.
- Process-wonk – for these folks, the problem with software is the lack of discipline and group process. They may seem overly bureaucratic, but their trust is that if the group just got their act together, the code would work better. A negative version of this is Cargo Cult, a favorite derisive-term of developers.
- The Debugger – whether they like it or not, this person is good at tracking down bugs. They’re often good at doing performance tuning as well.
- The Baron – a developer who likes to build his own fief, an area of the overall project that no one else understands or can work on. See DBA, network admin, and “security.”
- Architects – charged with being more technical than manager, they’re expected to “lead technically” and know enough about The Business to guide technical decisions. Having been successful developers, they’re often tasked with keeping that up as well.
Of course another cut would be by target environment.
- Linux developers
- PHP developers
- Rails developers
- Dynamic Scripting Language developers
- Mobile Developers – IoS, Android, etc
or by tools choice
- Eclipse developer
- Visual Studio
and so on. Or perhaps the cut should be by framework, as per the Rails/Node lesson.
And then there are of course the olde worlde distinctions of QA, Release Management etc- the developer/to all technical staff ratio. Or the new categories of the Developer Landgrab
- Agile developers – all about the process, the data, the getting things done. Includes Scrum and extreme programming types.
- Devops – is this actually a developer or a well paid systems operator? Does that matter from a segmentation perspective? Look for chef and or puppet skills.
- NoSQL developers – driving data store heterogeneity. May not really mind relational, but mostly don’t like Oracle.
Never mind herding cats, this is like skinning one!
One final thought on how segmentation is changing. Microsoft, love em or hate em, wrote the book on developer relations at scale. One of the most interesting nuggers of news from its recent MIX conference is that Microsoft will be running a “Developer Conference” in September this year. Eh? Surely this September is about time for the next Microsoft Professional Developer Conference (PDC). Yup – it seems Microsoft has decided that running separate conferences for “Web” and “Professional” Developers makes no sense. Web developers are professional developers. On the other hand – a lot of corporate developers really don’t give a hoot about next gen HTML5 specs or any of that other “web stuff”. Ah – good times.
We’ll see how it goes.
Anyway its more important than ever to understand developers in order to target them more effectively – to understand their motivations, needs and approaches. They are the new kingmakers, after all. So like I say, please help.
disclosure: Microsoft is a client. I totally stole the photo about from the official Google I/O set – which is all rights reserved.