I'm about to take on a C++ project and have never programmed in C++ before (usually use Java/TypesScript/Python). Could someone with more experience please a give brief overview of a modern and "best practices" approach for developing products based on C++? Things I'd find interesting to know:
1. What does modern C++ look like? Any good books on the topic?
2. Are Makefiles still being used? Or is it more common to use something like Bazel?
3. Package managers?
4. Linters? Formatters?
5. IDEs people use? VSCode?
6. DevOps workflow? Any best practices for integrating everything into a CI/CD pipeline?
7. Testing frameworks / approaches?
Thank you!