Great!. Then I can give a few of my thoughts, I wouldn't say "advice". But you can have a think about it.

I did Computer Engineering degree, which is different to Computer Science. At the time I have always thought how CS would be a much better degree, but I could not get in due to higher entrance requirement, so instead I got into CE. I dropped into the CS class whenever I can. Reading their teaching materials, I grinned. I remember thinking why do they teach outdated stuff like these. Perl! ( It was on the way out, the future is super hyped thing called Java ). May be because my Collage wasn't all that good in CS ranking. May be that is why. In CE, we actually do lots of what I call real engineering work, with transistor and low level design. Which requires lot of discipline, and rules to follow.

After nearly 20 years. My thoughts are, none of the CS degree preps you for today's working environment. And it never will. It doesn't matter which college you go to, 90% of those work aren't really related. The modern tech teaching is not outdated, it is just the hype cycle moves so fast and tech industry as a whole ( Actually not tech industry, but specially Silicon Valley ) likes reinvent the wheel every few years what was put into text book material are likely outdated.

Most of the best programmer I have met, actually not most, but ALL of them. Are self taught.

And what is funny, ( sorry if this hurt anyone ), most programmer have absolutely No idea what the heck they are doing. They somehow got a pieces of code working, compiled, and it works. Don't ask them why or how or if it is good. At the moment they would have thought those code are good enough, likely 2 years later they thought it was a pile of crap.

Compared to real software engineering, which for example, code used by NASA, or Sqlite, the amount of testing and thoughts required are insane. But those are niche cases in today's market.

Then there is the domain knowledge, ask DHH to explain Linux Kernel to you? He would have said who the fxxk understand this. Algorithm what? Ask Linus to do Web Programming? Who the Fxxk has invented these pile of abstracted mess and trillion of framework just to render a page?

I was the few of the best in class for my programming project. But I never got a programming job, mainly because I had always in my mind, that real programmers were like Swordfish, Matrix, whatever thing that type so fast and could solve a problem instantly. But instead, now I know most programmer just stare at the monitor and does JACK ALL for a whole day.

Programming is 80% Reading + Thinking. Actually I will go on to say 90%. For a 100min of work, you only spend 10 min typing it out. There is actually lot of thinking going on without you realising it, when you have lunch, dinner, sleeping. Your Brian is constantly working in a background thread without you even knowing it.

I wish I had known this at the time. I wish someone could tell me programming is like that. I could happily hack out a solution in my own time and schedule, but I cant think faster and solve a problem in mins.

I had always dream of telling others; the world outside geek circle, how programming really is. I had always wish someone could fund me doing a Mini film, and have it played in all university or programming courses. It will be a documentary of famous programmers every day work and programming. From Facebook, Google, Apple or Microsoft. Having them staring at the monitor, and fast forward showing they did zero typing of code. And has embarrassing question that should know but they don't. How all these programmers are really no different to you.

I know how it feels, programming at your own schedule vs programming at someones else scheduled when you have no idea how long it will take. Would I be fired if I didn't work fast enough?

Programming isn't for everyone. There is a difference between able to write program and likes to write program for a living. And finally you are young! Explore more! Unless you have a burden ( bring money home ), keep looking, don't settle. I didn't understand the explore options when I was young, but once you are in your 30s, your freedom to explore are limited by families, relationship etc.

Good Luck.