Proper automated builds
Be able to reliably create a new build of your project.
Builds that take a lot of manual work are highly error-prone. Make sure to have a good foundation for your project by implementing automated project builds. Having automatic - one-stop - builds is a baseline effort to enable other, high-value tools such as continuous integration, unit tests or just easy on-boarding of new project members.
It should be possible to check out a project from VCS and create a build with just 2-3 commands.
A strongly related topic is how to handle external dependencies and build environments.
Minimal for new projects. Potentially substantial for large existing projects.
- Do not rely on the project files of IDEs for your builds. These are hard to automate, bad for version control and force all team members into the same IDE. Also there is a tendency of projects to outlive their initial IDE, creating a porting effort down the line.
- Consider to use a package manager like conan.io or vpkg to manage dependencies.