We expect all team members to act according to the following values:
- Act with compassion and dignity towards one another.
- Act respectfully and professionally towards one another.
- Always take responsibility for one’s words, actions, or results.
- Respond to relevant communication within no longer than 3 business days.
- Agree upon and fulfill one’s roles and responsibilities in a timely manner.
- If a team member cannot fulfill their roles and responsibilities for whatever reason, it is then their responsibility to alert the Scrum Master and make sure another Developer is assigned to finish the task.
If conflict arises:
- If there are disagreements on the direction of the project: A discussion will take place and all members can vote on the direction they wish to pursue the most. If a majority wins, the Scrum Master will take down the concerns of the minority side to be addressed. If there is no majority, all team members will voice out their concerns and the Scrum Master will take down all concerns to be addressed.
- If a member is failing to deliver on their obligations to the team: Other team members may alert the Scrum Master. The Scrum Master will then conduct a civil, objective discussion with the underperforming team member about what is expected of them and if there are any issues blocking their progress. If the Scrum Master is alerted more than twice about the underperformance of a team member, the team member may be subject to disciplinary action outside of the team.
Each sprint will be 2 weeks long, to ensure team members are keeping pace with a consistent workflow while preventing burnout and stress.
Daily standups will occur every Monday and Wednesday from 2:00pm to 2:30pm, in which members are expected to be present synchronously. Members are prohibited from covering the work of another member who chooses not to participate. A member who makes no progress on a task for two standups or more in a row will be reported to management.
- All team members must use the code editor Visual Code Studio and the code formatter Prettier which can be installed as an extension on VS Code.
- Don't over-engineer. Write minimum code to get things working end to end, only then iterate to improve.
- Code for each task and spike must be peer-reviewed and pass tests before merging into the main branch of code.
- Always push working code, if you break the pipeline/build then fix it.
- Make granular and small commits, per feature or per bug fix.
- Provide descriptive commit messages.
- Write self documenting code. Use descriptive variable and function names. Avoid unnecessary name shortening.
- Don't leave dead/commented out code behind. If you see such code, delete it.
- Write automated tests to cover critical integration points and functionality.