I’m currently in college and I admit I procrastinate a lot because of this (and, admittedly, I’m wondering if I should even finish if I’ll really not know anything at the end). Yes, I know, the idea is to continue self-learning. My struggle here is how do you even know when have a “deep understanding” of something enough to apply for a role? People say when you can explain it to a non-tech person. I’ve known what the color pink is since I was one year old, but if you ask me to describe my understanding of pink, I’d stare at you like a head just popped out of your neck.
I seriously question if I’m capable of any role whatsoever, and the idea that no one ever feels prepared really does not help because why are any of us here if that’s the case? I have no idea what I’m doing and I’m so confused. I feel like I’d need at least a year after graduation to work on… whatever would be necessary to qualify to entry-level roles before I could. And I probably still would be clueless because I’ve never seen a job description I was confident I could fulfill. That includes the one I have now, and that’s only customer service, but I got training. I don’t think dev roles give training, so I just feel SOL.
Pink: a lighter version of red. What you get when you mix red with a little bit of white.
Deep knowledge: what you get when you spend a lot of time working on a problem or in a field and examining it from all available sides such as the why and the when. People with deep knowledge of something can tell you why something is. They understand its purpose and know how it works. They have experience working with it and modifying it. Deep knowledge requires time and curiosity. But also opportunity. For eg: you cannot claim to have deep knowledge of how a piece of software works if you’ve never seen its source code.
With respect to getting training and feeling capable. Sometimes that never comes. Sometimes, you spend all your time chasing the feeling of being capable because every problem is something new, every assignment requires research and every project is beyond the scope of what you have been hired or trained to do (if you were even given that). So it seems the only solution is to become capable at learning. Good at reading (words, code or designs) and absorbing new information. Happy to be a problem solver or a clue chaser. And maybe a little adventurous. Breaking something can be informative. Or cultivate tinkering. Once you’ve learned something, try to break it. Try to reform it into something else. The more time you spend tinkering, the more you will learn.
Finally, as you said, can you explain what you know? Help people in your class if yes. If not, work on getting good enough to do so.
So the good news in your case is that because you are a college student, you’re most likely to be applying to jobs for recent college graduates. That means that they will have an appropriate expectation of your depth of knowledge on a topic.
I recommend talking to your school’s career counseling center about what to expect about the application process for internships and jobs. They can help you understand job postings and also help make sure that you are searching for roles that are appropriate for your career level.