Project Manager Experience in My Latest Project: Key Insights and Achievements
I had just returned from South Africa after completing an assignment when I was presented with an opportunity to join a new project as a Project Manager. The senior project manager interviewed me at another Offshore Development Center (ODC), where the requirement for a techno project manager arose. My background in technical consulting and project management over the past five years made me a good fit for the role. Although I had primarily been involved in project management, I also had a solid technical background and had completed my PMP certification training, which gave me a strong foundation in project management principles and concepts.
After the interview, the senior project manager shared a brief overview of the project, which was a banking project for a major client in Australia. The project was in its early stages, and I was handed the Statement of Work (SOW), along with the High-Level Diagram (HLD) and Low-Level Diagrams (LLDs) for the project. As I looked through these documents, I realized they were highly technical, and I found it challenging to grasp all the details on my first day. The terminology and concepts used in these documents were somewhat overwhelming, especially considering the technical depth of the project.
On my first day, I was introduced to both the offshore and onsite teams during the Daily Huddle Meeting. As the teams discussed various aspects of the project, I found myself struggling to keep up with the technical jargon. I was used to being involved in technical discussions, but had not worked in such a highly specialized environment before. To gain a better understanding of the project and its technical aspects, I reached out to my Reporting Manager (RM) for further clarification. The RM was supportive and agreed to conduct a session to help me understand the project from a broader perspective. Although the session was useful, I still felt lost in the technical intricacies.
To dive deeper into the project’s architecture, I organized a meeting with the technical lead and the senior architect. They provided me with an overview of the system architecture and how the various applications and technologies were interacting. The project was based on Service-Oriented Architecture (SOA) and involved the development of web services and adapters. Understanding this technology was critical, and having a solid grasp of it would help me manage the project more effectively. By the end of the first week, with the daily huddles and team meetings, I began to catch up and understand the project better.
From the second week onward, I began to take on more responsibilities. I started facilitating the daily huddle meetings between the offshore and onsite teams and began preparing the Minutes of Meeting (MOM) after each session. The MOM documented individual tasks, progress updates, action items, issues, and dependencies. This task helped me keep track of the team’s activities and allowed me to create an “Action Items Tracker,” which I updated daily and circulated to the team. The tracker became a useful tool for managing the project’s progress and ensuring that everyone was aligned on their tasks.
One of the key areas I had to focus on in the second week was the preparation of the Weekly Status Report. I was tasked with sending the report to the Onsite Project Manager from the client side every Friday and conducting a progress update meeting with the client’s PM. Additionally, my RM provided me with a draft version of the project plan, which had been created using Microsoft Project. The plan was not finalized, and I was responsible for making the necessary adjustments and creating the final version of the document. Along with the project plan, I also received a format for the Delivery Schedule from past projects, which I had to adapt and finalize for this project.
The process of creating the project plan was intense, as it required detailed effort estimation and the breakdown of the project into smaller components. I collaborated with the senior team members to create a plan that was both comprehensive and realistic. We broke the project into services and adapters and further subdivided these into design, coding, unit testing (UT), and system testing (ST) tasks. Each task was assigned effort estimates in terms of man-days, and we also determined the start and end dates for each task, along with dependencies between them. The project plan also included assigning roles and responsibilities for each task to the appropriate team members.
While the task of developing the project plan was time-consuming, it was crucial for the project’s success. By the end of the second week, I had gained a better understanding of the project and the key responsibilities I needed to take on. The plan helped in managing resources, setting timelines, and ensuring that everyone was clear about their roles in the project. However, as I delved deeper into the execution phase of the project, I realized that it would not be easy to manage a team of twelve offshore developers, two technical leads, four senior design architects, and eight testers. Although the team was not overly large, managing a geographically dispersed team with varying levels of expertise presented significant challenges.
In this phase, the primary challenges I encountered involved coordinating between the offshore and onsite teams, handling delays, and managing project dependencies. The team was facing delays primarily due to dependencies on input from the client SMEs, as well as from the design and technical specifications provided by the onsite stakeholders. These delays often caused bottlenecks, and the quality of work being delivered by the offshore team was not up to the expected standards. This was a source of frustration, but I focused on using my conflict resolution skills and facilitating effective communication between teams to ensure smooth coordination.
As the project progressed, I found myself dealing with additional responsibilities such as preparing the billing documentation. At the end of the month, the account team required detailed effort and resource cost estimates, as well as actuals for the project. I was tasked with completing the Work Order with cost components and sending the invoice to the customer. With the assistance of my RM and inputs from the onsite project coordinator, I was able to complete the billing documentation. However, this process was time-consuming and required careful attention to detail, as it was vital to ensure that all costs were accurately recorded and accounted for.
Team performance was a major concern as the project was time-critical. Some of the resources on the team were less experienced and took longer to deliver their tasks. To mitigate this, I made the decision to stretch senior resources from another project to mentor the less experienced team members. This was a challenging decision as it required careful coordination to ensure that the senior resources could balance their responsibilities across multiple projects without being overburdened.
Maintaining leave plans for the team was another project management overhead that required my attention. The project was using high-end servers and applications, and I had four BAU resources managing these systems. Server failures and maintenance were ongoing challenges, as the project relied heavily on three servers: development, testing, and production environments. In addition to these challenges, I also had to keep track of software upgrades, installations, deployments, and network-related issues. Delegating these tasks to appropriate team members and maintaining trackers allowed me to focus on more critical project aspects.
Another significant challenge was recruiting new resources for both onsite and offshore teams. I had to negotiate resources, manage their visas for onsite roles, and facilitate the onboarding of new joiners. Gaining access to the secured network and raising requests for various resources added another layer of complexity to the project management process. These administrative tasks required careful planning and coordination to ensure the smooth integration of new team members into the project.
As the first phase of the project neared completion, I began to feel a sense of accomplishment. The team had put in great effort, working long hours, including over weekends, to meet deadlines. With a successful first-phase delivery, we celebrated the team’s hard work and dedication. Although the project was not yet complete, the experience taught me valuable lessons in team management, conflict resolution, and resource planning. It also reinforced the importance of clear communication and the ability to adapt to challenges as they arise.
As the project moved into the execution phase, I was fully immersed in managing the day-to-day operations and overseeing the delivery of the project components. With a team of twelve offshore developers, two technical leads, four senior design architects, and eight testers, it was essential to ensure everyone was aligned and on track. Managing a project of this scale and complexity required effective communication, continuous monitoring, and proactive problem-solving.
The project had a clearly defined set of milestones, and I had to ensure the team met these milestones without compromising the quality of the deliverables. The early stages were focused on getting the various components of the project started, and I made sure to set clear expectations for the team. I ensured everyone understood their responsibilities, and I worked closely with the team leads to resolve any issues that arose.
One of the major issues I encountered during this phase was the daily delays caused by dependencies that were outside of the team’s control. These delays were especially prevalent in cases where the team was waiting for input or approvals from the client-side SMEs or from the onsite stakeholders. These dependencies were slowing down the overall progress of the project. As the project manager, it was my responsibility to identify these bottlenecks and take steps to mitigate them.
To manage the situation, I created a dependency tracker to ensure that everyone was aware of which tasks were waiting for input or approval from external sources. This allowed the team to focus on tasks they could complete independently, thus preventing unnecessary delays. The tracker became an essential tool for me in managing the flow of the project and ensuring that critical dependencies were addressed on time.
Managing quality was another major challenge in the execution phase. The quality of the code produced by the offshore team was not always up to the standards expected by the client, which led to frustration both within the team and with the client. To address this, I worked closely with the technical leads to set clear expectations for quality and ensure that there were regular code reviews and testing at every stage. The daily meetings and progress updates provided an opportunity to highlight any issues related to quality, and I ensured that the team received the necessary support to meet the quality standards.
In addition to quality issues, conflicts between the offshore and onsite teams became more frequent as the project progressed. These conflicts were typically caused by miscommunications, misunderstandings of expectations, or cultural differences between the teams. I found that my role as a project manager was not just about ensuring the delivery of the project but also about mediating between the teams and managing their conflicts in a diplomatic manner.
To resolve conflicts, I implemented regular check-ins with both teams, ensuring that communication was open and that everyone had the opportunity to voice their concerns. I also ensured that both teams were aligned on project goals and deadlines, helping to avoid further misunderstandings.
Maintaining an optimal resource allocation was critical to the success of the project. Since the project was time-sensitive, I needed to ensure that the right resources were working on the right tasks at all times. This meant being flexible with resource assignments and re-allocating resources when necessary. For example, when the offshore team faced delays in delivering certain tasks, I decided to allocate senior resources from another project to mentor the less experienced members of the team. This decision was made to ensure that the project remained on track, despite the challenges faced by the less experienced team members.
The pressure of the project, combined with the growing workload, began to take a toll on team morale. Long hours, weekends, and the constant pressure to meet deadlines were affecting the team’s energy levels and enthusiasm. To combat this, I made an effort to recognize the team’s hard work and celebrate small victories. I made sure to acknowledge the team’s accomplishments in the daily meetings and organized a few team-building activities to boost morale. Keeping the team motivated was essential, and it was one of the most important aspects of my role as the project manager.
In addition to managing the team and addressing issues, I had to ensure that all project documentation was up to date. This included tracking changes in the project plan, updating the delivery schedule, and ensuring that the Statement of Work (SOW) was followed closely. It was crucial to document every stage of the project accurately, especially when it came to tracking progress, changes in scope, and any decisions made during meetings.
The daily MOMs, along with the Action Items Tracker, allowed me to maintain detailed records of the project’s progress. I also used Microsoft Project to manage the project schedule and update it as tasks were completed. The project plan, which was continuously revised, provided a clear roadmap for the team and ensured that we were on track to meet key milestones.
One of the critical aspects of managing a project is maintaining effective communication with the client. I had regular meetings with the client’s Onsite Project Manager to provide updates on the project’s progress. These meetings were essential for addressing any concerns the client had and ensuring that the project was moving in the right direction.
During these meetings, I presented the Weekly Status Report, which included updates on key deliverables, risks, issues, and dependencies. The report also included a high-level overview of the project’s progress, highlighting the work completed and the work remaining. This transparency helped build trust with the client and allowed me to address any concerns before they became bigger issues.
In addition to the weekly progress meetings, I also had informal discussions with the client when needed. These informal conversations were useful for maintaining a good relationship with the client and ensuring that expectations were aligned.
As the project progressed, I found myself becoming more involved in the financial aspects of the project. The account team began requesting detailed reports on resource costs, effort estimates, and actuals. I was tasked with providing accurate billing documentation for the client, which included the completion of Work Orders and invoicing the customer.
This process required a close collaboration with my Reporting Manager and the onsite project coordinator. Together, we ensured that all costs were accounted for and that the invoices were submitted on time. It was essential to keep track of the resources and effort involved in the project, as this information directly impacted the project’s financial health.
As the project progressed further into the execution phase, I quickly realized that effective risk management was one of the most critical aspects of ensuring the project’s success. The project had multiple potential risks that could derail progress, from technical challenges and delays due to dependencies to team issues and unexpected client requirements. I needed to ensure that we could not only identify these risks early but also take proactive steps to mitigate them.
Risk management began with creating a risk register, which I continuously updated with newly identified risks. Each risk was evaluated based on its potential impact on the project and its likelihood of occurring. For example, delays in client feedback or changes in technical specifications were identified as major risks, as they had the potential to cause significant disruptions. I worked closely with the team to develop mitigation strategies, such as setting up contingency plans or identifying alternative resources.
I also maintained regular discussions with the client to ensure that any risks related to their involvement were flagged early. These discussions were particularly crucial for ensuring that the client understood the potential risks and their role in mitigating them. By identifying risks early and acting swiftly, we were able to avoid major setbacks in the project and maintain momentum.
Another crucial aspect of managing this project was ensuring that the quality of the deliverables met the client’s expectations. Since the project was a web services initiative using SOA, quality was a central focus, and maintaining high standards was essential for project success. From the start, it became apparent that there were issues with the quality of the code being delivered by the offshore team, particularly in the early stages of development.
To address these quality concerns, I worked with the technical leads and senior developers to establish a more rigorous quality assurance process. I facilitated regular code reviews to ensure that the development met the required standards before moving into testing. This helped in catching issues early in the development phase, reducing the chances of defects in the final product. I also made sure that there was a clear definition of done for each component, ensuring that tasks were not considered complete until they passed all relevant quality checks.
Additionally, I established a more structured testing framework. We integrated both Unit Testing (UT) and System Testing (ST) phases into the development process, ensuring that each component was tested thoroughly before it was considered ready for deployment. The testing phases were critical in identifying issues and ensuring that we didn’t just deliver functional components but high-quality services that met the client’s requirements.
Despite the challenges with quality, the improvements we implemented early on paid off, as the quality of the code and the services delivered improved significantly over time. I encouraged the team to continuously improve their processes, which helped to build a culture of quality and collaboration within the team.
Managing a team of this size and complexity was not without its challenges. The team had members from different geographic locations, different skill sets, and varying levels of experience. As the project progressed, managing these dynamics became increasingly difficult, especially when some team members struggled to meet deadlines or produce high-quality deliverables.
One of the issues I faced was the disparity in experience levels among team members. Some developers and testers were less experienced, which resulted in delays and mistakes that impacted the overall project timeline. As the Project Manager, it was my responsibility to ensure that everyone was working at the highest possible efficiency.
To address this, I decided to implement a mentoring system where more experienced team members were paired with less experienced ones. This system allowed for knowledge sharing and helped to bridge the gap in skill levels. Senior developers and technical leads took on the role of mentors, providing guidance and support to the junior members. This not only improved the quality of work but also helped improve team morale as it fostered a culture of support and collaboration.
In addition to mentoring, I also had to manage the performance of the team. There were instances where certain members of the team were not meeting expectations, either due to personal issues or a lack of motivation. I had to address these issues diplomatically, ensuring that team members were held accountable without demotivating them. Regular one-on-one meetings with team members helped to identify any personal or professional challenges they were facing and allowed me to provide the necessary support.
Throughout the project, one of the most important tasks was managing stakeholder expectations. With a large, geographically dispersed team and a high-profile client, the expectations for both the quality of deliverables and the project timeline were very high. As the Project Manager, I had to ensure that stakeholders were kept informed of the project’s progress while also ensuring that their expectations remained realistic.
To manage stakeholder expectations, I maintained open and transparent communication throughout the project. I provided regular updates to both the client and internal stakeholders on the status of the project, highlighting key achievements, potential risks, and any changes to the project timeline. This not only helped build trust with the client but also kept internal stakeholders aligned with the project goals.
I also worked closely with the client to ensure that we were meeting their requirements. At various points during the project, the client requested changes or added new features to the scope. While these changes were important for meeting the client’s needs, they also presented challenges in terms of timelines and resource allocation. I had to carefully manage these changes by evaluating their impact on the overall project and negotiating realistic delivery timelines with the client.
In some cases, I had to push back on certain requests from the client, particularly when they were not feasible within the current project scope or timeline. This required a delicate balance of diplomacy and assertiveness, ensuring that the client’s needs were met without compromising the project’s success.
Throughout the project, I continuously tracked the progress of the deliverables and ensured that we were on track to meet deadlines. The project plan, which had been developed earlier, was updated regularly to reflect any changes in the timeline, resources, or deliverables. Tracking progress allowed me to identify any areas where we were falling behind and take corrective action.
I also used various project management tools to track tasks, milestones, and dependencies. Microsoft Project was invaluable for managing the project schedule and identifying any potential issues with the timeline. I also used the Action Items Tracker and the Dependency Tracker to ensure that we were staying on top of key tasks and dependencies.
As the project progressed, I was able to make necessary adjustments to the plan, reallocate resources where needed, and ensure that the team was focused on the most critical tasks. This flexibility was crucial for ensuring that the project remained on track despite any unforeseen challenges.
About midway through the project, I conducted a formal client review to assess how things were progressing. This review involved a detailed analysis of the work completed so far, including a look at the key milestones, deliverables, and any challenges faced by the team. The review was an important opportunity to reassess the project’s goals, timelines, and priorities.
During this meeting, I also solicited feedback from the client to ensure that we were meeting their expectations and that there were no outstanding issues. This allowed us to make any necessary adjustments to the project plan or scope and ensured that the client was satisfied with our progress.
As the project neared its completion, my focus shifted toward closing the project effectively. The final phase of any project is critical, not just for delivering the end product but also for ensuring that all project documentation, resources, and tasks are completed. At this stage, it was essential to tie up loose ends and ensure that every deliverable was handed over to the client as per the agreed specifications.
One of the first steps I took was to review the entire project plan to ensure that all deliverables had been completed and documented properly. This included reviewing the code, the web services developed, the testing reports, and all related documentation, ensuring that everything was in order. Each component had to meet the client’s expectations, and no part of the project could be left unfinished.
The project was based on Service-Oriented Architecture (SOA), which meant that the web services we had developed needed thorough verification and validation. Once the final code was completed and tested, I ensured that the testing environment and production environment were properly set up and fully functional. This was followed by a final round of system testing to verify that the deliverables worked as expected.
As part of the closure process, I organized several closure meetings with both the project team and key stakeholders. The first meeting was with the project team, where we went through the entire project lifecycle, discussing what had been achieved, what challenges we faced, and how we overcame them. This allowed the team to reflect on their contributions, and it provided an opportunity to celebrate the successful completion of the project.
The second closure meeting was with the client. In this meeting, we reviewed the final deliverables, addressing any last-minute concerns or feedback. We also made sure that the client was satisfied with the project’s outcomes and that all aspects of the Statement of Work (SOW) had been met. This meeting was essential for closing out the project on a positive note, ensuring that both the client and the team were aligned on the results.
One of the most valuable parts of the project closure process is documenting the lessons learned. I facilitated a lessons-learned session with the project team to gather feedback on what went well and what could be improved in future projects. These insights were critical for the continuous improvement of the project management process and for identifying areas that needed attention in future projects.
Some of the key lessons learned from this project included:
These lessons were compiled into a report, which was shared with the team and key stakeholders for future reference.
Once the deliverables were accepted by the client, I focused on completing all necessary administrative tasks to close the project. This included finalizing all project documentation, such as the final version of the Statement of Work (SOW), the project plan, and the final status reports. These documents were stored for future reference, serving as a historical record of the project’s lifecycle.
In addition to the documentation, I worked closely with the finance team to ensure that all financial aspects of the project were finalized. This involved reviewing the final billing details, ensuring that all costs were properly documented, and submitting the final invoice to the client. The project had various billing components, such as resource allocation, infrastructure costs, and software licensing fees, which required careful attention.
Once the final invoice was submitted and the project account was closed, I reviewed the project’s budget and expenditures to ensure that we stayed within financial constraints. Any discrepancies between the estimated and actual costs were analyzed and documented to identify areas for improvement in future budget planning.
After completing the project closure tasks, the next step was handing over the deliverables to the client for maintenance. This involved providing all necessary documentation, including the project plan, technical specifications, code documentation, and user manuals. We ensured that the client had all the information needed to operate and maintain the system once the project was officially completed.
Additionally, I worked with the client to transition the project to the maintenance phase, which included discussing the ongoing support that would be provided. Since this was a high-profile banking project, the client had specific requirements for ongoing support and system updates. We arranged for a support team to be available for any post-project issues and to handle any software updates or bug fixes as required.
With the project successfully delivered, it was time to celebrate the hard work and dedication of the team. As a Project Manager, I believe in recognizing the team’s effort, especially when facing the numerous challenges of a complex project. I organized a small celebration to thank the team for their dedication, long hours, and perseverance throughout the project. This recognition was crucial for boosting morale and showing appreciation for their contributions.
Celebrating the team’s success not only helped improve the overall team dynamics but also ensured that the team remained motivated for future projects. It provided a sense of accomplishment and allowed everyone to reflect on the success of the project before moving on to the next challenge.
Looking back on the entire journey, I realized how much I had learned through the various stages of the project. The challenges were numerous, but each one provided an opportunity for growth and improvement. Managing a large, complex project with a geographically dispersed team was a rewarding experience that helped me refine my skills as a Project Manager.
From handling technical complexities to navigating client expectations and managing a diverse team, every aspect of the project taught me valuable lessons. The experience also reinforced the importance of proactive communication, risk management, and flexibility in project management.
In conclusion, the success of the project was a result of effective teamwork, clear communication, and a disciplined approach to project management. As I move forward to the next project, I carry these lessons with me, confident in my ability to handle even more challenging projects in the future.
The completion of the project was not the end of the learning process. As a Project Manager, I am always looking for ways to improve my processes, communication, and leadership skills. I plan to continue building on the lessons learned from this project to improve the way I manage teams and deliver projects.
By taking time to reflect on the challenges and successes of the project, I can continue to grow as a project manager and ensure that each future project is more successful than the last. Each project is an opportunity to evolve and develop better strategies for managing teams, meeting deadlines, and exceeding client expectations.
Popular posts
Recent Posts