This rubric is designed to assess the performance of third-year undergraduate students in an Algorithms course. The evaluation focuses on core competencies such as problem-solving; algorithmic design; complexity analysis; and implementation skills. Students are expected to demonstrate a strong understanding of fundamental algorithms; including sorting; searching; graph traversal; and dynamic programming. Mastery of these concepts is critical for advancing in computer science and related fields. The rubric evaluates students’ ability to analyze algorithmic efficiency using asymptotic notation (Big-O; Theta; Omega) and apply this knowledge to compare different solutions. Correctness and optimization are key criteria; as students must justify their design choices and identify trade-offs between time and space complexity. Additionally; students are assessed on their capacity to translate theoretical algorithms into practical implementations; ensuring code is functional; efficient; and well-structured. Problem-solving skills are measured through students’ approaches to novel challenges; including their ability to break down problems; select appropriate algorithmic techniques; and adapt known solutions to new contexts. Clarity in explanations; whether in written proofs or code comments; is also evaluated to ensure students can communicate their reasoning effectively. Collaboration and independent learning are encouraged; with assessments reflecting students’ ability to engage with peers; seek feedback; and refine their work. The rubric emphasizes continuous improvement; rewarding iterative development and self-correction. By meeting these benchmarks; students build a robust foundation for advanced coursework and real-world applications; preparing them for careers in software development; data science; and other technical domains. The goal is to foster analytical thinking; precision; and creativity in algorithmic problem-solving.