Makes sense. Thank you for sharing your experience.
I'm involved in several projects, as well as being the sole developer for a SaaS that I co-own (I make exactly 0 dollars from it right now). I have to solve all kinds of difficult problems, which excites me to no end. I can see how I could have the same demoralizing experience you did.
In my bootcamp, I got a D on my portfolio because I didn't follow directions. I've been praised many times after the fact on this same portfolio.
I'm not an academic person at all, so maybe this would be a slog for me. I did get an A+ in said bootcamp though, not that that matters.
At the moment, I feel like a degree is necessary for any job I would want to get given the job market. Call it future proofing if you will.
A degree is indeed more necessary in some disciplines/industries than others, and in some job markets rather than others. I'll say, sometimes what matters most is who you know, rather than what you know. Mentors and industry events are great for this. The right friends are two-thirds of the battle (and that alone is a reason some people attend expensive private universities).
And, of course, most tech companies will say that tech should be a meritocracy. Then they'll offer bonuses and incentives for anyone who can get a friend to fill an open role. Consider that.
Similar experience here but slightly different as I went to a top tier uni, but was also a decent coder before I started college. There was a lot of 'theory vs practice' snobbery where the former was emphasized above all, to the point of absurdity. Get ready to learn the secret knowledge of academia CS like that that functional languages are secretly the solution to everything - especially purely functional - no variables or even mutable state. And of course the secret to writing bug proof programs is to mathematically prove them - just ignore the fact you're simply kicking the can to new bugs, and the domain of programs you can realistically prove is minuscule. I would not hire 95% of my graduating peers. You're not going to enjoy your time.
If you were going to get a degree I'd get it in something where computer science is applied rather than the 'thing' itself - e.g. electrical engineering (or even aerospace depending on your mathiness). Also that's probably far more future proofed than a CS degree anyhow, and will get your feet in the door for degree requirements as well as open the door to lots of options that a CS degree wouldn't.