Saw an interesting tweet from a friend today that I somewhat agree and disagree with. In a nutshell it was: “ALL developers should be required to spend 1 week per quarter as front-line helpdesk support for their own products.”
I agree that “some time should” but not a whole week every quarter. The response to that was “You need a week to get a feel for the issues. Maybe not quarterly, but just after release, and while working on the next rev.”
Again, I agree that you need to get a feel for some of the issues, but you have to look at how much time a core dev would spend doing helpdesk support depending on the scale of the project itself.
Let’s consider the sole one-man shop for a project:
- Chances are you’re already your own helpdesk, nuff said.
Ok, so how about a small shop with say 3-4 developers
- Your devs may also still be your helpdesk, but in a limited fashion. You probably have someone lined up to take front line helpdesk tickets, but your dev’s are actively involved (especially if it is somewhat of a highly utilized application)
- In this case, all your devs should be somewhat familiar with the features that one of the other team mates are responsible for.
- Watch for trending issues with a particular feature within the application. Assign the responsibility of the dev responsible for those features to attend routine “Assistance” to your helpdesk personnel.
So now, a large scale application with 10’s or 100’s of developers
- Assigning a random developer to helpdesk is probably not going gain you anything, because the chances of him actually assisting someone with the component he is responsible for is going to be pretty slim I would think.
- If anything, he should be responsible for listening in, and reporting back to the team responsible for the types of issues.
- Depending on his area of expertise, he may be just as clueless as to the issue or what to do about it than the person calling in.
- He’s just wasted time listening or trying to help customers who he can’t even help with, than spending quality time fixing bugs in his component, or working on the next rev of his component.
And here are just some random points regardless of the size
- Not every developer is customer friendly. It’s just a fact. There are great developers who write awesome code, but have horrible people skills.
- I have seen issues go from bad problem to horrific political snafu because the wrong person was on the phone with the customer.
- Hopefully your organization is large enough, and the PM (Product/Program Manager) responsible is involved in this area to effectively communicate issues back to the developers.
I know there are lots of other points here I haven’t even mentioned, and I’m sure someone will add points or debate the subject.
The bottom line is, you can’t just put a blanket statement that “ALL developers should be required….as front-line helpdesk support” to this scenario, but rather “ALL developers should be required to listen IN”. Based on experience on both sides of the fence (Support & Development), I just don’t agree it works.