I would like to discuss and hear some advice from you about a pretty common situation.
We develop the functionality that has huge business value for the customer’s project and thus the customer is particularly interested that this feature is completed asap. I selected the most appropriate developer for this task based on my team’s current workload, experience with the project and vacation schedule in the team. The developer started researching the problem. The functionality is completely new, connected to the integration with third-party API and plugin and contains numerous technical and business unknowns. The developer made an initial rough estimate of the task and it showed that by the time of his vacation there might be an MVP of the feature. I communicated with him on a daily basis and the progress seemed satisfactory. I felt that by the time of his vacation the developer would finish the main bulk of the task and the other team member could assist with its testing during the absence of the key developer.
Before the vacation, I gathered both developers to define a set of actions that an interim developer should do during the vacation week. Planned functionality was not completed as expected and another developer could not test anything yet. Interim developer listened to an explanation of the feature, read the code and said that he was not able to continue development since the feature was so huge that it required at least a week to research everything. In addition, there were still several unanswered questions that might impede the development of the feature.
1) What should be my actions in this situation now? I cannot tell the client that the development of the feature has stopped because the dev went on vacation. This would be unprofessional.
2) What could I do earlier in order to avoid this situation?