Developer to all-technical-staff ratio: 1:4 as a rule of thumb?
Here’s a quick question to all people used to either interact with or being part of software development teams.
Consider a software vendor, a good one, and its technical headcount. It is no secret that R&D teams aren’t made of software developers only. In order to be deployed successfully, architectures and code need to be tested by a QA department (QA = quality assurance) where professional testers run through thousands of automatized-or-not scenarii; documentation; technical support staff help the install base with potential regressions occuring during updates and coping with changing information system environments; localization project managers monitor translations of the software: and last but not least, application engineers actually parameterize the software at clients.
Now my question, how many technical staff should you account for every software development engineer? I figured out an average ratio of 1 to 4, that is to say, for every technical team of 100 there should be around 25 software developers actually hacking code.
I know there exists extremes but by and large, from what I’ve seen, I don’t think I’m too far from the reality with a 1:4 developer / all-categories-technical-staff ratio.
What do you think? Feel free to describe what the company does when sharing your experience, because, since there are very large discrepancies between, say, an SAP that manufactures ‘heavy’ enterprise software and any web application designer that may not necessarily run industrialized testing and that has no professional service department, we might not get nuances at first sight.
PS: the ratio will also depend on the maturity stage of the company: at Microsoft, [# of develops]/[develops + Microsoft Consulting Services staff + developer evangelists + localization engineers + testers (1 for each develop) + architects] approximately equals 1/4 (1 to probably 5 ot 6 adding documentation specialists; & 1 to much more if you consider the system integrator ecosystem that actually does the application engineering). But the company is rather mature and therefore can afford to focus on quality of execution rather than productivity in execution. Which probably wouldn’t be the case for an enterprise software startup for obvious resource reasons. Anything to share? Best and worse practices, per specific industry (Web 2 / UGC, Video Games, enterprise, affordable consumer traditional applications, etc.) most welcome. I need to test my own budgeting assumptions










