I was actually talking about this with a dev this morning.I might reframe this away from self-taught and more towards on the job experience.
Obviously, I think it depends on the domain you're working in, but most comp sci majors really learn math and algorithms.
Math is great, of course, but the vast majority of app and web developers never use any of it. So at the end of the day, even with a proper technical background, everyone is really self-taught when it comes to Python or React programming when they get a real job.
This is a broad brush, but then you get data scientists with academic background who maybe learn R or Python for analysis, which again is great, but they don't necessarily learn OOP principles or exception handling and so their code quality is bad. Yet, they are often tasked with creating apps or doubling as a dev and so they too end up becoming self-taught to a degree.
> I might reframe this away from self-taught and more towards on the job experience.
At least with the devs I've known over the decades, they were self-taught but didn't learn "on the job".
In my view, the difference between self-taught devs and devs who learned it in school is passion. Self-taught devs are self-taught because they're passionate about software. Devs who learn it in school, generally speaking, do so not because of a deep passion for the subject, but rather as a means towards getting a job.
Totally agree. Passion is the key ingredient. For me, as a self-proclaimed self-taught dev, I learned the most on side projects because my main jobs didn't always offered job training or clear paths towards advancement or eventually the product went into maintenance mode and became boring. Maybe it's splitting hairs, but I still consider that on the job experience, even if it wasn't paid many times, and it gave me a deeper understanding of problem solving in addition to programming chops than tutorials or portfolio projects or bootcamps could provide.
Obviously, I think it depends on the domain you're working in, but most comp sci majors really learn math and algorithms.
Math is great, of course, but the vast majority of app and web developers never use any of it. So at the end of the day, even with a proper technical background, everyone is really self-taught when it comes to Python or React programming when they get a real job.
This is a broad brush, but then you get data scientists with academic background who maybe learn R or Python for analysis, which again is great, but they don't necessarily learn OOP principles or exception handling and so their code quality is bad. Yet, they are often tasked with creating apps or doubling as a dev and so they too end up becoming self-taught to a degree.
Just two cents