The project manager and the agile coach focus on the outcomes of what the code enables, they do not need to know how to code or go through the code. Engineers are accountable for the technical solution’s readiness.
Nevertheless, it is essential that Project managers and coaches be knowledgeable about the SDLC process to understand:
- what information is useful to gather from business stakeholders or customers for developers and architects to emerge solutions. That includes learning which format or level of detail is relevant, without requesting a specific solution.
- the engineering process to design, build, test, iterate and appreciate the effort it takes to create solutions at the relevant level of quality and operations needed
- when and how to engage with the delivery team day to day to identify issues and mitigation early, make decisions together, build test cases that mirror the customer’s expected behaviour and set a sustainable release cadence
- what support developers need from other groups, dependencies, knowledge gaps…. to deliver the outcome
- how to appreciate and celebrate achievements - build trust
The SLDC does not mean that Project managers and coaches are not encouraged to ask questions about the solution, participate to testing and reviews, along with other experts such as Product owners, customers, data analysts….
Most people on the project have chosen to work in the IT field and are naturally curious about technology, so will be interested to listen in if teams are comfortable with it. Coaches in particular ask a lot of questions and they may trigger reflections that will catch a gap, an opportunity to make the solution safer or reusable… When developers seek out UX or DevOps input, future issues are often identified and prevented.
When Project Managers and coaches are close to the developers, they make much better advocates for the estimates that the teams have come up with, they learn to express the complexity of the delivery process to stakeholders and overall manage escalations and expectations much better.
A diverse group of reviewers improves the quality of the product and makes it better fit for purpose. For a good outcome, everyone’s collaboration is needed. We need everyone’s skills to come together.
Isabelle Noelle has done an excellent job of answering the question. The SDLC or the Software Development Life Cycle is a process that produces software with the highest quality and lowest cost in the shortest time. SDLC includes a detailed plan for how to develop, alter, maintain, and replace a software system. In my opinion, a project manager or an agile coach that has coding experience stands a much better chance and does a better job of managing a coding project than an inexperienced one?
Thanks a lot, Isabelle and Andre. I see problematic in quite the same way. Provided explanations fit in my picture very well.
I think the pm should have a strong understanding of programming fundamentals if they are going to be successful managing software projects
According to my point of view a PM and Agile Coach should be knlowledge about develop but not deep, they should be focus in generate value to the customers i the KISS way
In my opinion an IT project manager should be able to develop code to be able to understand bottle necks and understand developer’s pain.
At least they must get people into the team who can do the job and then must give trust.
All in all, both is fine as long the manager knows the point where he/she is and is able to proceed correctly.
Great post. My 1st question is what is the skill of the Project Manager - Technical or Operational?
Next what is the role of the Agile Coach?
An Agile coach is meant to coach the team and guide them into business agility and outcomes and allow the teams and their dev leads to come up with the solutions and ways of working collaboratively.
A true Agile coach observes, listens and guides the team by training and teaching them how they should work and attain self-organisation, built-in quality and delivery of value. Knowledge of coding or how to code should not even come up except specified that he is a DevOps or SME in Coding and if so he no longer is a coach but a mentor who leads the teams.
Lets be clear about roles and responsibilities as this often causes confusion, resentment and resistance by the teams and businesses looking to adopt Agile in their transformation.
Thanks for a good post. I have my own experience when I had started as agile coach /Scrum Master, but in 8 months I was told that company considered me as agile project manager and I had to act accordingly. I finished that time. They pushed me rewrite scrum for them… ????
Project managers and agile coaches do not need to code however understanding the code helps understand the issues raised in planning and daily standups. This means you can talk knowledgeably to stakeholders or better still know when to shut up and refer back to people with in depth knowledge (dont promise 6 years hard labour tomorrow because it sounds easy to someone without a clue). They also need to understand whether there really is a risk if I say its not been code reviewed but it was mob programmed and has passed the code verification tools and automated tests. It may be a different process but is it equivalent or maybe even better. There are too many people in ‘management’ style positions who think they know more than they do, these people cause all sorts of problems. Better to have enough knowledge and experience to know when to shut up :)
I think a PM should at least know one programming language if he is leading a software project, otherwise he has no clue what his team members are doing all day, he can not understand (or better predict) if something requires more time and can not weight various options if he has no clue what the work involved is about.
As in all businesses you should know what you are talking about ! As a project manager I need to collect information about issues and progress from eg. programmers. In order to understanding and balance their feedback I must be able to understand their issues and argumentations. Otherwise i am completely dependent on the accurateness and reliability of the programmer’s estimates. So I would prefer a project manager who has at least a basic understanding about the major techniques like in this case programming - the more the better. Beside this basic patterns, the project management is completely free of knowledge of this kind of details. So for creating plans, estimates, reports etc. you don’t need skills in programming, but it’s really difficult to get the right figures without knowing the topic you’re talking about !
So great discussion! Thank you to all of you for your opinions.
This will mark this comment as best reply and close your question.
Are you sure?
This will close your question without a Best reply.
Are you sure?
This will report this content as inappropiate to the moderators.
Are you sure?