I think the exact opposite, ML is good for automating away the trivial, repetitive tasks that take time away from development but they have a harder time with making a coherent, maintainable architecture of interconnected modules.
It is also good for data analysis, for example when the dynamics of a system are complex but you have a lot of data. In that context, the algorithm doesn’t have to infer a model that matches reality completely, just one that is close enough for the region of interest.
C++ is unironically my favorite language, especially coding in python feels so ambiguous and you need to take care of so many special cases that just wouldn’t even exist in C++.