It seems nowadays all the develop teams have both software engineers and product manager. I am a newbie to the software industry and I wonder what is the difference?

  1. Is it necessary for a Product Manager to have a programming background?
  2. How to divide work between Engineers and Product Manager?

6 Answers 6


In my experience the best functioning teams do have a bit of skill overlap between the various roles in the lifecycle, to ensure that there's no "throwing over the wall" but a smooth transition between each stage.

During development of a product (or features/stories within a product), a product manager and engineer are aligned as majority owners of two stages, the definition (PM) and implementation (engineer).

  • Product manager — Product managers are essentially "feature designers" or if not designers, they are owners. Their input is customer/business requirements and their output is product specifications for engineers to work from.

    A product manager will typically do initial investigation for what features are needed (in a bigger group a business analyst will help with this step), then organize that into rough requirements and product proposals. At some point an engineer or architect may need to become involved to help the product manager know what is viable and adjust accordingly.

    After the spec is delivered, the product manager is often essentially the "product owner" in the Scrum process - the person responsible for defining "done" and accepting the final work.

    Once the product is finished, product managers might also be responsible for helping customer service, marketing, and even a sales department understand what has been developed and what the most attractive features are.

  • Engineer — As mentioned above, the engineer can be brought into the process early to help with the definition of the requirements. But the primary part of the engineer's job starts when the product specification is defined and approved for work. The engineer implements the software according to specification, as well as take any uncovered problems in the spec back to the product manager for consideration.

    Typically once the product is well under development, the product manager will step a bit into the background while engineers might be more involved in the QA process.

As far as overlap — as I mentioned there will be some back and forth between the PM and engineer. During this evolution any technical understanding the product manager has will help minimize the engineer's time needed, and the better the engineer understands the product needs the more helpful their advice will be.


The role of a product manager can vary widely from company to company.

In the worst case (and unfortunately, the common case), a product manager is a technical lead with specification and release duties dumped on him.

In the best case, a product manager acts as a liaison between the developers and the clients & managers, and makes sure the developers have the time they need for a quality delivery. It's usually best to hire in someone with specialised product management skills instead of transferring a developer in to the position. Ideally, the the product manager would at least have a surface understanding of the technology being developed, but a deep technical knowledge is certainly not needed.

  • I realize the roles can be closely related, overlapping, or are even occasionally conflated, but the OP said product manager.
    – Nicole
    Commented Feb 22, 2011 at 3:57
  • My fault for not reading carefully. I'll edit my answer accordingly.
    – smithco
    Commented Feb 22, 2011 at 4:01
  • I edited your answer so project is product, but I think you have to approve the edit for it to be visible.
    – jmort253
    Commented Feb 22, 2011 at 4:34
  • @jmort253 It looks like your edit is in place already. Thanks for the fix up.
    – smithco
    Commented Feb 22, 2011 at 5:57

I guess product managers in charge brooder range of things, including how to promote and sale the product. On the other hand, engineers tend to fours on the quality of product.


I would equate the roles to a engineer is a developer while a PM is a development manager. Development manager may do some technical stuff but not always. And it is helpful if PM has technical background to understand issues developers are facing (no more 'what do you mean it takes more than half an hour per screen!').


To tell the truth, when it comes to being applied to the software field the "Product Manager" term is really the only valid one of the two. Hardly anyone does anything remotely like "engineering" in software. "Software Engineer" is basically a vacuous term applied incorrectly because it sounds good and because people don't apply for "Code Monkey" positions.

  • -1 Software is most definitely a form of engineering, when done right.
    – Orbling
    Commented Feb 23, 2011 at 0:19
  • If hardly anyone you know does real engineering, it only shows you are a code monkey who doesn't know enough people. Commented Jul 19, 2013 at 19:29
  • 1
    I agree, 'software engineer' is a bit pretentious! Even though I have an actual engineering degree, and cringe when I see shitty code, I would never call myself that. I would opt for developer, or architect instead. It's not like I'm building a bridge, even though an API is kind of like a bridge.
    – Chloe
    Commented Dec 5, 2017 at 18:24

Disclaimer: This is from the view of a job that isn't strictly programming (we don't necessarily ship software)

At the company I work for, most Product Managers are Engineers. They may not always do the low level work but they definitely know what is going on and can do select portions of it themselves. The job of the Project Manager is to interface with the customer (or customers), other teams, if there are any, and act as a liaison between the lower-level and upper-management, and to direct the team in the overall goal. What they exactly do, I'm not sure. I'm not a Product Manager.

It varies from company to company, however.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.