ORIGINAL PREPARED ANSWER
Miss deadline handle
Shown as prepared. Grammar, structure, names and confidential details have not been corrected or anonymised.
Original prepared answer
How to handle if you feel we are going to miss the deadline
Whenever we pick a project, we try to plan the project in such a way that it gets delivered in no more than 1.5 months. We ensure this timeline by adding an appropriate number of engineers to the project or by dividing the project into phases.
The way it increases motivation is:
-
As a company, we do great with short-running projects compared to long-running projects and we are also able to reach the customer sooner. This makes the team feel like delivering quickly and frequently.
-
Old code gets stale faster, so the faster we move to production, the lesser the code that is dragging out. Hence people can focus on new modules and new business logic. Hence novelty plays its part
-
This limitation also helps the product team to prioritize features in a product more ruthlessly. This ensures the team is working on the most impactful items and hence are motivated more.
Before we start implementation,
-
We spend a lot of time planning out the development and release tasks.
-
We create jira tickets and align them along the sprints of the quarter
During the implementation of a project.
-
We operate in sprints.
-
At the end of every sprint, we do retro to evaluate how the sprint went.
-
In this exercise, we usually get to know if we will be able to meet our OKRs
Delays don't usually come as a surprise to us. So whenever we suspect delay, first we try to see if we can ever catch up before the promised delivery date. If not, we regroup and try to figure out our next delivery date.
-
In this exercise, we check what is the root cause of the delay
-
First I will talk to every member in the development group about the state of their work and from the tech lead about the completion percentage
-
Then I would try to understand where we lost time on a high level
-
If we worked on other high urgency tasks
-
Was it a Major use case miss that required a whole new component to be implemented and why this use case could not have been deprioritized
-
Any rework that we had to do because we did some incorrect solutioning, or incorrect scale estimations
-
Did we simply do poor estimations at the start of the project
-
Some external dependency and their prioritization issue
-
If this process is taking too much time, I would inform dependent teams or close stakeholders about a potential delay and with an ETA of new delivery dates
-
I would then sit with the team members to plan the remaining tasks and figure out the new delivery time. In this exercise, I would deep-dive and try to look at the
tasks in much granular detail
-
Once I am confident with the new estimates, I will communicate the new delivery date to the business heads and customers.
-
I would provide details about the reasons for the delay
-
I would add various milestone dates like ready-for-integration, QA-ready, UAT-ready, or any other intermediate milestones.