I was wondering whether it’s possible for someone, using limited
resources (e.g. books, the internet, online courses and maybe even
attending a boot camp) to become as proficient a programmer as someone
who attended a software engineering course (if no, would you say that
the difference in proficiency would be great enough for me to consider
attending a university course?).
It is absolutely possible. Besides myself, I know many others who did what I did and self-taught their way into very successful careers, and that was before the era of StackOverflow, Wikipedia, where we had to rely on Altavista and mostly desolate IRC groups (I personally had the added bonus of not being a native English speaker, and I probably knew more php3 and c++ than English when starting out). Although what I found in common among all those people is passion, either for technology or for a problem they’ve solved with the tech – their gateway into the field at a usually young age.
As a result, usually, by the time it even came for them to decide university, they already had quite a bit of demonstrable experience actually creating software and solving real-world problems with it. And that is something that recruiters out there are looking for, as that’s what software devs do – they solve problems and create software. Having experience in doing the job usually gives you a leg up over the competition.
How long does it take for you to teach yourself programming to the
same level of standard as a university?
You cannot really compare the two. Every university is different, but from my personal experience, you will do a lot less actual coding at uni than you would do when self-taught. Instead, you will spend a lot of time learning the theory behind how the thing you just made it possible to function, algorithms and so on. Whether that knowledge will be useful in your career at all is up to you to decide, but I personally don’t know a single developer who in real life had to develop compression/decompression algorithms, and yet I don’t know a single university course that doesn’t spend substantial amount of time teaching it.
Ultimately you have to look at how long the course will take, and what you could realistically achieve on your own in the same time frame.
For example, if you could land an internship, or maybe even some junior work instead of going to the university then, I think it’s pretty safe to say, you will come out at the end of the time at much stronger position into your career as in this field, again broadly speaking, nothing beats hands-on work experience.
But if you were to just sitting at home and reading books all this time, you risk coming out of those years with nothing to show for it, and that’s an outcome almost certainly than going to the university.
I can probably guess the answer for this one. But is the difference in
employability great enough for me to, again, have to consider going to
It really depends on what you will do with the time. If you come out of self-learning with nothing to show for it, besides having read a few books and writing a hello_world, then definitely at least finishing uni is going be a much better choice. But then if you will spend that time contributing to many open source projects, maybe even starting your own and showing that you can actually deliver a project from conception to a product, on your own, with no supervision – that’s a story that will open you many doors.
It’s also as important to point out that nowadays having a rich GitHub profile is definitely a massive door opener, and while there are still companies that will reject non-diploma candidates, there is certainly a lot less of those than there were 10 or 15 years ago. Back then you truly struggled as a self-taught developer to even get an email response, while nowadays very few companies (again, in my own experience) would drop a solid candidate because he doesn’t have a degree.