Checklist for a professional software engineering environment:
- Coding standards
- Logging framework
- Testing framework
- Source code versioning
- Build environment: make, autoconf (i.e. nightly builds)
- Issue tracking package
- Quality control, i.e. compiler flags, using lint
Questions to be raised:
- Languages used?
- If there are scripting languages, which platforms will be tested?
- Is portability an issue?
- Decide on one platform and stick to that version
- Decide on one toolchain and stick to that version