Managing the Delivery of Technical Solutions
The software development lifecycle has many types of management roles. The Project Manager focuses on delivering on a specific project. A Program Manager lays out timelines and handles sprint planning and development cycles. The Product Manager owns the end product, gathering business needs and then defining requirements that can be delivered by a tech team.
While working for a top 3 global consulting firm, Tony was assigned to a Department of Defense (DoD) client that needed a procurement web application to capture purchases made by the DoD. The system needed to be deployed to an AWS Impact Level 5 GovCloud environment. At the time, Tony had never worked with AWS or the DoD.
Tony began weekly meetings with the client to better understand their needs. Over a few meetings, he realized the original requirements were incorrect and needed to be completely re-written. With a new set of requirements defined, Tony assembled a team of experts who could build the application to the specifications of the client. He managed the team, working with the client to define all the product requirements. They used an agile approach, allowing for a continuous deployment cycle so the client could see the progress being made.
A few months into the project, Tony identified budget constraints that would cause the program to run out of funding prior to delivery of the final product. He immediately escalated his concern to the senior partner and client. He put together another proposal that was approved for additional funding well in advance. The end result was the product being delivered on time and within the adjusted budget.
Tony has always been skeptical of the disruptive capabilities of blockchain technology. Blockchains are essentially expensive and inefficient public databases. The trade-off is that you can eliminate the need for third-party trust and counterparty risk. In most cases, this trade-off does not appear to be worth it.
To validate this hypothesis, Tony put together a blockchain exploratory research group. He identified a group of students at Tufts University who were looking to analyze potential use cases for blockchains. He managed the entire program from beginning to end, defining the requirements, timelines, deliverables, and organizing the final presentation. The results were mixed with no clear use cases of blockchain adding value over existing technologies available. Regardless of the research findings, Tony was able to successfully manage the program from beginning to end.