* Understand Coding Standards
* Understand Code Quality
Apply software engineering methods and practices especially in the context of high-performance computing.
Develop parallel programs and to apply software engineering methods and best practices.
Assess code quality using different metrics, e.g. length of functions, length of files, lines of code, complexity metrics, code coverage.
-
Identify bad code structures (known as bad smells) in order to assess the quality of the code design.
* Understand Refactoring
Apply common code refactorings in order to improve code quality, such as extract method, extract class, rename class and when it is suitable to apply which refactoring.
Apply refactoring that are specific to programming languages (e.g. Fortran).
* Understand Code Reviews
Use a review system like Gerrit to organize the code reviews.
Document code review results and resulting tasks in an issue tracking system (for example Jira).
Define checklists for code reviews.
Conduct code reviews in pairs or in a team.
Document code review results and resulting tasks in an issue tracking system (for example Jira).
Demonstrate awareness of technical debt during software development and how to pay technical debt.