Ofir Nachmani, Cloud Evangelist at IamonDemand
“DevOps” is meant to denote a close collaboration between what were previously purely development roles, purely operations roles, and purely QA roles. Because software needs to be released at an ever-increasing rate, the old “waterfall” develop-test-release cycle is seen as broken. Developers must also take responsibility for the quality of the testing and release environments.
The increasing scope of responsibility of the “developer” has given rise to a new job candidate: the “full-stack” developer. Such a developer is capable of doing the job of developer, QA team member, operations analyst, sysadmin, and DB Is there any role in the list whose duties you wouldn’t expect a “full-stack” developer to be well versed in?
Somewhere along the way, however, we tricked ourselves into thinking that because, at any one time, a start-up developer had to take on different roles he or she should actually be all those things at once.
Working in “full stack” developer methodology is possible but doing so will cause burn out.
Forcing developers to take on additional roles traditionally performed by specialists means that they:
aren’t spending their time developing
need to keep up with an enormous domain of knowledge
are going to burn out
The ideal recommendation is to utilize a specialist in order to optimize the knowledge transfer, efficiency and smooth growth of the company.
Ophir’s presentation can be viewed and downloaded here