5 ms·
Ask HN: Is a software engineering degree worth it?
I'm 19 years old and I have around 1.5 years of experience in C, C++ and Python. I have done several projects in these languages, including a small shell in C with friend, a Discord bot in Python and I'm currently coding an HTTP server in C++ with some friends.
Do you think a software engineer degree is worth it given my current experience?
- raxxorrax 5y agoYes, I think it is worth it to know about the fundamentals. It is a very vertical field of study and you might want to combine it with another engineering discipline. I did so with electrical engineering (I am a horrible electrical engineer, but it still benefited me to know the problem space). Some universities have something like a studium generale, which I don't think hurts to evade the narrow perspective of computer science. Otherwise it doesn't hurt to look into other fields. On the other hand you can also study another engineering discipline and be a good programmer, but I believe that most content in computer science is worth it. At least at my university that was the case.
- 9c666b4c 5y agoYes! I have actually thought about doing a different type of engineering degree. But given my goal is to become a software engineer in the crypto space (specifically to become a smart contract developer), I'm not sure how studying mechanical engineering would help for example. That's why I have mostly been focusing on a software engineering / computer science degree.
- newaccount74 5y agoIf you are interested in crypto, you should consider to study mathematics instead of CS or software engineering. I don't know if "smart contract developer" is going to be a thing in the future, but I can guarantee that you'll never have difficulty finding a job if you study maths (or any engineering subject) and are good at programming.
- jstx1 5y agoYou're 19 - have you been working and getting paid for it for 1.5 years, or did you just start programming 1.5 years ago? If it's the latter, that's not experience. Where do you live and what's the cost of a degree there? Why software engineering and not computer science? I really think it's worth it given that you're only 19 - you'll learn a lot, it will open many doors (especially if you go to a good university), and you'll get a chance to grow up a bit in your early 20s in an environment that you can't experience otherwise.
- 9c666b4c 5y agoNo, so I basically did a sort of long bootcamp to learn C and C++. I have never worked in a company as a developer. If I were to pursue a degree I would probably do it in Canada given I would like to get the permanent residency there. Your latter point is definitely fair. The thing which makes me reconsider the university choice is the fact that my goal is to become a crypto developer (smart contract engineer) and I feel like university won't help much in that area. And 5 years is a lot of time which I could use to build a portfolio of projects in the crypto world. I may definitely be wrong here, though.
- warrenm 5y ago>And 5 years is a lot of time which I could use to build a portfolio of projects in the crypto world Regardless of anyone's particular opinions of the value of "the crypto world", why do you think this is an either/or choice? Who says you can't enroll in a degree program and build a portfolio of anything?
- GianFabien 5y agoI have a software engineering degree and I don't regret working for it. But there is no way that I would have gone into a 5 or even 6 figure debt to get it. The ROI is far too long. If you are motivated you can learn most of what they teach at university from text books and by using online materials from the best universities. The hardest thing about being self-taught is that it is hard to find competent help when you get stuck. Ideally you want a job where your co-workers can help you out when you get stuck. You might notice that many of them do have degrees.
- crate_barre 5y agoDitto. Don’t pay too much for it (think public in-state schools).
- netizen-936824 5y ago5 figure debt is a minimum of 10k maximum of 99k That's a pretty broad range and I think up to 50k is absolutely acceptable. Paying that off will be no issue for someone in a decent dev job as long as you manage your costs effectively
- bjourne 5y agoLol yes. You will meet students who are 10 times stronger than you and learn about things you didn't even knew existed.
- lagrange77 5y agoEspecially in STEM, to stay good, you will have to commit yourself to lifelong learning. (For many of us, this is actually half of the fun!) This will be an easier task, if you have a solid foundation of core principles. University is offering you a prebuilt environment to build that solid foundation. But nowadays, they are not an exclusive source of wisdom, as you know. Depending on what kind of learner you are, you can leverage the fact, that we all have access to the best learning material out there, worldwide. That's a singularity in the history of education and we are the first generation that can profit from it. For me, this is one of the last sparks of hope in the current bullshittification of the internet. EDIT: change "softeware engineering" to "STEM"
- 9c666b4c 5y agoThis seems the right answer to me. Thank you very much!
- newaccount74 5y agoGetting a degree is almost always worth it. There are three benefits of getting a degree: 1) You get a thorough and broad knowledge about the subject. Many self-taught programmers focus on just the stuff they need at the moment, and lack a lot of the breadth that comes from full time studying a subject 3 - 5 years. 2) You'll get to know many people in your field, both students and professors, and depending on your university, you might even get contacts to the industry. This is neat because first of all it's fun to meet like minded people, and second of all you'll get to be part of a network that makes finding jobs much easier. 3) It's much easier to find a job when you have completed a degree. A completed degree gives you instant credibility. You can of course get a job without a degree, but every time you apply you're going to be playing in hard mode, especially when all the other candidates have a degree.
- memling 5y ago> Do you think a software engineer degree is worth it given my current experience? I'd echo any others who say that a degree is worth it. S/W engineering, maybe, maybe not. A degree is a signal you can stick at something for four or five years. This is a valuable skill. You may have that skill without a four-year degree, of course, but the signal isn't there. My first job took me a few years to feel comfortable because I'm a slow learner and the technology was difficult to learn at the same time as the rest of the job. Should you do software engineering? Programming is a white-collar trade skill. You can do a lot with programming, and a degree doesn't magically confer the trade skills. I usually recommend people who are degree interested to consider mathematics for a bachelor's degree and then a masters in Computer Science if they're interested in graduate-level education. This isn't the way I went, though, so I can't comment on whether it's really that advisable. But I would think a rigorous math education would prepare you for thinking about fun problems you can solve with programming and an MS would provide some research to go along with it.
- horns4lyfe 5y agoA lot of answers here are about the skills you’ll learn, which is all well and good, but it sounds like you already know how to program as well as most CS grads. What you don’t know how to do yet is interact socially at a high level with college grads, and that’s something you can only learn in college, and will likely (I know there are exceptions, but they’re rare) benefit you a lot more in your career than knowing how to build a discord bot. Also, college can be really fun, and that’s worth a lot.
- 9c666b4c 5y agoThank you for your thoughtful answer, appreciate it. I agree that the relationship aspect of university is probably very beneficial. Is it worth though to spend several years of your life in university "just" to interact socially with other people? My reasoning is that you could just go to meet-ups and events where "smart" people gather and make friends there.
- horns4lyfe 5y agoI would argue that, yes, it is worth it. Going to occasional meetups is nowhere near the same level of social immersion as going to a big university. And, like I said, it’s a lot more fun. Not just for people that like to party either, there are so many social niches you can explore in an environment like that. This may not be a popular idea, but I promise it’s true for others as well: I can tell when I interact with someone that went to a >= decent university and someone who didn’t. There are certain social rhythms, assumptions, and shared values that may not be overt, but just make the interaction smoother. Not saying that as a knock against anyone who didn’t go to college, just that if you do, it will make interactions with the majority of people in industry smoother for you and probably even more so for them.
- sloaken 5y agoShort answer: Yes, definitely. Long answer: Depends on your situation and your goals. I was like you in that I had 2 years of programming when I decided to go to university (CS degree). At that time, no one would hire a kid who claimed he knew how to program. So my entire goal was to get a piece of paper that would validate I knew something. Somewhere in my Junior year, I was grateful I was in school. I think it was Algorithms that did it for me. It was so exciting and enlightening. That said, I have know successful programmers who did not get a college degree, and worked their way up, one painful step at a time. In all cases I truly believe they would have been more successful had they gone to school. But, depending on your life circumstance that is not always possible. Do you have a good quality school in mind? Can you afford to go to school?
- init 5y agoIf you have access to free university or you can get a loan then by all means go get a degree. Your existing programming experience will give you a head start in a few courses. Most importantly, it will be easier for you to get an internship while studying and you will get exposed to real world software engineering in a hopefully successful software company. The degree will also make it easy to relocate across the globe. Some countries require university education or many years of experience to even let you work there as a software engineer.
- MoJoPokeyBlue 5y agoIt depends. If you have a high IQ and enjoy programming to the point where it consumes most of your time, then forego the degree. In this capacity, programming is fun and you thoroughly enjoy solving the next challenge. If you have an average IQ and/or if you find programming more of a "job", then you need a degree. In this capacity, even though you should be programming, you'd rather be gaming or doing something else.
- leros 5y agoForget the value of the education. Being allowed to attend the career fair at a top university is worth it alone. You'll be able to secure internships at top companies and get a high paying job upon graduation. You'll end up being able to command higher salaries with that background. The reality is that pedigree (both university and previous companies) make a huge difference in getting top tier companies interested in you.
- s0rr0wskill 5y agoFor most people, yes
- Phithagoras 5y agoThe advantage of a degree in compsci/electrical eng/computer eng/software eng is that really smart people tell you interesting things for 4 years straight. Smart people with a huge amount of subject experience tend to stick to doing their job in the working world, and maybe if you're lucky a couple of them will mentor you over the course of your whole career. In undergrad you'll meet 10+ a year. When your 4 years (+/- 1) of listening to smart people is over, you've probably learned something. This probably includes things you didn't know you wanted to know. I didn't know linguistics existed until it was the only elective that fit into my timetable. I ended up enjoying it so much I nearly changed majors. Theres value in a getting a degree to get certain jobs, but msot of it is in the sheer volume and breadth of things you learn. It's also a great excuse to socialize with people who are interested in the same things.
- giantg2 5y agoYes, a BS will get you past the automated resume screeners that most companies use.