1. Passively Watching Online Courses one after the other.
While many great online courses are available, you can literally learn 5x faster by following blogs, short YouTube videos, official documentation & books. For foundational knowledge courses are good. But once you have got the tools, just keep making projects.
2. Just Replicating Projects & moving on to another project fast.
I remember my college days, when I used to buy lot of components & churn out projects one after other, just to impress myself or classmates. This will create a false sense of achievement as literally you are copying and pasting code (maybe slight tweaking) and making projects. While this is a good thing to do initially to get inspired & motivated, you are learning very little. Just slow down. Once you finish a project take time to understand each and every line of your code. Go deeper into the code by understanding what's happening inside each of those nifty function calls. Learn how to optimize the code further. Combine different projects together and see how your code crashes miserably and learn from it. There are lot of debugging skills to gain from this. Document your learnings.
3. "I’ll go back later & fix" attitude will impede your growth considerably.
Embedded coding can be frustrating at times, as root cause analysis can be hard for impatient beginners. They may try to "somehow make it work". There is no time like the present to fix something, document it, or implement error checking. Ask questions publicly in forums & communities. Learn from other more experienced developer's code. Learn to write "safe" C code.