First off keep on learning. You just listed areas you are weak at, I would suggest you buy some books or read websites on those technologies.
Take some online resources http://www.noexcuselist.com/ and learn what you can on your own time. When you work you won't have much time to learn, because you will be coding.
I worked with interns, and tried to teach them how to program and use tools associated with programming. Sometimes management didn't like me teaching them and decided to make them move boxes around instead. I just had one Intern from 1999 contact me on LinkedIn that I helped and he seems to be doing well. The law firm I worked at decided to make him move boxes and do manual labor after I tried to teach him how to program. So it really depends on management and your work environment.
Trust me if you don't know data structures and algorithms, your code won't be as good as someone who knows how to use those things. It is never too late to learn, I am taking a course on algorithms right now and I am 45, learning all over again as I forgot because I was disabled and out of work for a decade.
Good luck and never stop learning, technology changes every day, learning to adapt to change is what makes you a good programmer, learning from your mistakes and learning new tricks of the trade makes you a better programmer.