The thing is, with the ML code or the code for robotics that I've written over years, it's been predicated on the fundamentals of software development I've learned doing everything else. Good habits are good habits, disorganized code is disorganized code.
In some ways all the C/C++ I've written for my various robots and gadgets have been easier than even web development UI code because my button is LITERALLY a button, my screen resolution is a 2 row LCD, and I'm designing the system my code will run in. Don't get me wrong, I'm half kidding, but my point is that a good developer is a good developer in whatever area of development they want to work in.
You take a good web app developer and move them in to robotics, they'll be good quickly. At first they're obviously not as familiar with the domain, so there is a curve. But they will get strong eventually- assuming the EE side of things doesn't drive them away.