So, project managers are the delivery managers who deliver specific deliverable's. They tend to be a member of the department which is responsible for that specific deliverable and have the necessary technical expertise. Delivery level managers, however, do not report to the PMO but to the respective line managers.
Program managers are assigned from PMO to ensure proper alignment between all project managers, and are responsible for:
(1) single view of the program; being the single point of contact and managing the central depository of information & status on the project
(2) hold the program plan integrating all project level plans, all inter-dependencies, all inter-project commitments and track them to resolution
(3) guide the program through the initiation phase; explain the strategic aim & business case to all stakeholders & project managers; organise kick off meeting
(4) determine the structure to run the project (incl which coordination meetings to be held), which could change during the course of the program; the governance structure; and the communciations plan. Eg, when we launched four major products for the World Cup recently, they can't all have their own separate marketing plan, leading us to have one marketing & communications workstream for all products within that program. And of course, one software project manager may be delveiring for more than one product and each product may require more than one software project manager's delivery.
(5) evaluate all information & development arising externally or from the projects and escalating to all appropriate persons for attention and/or action
(6) identify program level risks and issues (as distinct from project lelve risks); these largely arises from coordination & alignment, or strategy & benefits management
(7) render a single reporting to any stakeholder and senior management, aligning project level documentation & methodology where appropriate
(8) monitoring progress and removing roadblocks to implementation, especially with regards to process (getting procurement to send out a particualrly problematic PO) and project communications
(9) ensure benefits tracking is set up and, most importantly, organise the closeout party
I think that is about it. Based on this, the program manager will require the following skills:
(a) analytical skills to make sense of all information and reducing them into a single coherent picture
(b) strategic awareness as he/she will be the only person ensuring alignment of all efforts towards the strategic aims, while everyone is focussed on delivery
(c) interpersonal skills as you are getting information and delivery through other people
(d) communication skills as the single reporting goes out to so many disparate people (from CEO to technical delivery), there are so many different angles from which people can misunderstand.