I am guessing that this is a contentious topic, so it is that much more fun to talk about…
The Agile Manifesto was written by software developers. There weren't any “traditional” project managers in attendance, so, it is safe to assume that Scrum Masters were expected to come from the ranks of software engineers.
I attended Scrum Master training with Ken Schwaber in 2000 and again in 2011, and on both of those occasions, it was clear that the role of a project manager was not needed or wanted on Scrum projects. I agree with the sentiment about the role of project manager, but I still believe it is acceptable and even sometimes highly successful to have a former project manager become Scrum Master.
I am a project manager by education (Industrial Engineering), by training and by certification (PMP) and ultimately by birth. I have been managing primarily software development projects since 1996, even though the last time I coded was using Fortran in college, unless you count my ability to use <bold>html</bold> in my blog. Given my technical limitations, I still consider myself an above average project manager and an even better Scrum Master, not because of my background in either discipline, but because of my real life experience and exposure to incredible leaders and people managers throughout my career. Early on, about 20 years ago, I was told by my boss and mentor, "Just because you are right, that does not mean people will listen to you or even agree with you." I was a practical project manager surrounded by academics, artists and other creative minded people. In order to successfully lead them and organize them I had to develop skills in listening, persuasion and influencing without authority. This began my path to truly understanding servant leadership.
So, the reality is that the "average" project manager or developer makes a poor Scrum Master. The “best” Scrum Masters will be found by identifying individuals that are well-trained, educated and passionate about Agile and servant leadership, regardless of their background.
It is well known why some project managers make poor Scrum Masters. They use their “command and control” attitude on the Scrum Team. What most Agilists with software development backgrounds don’t understand is that many project managers who were trained as professional project managers were never intended to use a command and control style either. I was trained early on in my career as a project manager that we could be most effective if we could motivate and lead our teams without using a carrot or a stick, but by engaging them in the vision and ultimate success of the project. PMI actually promotes the concept of influencing without authority. Throughout my career as a project manager I never had any functional authority. The developers never reported to me. I wasn't the technical expert. So, how was I successful? By being a servant leader! We were trained to remove impediments, make sure there were minimal distractions for the team, and you know what? We were trained when projects were high-risk, we should meet every day with the team to remove impediments. Sound familiar? Granted, as with Scrum Masters today, most project managers were assigned from the ranks of functional managers who were familiar with a directive style of management, and many loved the “hero” status reserved for those overachievers, but that was never the intent. Those project managers that I worked with, who were trained as I was, and those that I trained later in my career would make excellent Scrum Masters today.
It is the same story with developers. There are many developers who see being a Scrum Master as a promotion. It gives them the opportunity to play the elusive “tech lead” role and drive the technology. How can a developer with a strong opinion on how something should be built sit back and let the team self-organize around a solution that they don’t technically agree with?
To be an effective Scrum Master, you have to embrace the core values of the Agile Manifesto. I believe there is an equal chance of both failure or success when selecting a Scrum Master from the ranks of developers or project managers. Regardless of where you find your Scrum Master, it is much more important that they have the requisite skills needs to be a servant leader; including trust, passion, and enthusiasm for both Agile and for helping their teams succeed.
Dan Tousignant, PMP, PSM I, CSPO, PMI-ACP, etc., etc., etc.
Cape Project Management, Inc.

Dan I go back a few more years than 1996 but you are absolutely right. The fundamentals that were taught to be an adept program manager are the foundation for an effective scrum master. Only 3 of the 12 Agile principles specify software, which is why the scrum team has experts called dev team. The Agile principles need someone to make it “all” happen and that expert is called scrum master. Any discipline could possess the critical behaviors of a scrum master to make it “all” happen, but they are “required” for the discipline of program management.
Sometimes, the internal coach is managed by a manager that does not have coaching skills (or think he knows agile). Or sometimes the coach is managed by a control manager inside the organization.Then the entire implementation is at risk. This is a disaster.
Project managers are people too! Nice article Dan.
Thank you very much. Great advice and I have started investigating that path. How much do you value the importance of a PMP certification? I notice many job postings requiring it or at least showing a preference for candidates who are certified. I never put too much stock into certifications when I hire personnel. It’s experience and knowledge that influences my decision but I see that is not always the case with recruiters.
Or QA people….?