I just want to add that that fact you are aware that you have gaps, and have explicitly identified what some of them are is a massive step forward in sorting out the situation.
I would also say that you are not alone in graduating with a CS degree while having many of these gaps. Much of what gets taught in CS is not directly applicable to many parts of the software industry, and many causes leave out a lot of content that would be. There is remarkably little consistency between coarses. I have interviewed people at your level and seen radically different levels of understanding of even some of the most basic concepts. It's made me quite angry at the institutions on the candidate's behalf that they have graduated with so many basic gaps.
All the gaps you've identified can be rectified with practice and material available online, and you sound like someone who will pick it up. Personally I would recommend finding little projects that involve the thing you want to learn, so build something that needs a database etc. Keep them relatively simple to start with, don't try and build something that will take months.
You've shown you can learn, and you're self-aware of what the gaps are in that learning. It might be hard in the immediate future, but taking what you've written at face value you sound like the sort of person who will do really well once you've got going. Don't let the process grind you down, and don't let imposter syndrome make you feel like you can't take a shot.
> have interviewed people at your level and seen radically different levels of understanding of even some of the most basic concepts. It's made me quite angry at the institutions on the candidate's behalf that they have graduated with so many basic gaps.
Not sure if the anger is to be directed at the institutions in this case or not. Clearly, a lot of schools are deficient. But it's rare that a person can recite back what they learned the same way they heard it all on the spur of the moment. It could be the material was covered, but in a different order than you recieved it, so their education looks more scattershot. Just a possible explanation.
I just want to add that that fact you are aware that you have gaps, and have explicitly identified what some of them are is a massive step forward in sorting out the situation.
I would also say that you are not alone in graduating with a CS degree while having many of these gaps. Much of what gets taught in CS is not directly applicable to many parts of the software industry, and many causes leave out a lot of content that would be. There is remarkably little consistency between coarses. I have interviewed people at your level and seen radically different levels of understanding of even some of the most basic concepts. It's made me quite angry at the institutions on the candidate's behalf that they have graduated with so many basic gaps.
All the gaps you've identified can be rectified with practice and material available online, and you sound like someone who will pick it up. Personally I would recommend finding little projects that involve the thing you want to learn, so build something that needs a database etc. Keep them relatively simple to start with, don't try and build something that will take months.
You've shown you can learn, and you're self-aware of what the gaps are in that learning. It might be hard in the immediate future, but taking what you've written at face value you sound like the sort of person who will do really well once you've got going. Don't let the process grind you down, and don't let imposter syndrome make you feel like you can't take a shot.