Unsurprisingly, since engineers are people too, product managers can build better relationships with their development teams simply by being more decent. This starts, explains Cliff Gilley, with showing empathy with engineering so as to understand their goals and motivations (and presumably their personalities). From this, it will be easier to elicit important feedback from engineering such as learning the challenges that they face daily. After you have made this connection, product managers will more easily be able to communicate visions and requirements for projects.
How should deadlines be used in software engineering?
An important role of a product manager will be to organize schedules and roadmaps. And inevitably with these, a series of deadlines that engineers have to meet. But, according to Ryan Spraetz, deadlines are dangerous and often mismanaged. Problems with deadlines such as misinterpretations, being used too early, not being updated regularly and others can lead to frustration and failure. The solutions are varied but involve taking more care in estimating work and researching the tools that are going to be used.
In early-stage companies, the relationship between product and engineering is likely to be pretty simple. There will be one person, most likely the CEO, directing the product vision and one person engineering it. As the company scales, problems may arise like, 1) the CEO refuses to give up his seat as the chief product person, and 2) the engineer, if not a seasoned executive, does not hand off the reigns to someone more experienced. Fred Wilson writes that it’s not enough for these two roles to be inhabited by talented executors. But, instead, they must be managers with the ability to “hire, fire, organize, manage, resolve lingering issues, and make tough decisions”.