Scrum Developer is a widely used term to describe usually a technical development role that is a part of a Scrum Team.
When organizations are transitioning to Scrum, oftentimes they will try to map existing roles they have in their organizations to roles in Scrum. Scrum only recognizes three roles, that is: Product Owner, Scrum Master, and Development team. In Scrum, the term developer equates to a Development team member.
Developer or a Scrum Developer is part of the entire Development Team
So from this point, we will refer the developer as the development team member.
Scrum Guide, the bible of Scrum, simply defines the Development team as such:
The Development Team consists of professionals who do the work of delivering a potentially releasable Increment of “Done” product at the end of each Sprint.
The Scrum framework does not recognize any specific roles like Analyst, Tester, Architect or Designer, etc. Not that these roles do not exist, but Scrum just recognizes all of these roles just as developers. Scrum never defines more specific roles. Scrum only tells you that everyone who is involved in developing the software is within the Development team. As simple as that.
This should give a nudge to people when thinking who should be in the Development team.
When organizations are starting out with Scrum, many will think that the term developer equates to those who write codes, that is the programmers or the coders. This misconception grew because, in sequential processes like Waterfall, adopted from the assembly line and construction work, roles are divided according to the phases people are working in.
Scrum, Project Management and Team roles interactions
When you view software development as factory work, where source code can be repetitively mass-produced, you will view developers as people who are working on the development phase and write codes because there are no analysts or testers are working in this phase. In this scenario, you view programmers as code laborer who receives an order from analysts or project manager or architects, write the code as ordered and then send their software to the Quality Assurance once they are finished. In most organizations, these analysts or architects are people on a higher rank than the programmers, just like how engineers in manufacturing companies are on a higher rank than the factory workers.
But when you view software development as a creative product development work, where people need to talk to each other continuously to exchange ideas, it is quite impossible for the programmers to work by themselves and just receive an order from analyst or project manager or architect. It is quite impossible to develop a creative product without brainstorming with the other professionals in the organization.
It is quite impossible for programmers to develop a high-quality creative product without collaborating with designers, architects, analysts, and testers. Because of these reasons, Scrum only recognizes these traditional roles as developers to avoid silos and most importantly to avoid politics which prevents creativity. Developer in Scrum is one single unit that consists of multiple skills that can deliver a piece of increment every Sprint.
The Development roles inside a Scrum Team
When you view software development as creative product work or research, where everyone works collaboratively in no prescribed sequence, everyone in the development team develops something:
- Architects develop models and architecture
- Designers develop the user interface and user experience
- Business analyst develops business analysis, requirements, and documentation
- Programmers develops the code itself
- Testers develop test cases, acceptance tests and the tests itself
When you view software as a valuable piece of product, where software must be user friendly, must be documented and must be tested before it is shipped to the customers, every skill that is required to develop a complete package every Sprint must be in the Development team and work together with the programmers throughout the Sprints.
Hopefully, this article clears the misconception about the role of Developers in the Scrum team.
How to become a Scrum developer?
There are many certification programs out there that may validate your effort in studying the Scrum framework, but what you need is just reading the Scrum manifesto and the Scrum Guide. That should be complete enough for you to get familiar with the Scrum practices. And don’t forget that you always have the Scrum Master right behind you who is responsible to train you and guide you through this Agile experience.