I'd also suggest starting with Arduino, but also recommend moving towards STM32 for doing more advanced stuff. The hardware abstractions Arduino imposes can get really annoying once you start doing more advanced timing dependent stuff.

Before you run into the limitations of the Arduino platform you will likely have decided to make this your career. You can get very far with very little in that world and Arduino's are incredibly powerful for their size and cost and there are many pin compatible options available if you want to scale up within the platform. Once you hit the wall on that you will have to change the toolchain but by then you will be building extremely complex stuff.