Ok, so I'm at a point where I think I have my basics down. I'd like to think I'm just starting to become an intermediate dev. So, how do I level up here?
It feels like I have reached my threshold, but I really want to break it, and move ahead, do more crazy stuff (for context, I'm talking about programming).
So, what would be the best strategy to achieve this?
I'm working on multiple side projects of my own (I'm a student).
How should I approach learning to program from here? What I currently do is, if I'm unable to understand a how to solve a problem, Google or SO it, find an answer, modify it as required and use it. It this the correct way to go? Is there a better way?
How do I go about learning about new concepts, new classes etc. in an organized manner, one that doesn't overload my brain?
I know it's practice, practice, practice, but the question is what to practice? There's just so much and only so much I can do.
Share your knowledge!
PS: My primary field is Java, so I tagged it for some specific advice as well.
EDIT: As I said, I'm a student, NOT in CSE major, so I don't have any clients or "requirements" per se. So what's best strategies to develop my own projects? I have done a few projects and learned a lot from them, but is there a guide about standards or conventions about projects? How do I structure my projects? How do i build them efficiently?