So far, university has been pretty disappointing.
I initially went for a computer science degree as I did not know that the university offered a software engineering one. Luckily for me, the first two years of the CS program are identical to the SE one, so I didn’t end up doing any extra work or having to make up classes when I switched.
In those two years, I had all of 2 classes that required actual programming. The first, an introductory course for Java, and the second a class for databases at the end of which we were supposed to code a very basic web page in PHP.
Mind you, the university I attend is not some community college-tier degree factory. It is respected, decently well known, and unreasonably expensive, so you would expect that the CS program, one of their main draw points, would teach you practical skills that you can then use to get a job somewhere. Evidently not…
I started at the university with a somewhat decent understanding of programming from years of doing it as a hobby. What I lacked was the knowledge of how to code in a professional environment.
It is the end of my third year here, and so far I have done one full project where we were meant to build something as part of a team (for which unfortunately, I had to do most of the actual coding). I am soon supposed to do my capstone, which I have been told is basically just writing some kind of tool for the university. I get to pay for the priviledge of writing something for them.
Additionally, the large amount of required classes completely unrelated to my field means that I barely have any time for personal projects. The one good thing to come from all this is that I managed to get an internship right after my first year, during which I have learned exponentially more about software engineering than from my classes. I have also learned that I actually like working, and that I just really really really hate doing boring theoretical classwork that I will likely never use.