Professionalism

In modern scientific research and software engineering, brilliant technical skills cannot compensate for unreliability or poor communication. A “lone wolf” who writes great code but refuses to coordinate with the team often creates more technical debt than they solve. Therefore, this course grades you not only on what you build but on how you collaborate. This component is designed to simulate the annual review process of a professional workplace and ensures that grades reflect individual contribution, preventing the “free-rider” problem inherent in group work.

At the end of every sprint, you will complete a confidential Peer Evaluation for each team member. This is not a popularity contest; it is a quantitative assessment of professional behaviors. You will rate your colleagues on specific metrics: Reliability (Did they attend meetings and meet internal deadlines?), Communication (Did they respond to messages and document their work?), and Technical Output (Did they deliver their assigned tasks?). These scores are aggregated to calculate a “contribution multiplier” for each student. If your team receives an ‘A’ on the sprint but your peer evaluation score reveals you contributed significantly less than your share, your individual grade for that sprint will be adjusted accordingly.

In a computational workflow, your commit history serves as an indisputable record of your effort. The instructor will perform a Git audit at the end of each sprint to verify the claims made in your Sprint Report. We are looking for consistent, meaningful engagement with the repository. “Ghosting” the repository (e.g., zero commits for two weeks followed by a massive “code dump” on the due date) is unacceptable professional behavior and puts the entire release at risk. We differentiate between substantial work (writing functions, debugging, documentation) and “padding” (fixing typos or adding whitespace). In a healthy team, code is reviewed before it is merged. Active participation in code reviews (commenting on teammates’ Pull Requests) counts as a high-value technical contribution.

We expect every student to be a “good citizen” of the repository. This means writing clear commit messages, not breaking the build for others, and communicating blockers early rather than hiding them until the deadline. A pattern of silence or technical negligence will result in a failing Professionalism grade, regardless of the quality of the final software product.

Last updated on