Role and Responsibilities of a Developer on a Scrum Team

Role and Responsibilities of a Developer on a Scrum Team

One thing I constantly used to struggle with, and constantly see my colleagues and fellow developers struggle with is what their roles and responsibilities are as scrum team. Often times, I see this from developers who have worked for larger companies, with set hierarchies and organization charts defined, where they are just another smooth gear in the Scrumerfall Work Horse.

I sometimes do see it from people who have free-lanced, or worked on gigs, and have a more pragmatic approach to building software — and my own guess is that these kind of people are used to dealing with all aspects of software or web development, from soliciting gigs, business paperwork, coding, testing and even deployment of the many projects that they work on.

But first, a little bit of background. My first foray into software development started at a young age, and was more hobby-ist in nature. I didn’t do software development to make money when I was a teenager, but I did it because I thought it was fascinating, and it was amazing to be able to write some code, and have my web browser be manipulated, controlled to whatever I was able to come up with. Software development become an art, an infinite canvas of expression, bounded only by the limits of imagination.

I quickly learned that people were able to make money off this, and went into free lancing at a young age, and made it through school, and then worked for agencies and enterprise environments, and have seen a lot. I haven’t seen it all, but I’ve seen enough to notice some common trends.

My hobbyist passion of software development drives my work philosophy in my career, and any software development I do outside of my day job. The free lancers I mentioned earlier, are generally more adept at handling the roles and responsibilities of a developer on a Scrum team, because they are used to wearing multiple hats, and it’s easier for them to learn. Developers who have only coded in a corporate work environments, where they are specialized to code are great coders and developers, but sometimes have a hard time to learn the shifting hats required on a truly Agile team. This is just anecdotal evidence, and a trend I’ve noticed so far.

Going back to the opening topic of this post — what are the roles and responsibilities of a developer on a scrum team? Well, the short answer is no list of roles and responsibilities that can be cleanly cut, easily defined, and neatly put into a list. There is only one guiding principle, and that is: Do whatever you can do to help the team deliver great, working software and do this in the best way that can be done.

I have found that not limiting myself to a set of roles or responsibilities, but doing whatever I can do to help the team has been the one factor that has made me successful as a developer. Sometimes this means venturing into unfamiliar or new territory, or doing tasks that are mundane in boring. I have learned much more about QA and testing, simply because there was a need on our scrum team, and I learned it to make sure our team was successful. I’ve helped out with scheduling and organizing meetings, scheduling design sessions, take meeting notes, and even follow up with external vendors — all which were not technically my responsibility, but it needed to be done.

The second part of my principle is doing this in the best way that can be done. This is very different than doing things in the best way that you can. Doing things in the best way that can be done naturally challenges you to better your techniques, and not get stuck in a rut, because you are always trying to optimize your processes and making yourself better.

In the end, a scrum team is exactly that — a scrum team. With any team competing to win and be successful, you can’t be narrow visioned and limiting yourself to roles and responsibilities — instead, take a step back and do what you can to make the team successful.

Wanna say something?