I have been lucky like some of you guys who got a chance to work for enterprise clients. From my experience with them, I have learned many things that I am going to share here. Hope this will be helpful to the readers.
-
Define Roles and Responsibilities: When we start a project with the project kick-off and planning, we require to clearly define roles and responsibilities for all the team members. Sometimes all of us are doing a lot of things to get the project on track and be successful but that may not be aligned with the client’s expectations. We should extensively talk to our clients and make this crystal clear so that we can be more productive and have lesser issues in the future.
-
Work and Prepare for the Planned Release: We should be informed in advance by the client about what are their future planned releases and the scope of work or items for each release. This can help any development organization to work accordingly and be ready for the coming release. If possible, we must finish the scope of work for any release before a month or a predefined number of weeks so that client can have some time for internal testing and UAT.
-
Get the Precise Estimate: During the project execution when we get the estimate from the team or give the estimate as a developer, we must include all activities which are involved in completing a task from starting to pushing it on predefined environments. This can include actual development, internal or external communication, merging and deployment, and testing on a desktop, tablet, and mobile where it is supposed to be tested.
-
Work Within Estimation: As project managers or product owners, we should keep an eye to ensure that our team is working on the assigned items within the given timeline. We should educate our developers to raise a concern when they need more time in order to complete the assigned items or work. This is possible when developers are trained to work for the scope of the work only. We should avoid accepting any changes in the existing item. When there is a change, we should get a new user story or task created by the client or extend the time of the existing item. If required additional effort is because of an internal issue, we should not ask the client for that. Let’s be transparent sometimes by frankly speaking to the client. Few clients accept and understand our concerns.
-
Predefine the Decision Points: When we work with enterprise clients using Agile or any methodology, we must define who can take the decision for a particular task. When there are multiple people involved in making decisions, it can lead to conflicts and escalations.
-
Track Everything In the Sprint or Project Execution: We must track and document everything which was unplanned and happened during the sprint or project execution. This can be an addition to the scope of work, changes in the existing items, emergency issues or hotfix, any one-time or recurring meeting (internal or external), issues because of 3rd party dependency, or anything which can extend the timeline of planned release. Later, this will help to know what went wrong and how we can improve.
-
Get Quality Oriented Work: To achieve this task, a project manager can take the help of the solution architect or technical experts to ensure that code done by our team is highly optimized and does not lead to any issues of performance, scalability, or raising additional bugs. If that happens, we should inform the client in advance so they can make better decisions to go ahead on the related item or not.
-
Clarify Data Points: While kicking off the project, we must also discuss, clarify and document the number of data for the products, customers, orders, etc going to be on the server at the time of going live. If this is known in advance, the solution architect or development team can plan better and work accordingly in order to minimize the performance-related issue. This will also assist in preparing the infrastructure with the required servers and software.
-
Regular Reporting: From the beginning, we should also have defined with the clients about types of the report they expect or reports that we can give to them so that they are regularly aware of what is happening in the project. Monthly or executive-level reports can give clients insight on if the project is going on track or having any blocking issues.