When planning and communicating timelines for delivering a feature or completing a task, it is essential to consider not just the development effort, but also the testing, deployment, and communication processes. Below are key guidelines to ensure a smooth and predictable delivery process.
- Stage and PROD Testing:
Always include time for both Stage (pre-production) and PROD (production) environment testing in your timeline. This ensures that any environment-specific issues are caught before release.
- Bug Fixes and Retesting:
Allocate buffer time for addressing bugs found during testing and for subsequent retesting. Testing is rarely a one-pass process; issues may arise that require fixes and another round of validation.
- Minimum Testing Time:
Testers must be given at least 1.5 man days (12 hours) to thoroughly test any new feature or change. This time should be clearly reflected in your delivery plan.
- Tester Availability:
Before finalizing your timeline, coordinate with the testing team to confirm their availability. Avoid assuming that testers are immediately available when development is complete.
- End-of-Day Deliveries:
Delivering code on the last day of the timeline does not guarantee same-day deployment if it is submitted after 5:30 PM (17:30 hrs). Plan to complete and hand over your work well before this cut-off to avoid delays.
- Written Communication:
All requests for testing must be documented in the relevant ticket (e.g., Jira, GitHub Issues). Additionally, it is preferred to notify the Engineering group on Slack. Avoid relying on verbal communication, as it can lead to misunderstandings or missed requests.
- No Pressure on Testers:
Do not pressure testers to expedite your request, either in group channels or privately. Testers have their own workload and priorities, and undue pressure can lead to mistakes or resentment.
- Severity-Based Prioritization:
Testers should pick up tasks based on the severity and impact of the feature or delivery. If there is any ambiguity about what should be prioritized, consult your manager. If further clarification is needed, escalate to higher management as appropriate.
- Clear Testing Instructions:
Never assume that testers know exactly how to validate your feature. Always provide detailed, step-by-step instructions for testing. This should include:
- Preconditions or setup steps
- Expected behavior and outcomes
- Any edge cases or scenarios to be checked
Document these steps in the ticket and, if possible, in supporting documentation.
By following these guidelines, you help ensure that your work is delivered on time, tested thoroughly, and deployed smoothly. Clear communication and realistic planning are key to successful project delivery.