5 ms·
A computer science degree isn't the only way to get a good software/programming job. In fact, I think doing a more quantitative major like applied math or engin
by rm999 13y ago
A computer science degree isn't the only way to get a good software/programming job. In fact, I think doing a more quantitative major like applied math or engineering with a base education of 3-4 CS classes (programming, algorithms, data structures, maybe an applied high-level lab class) would serve many people better. If you have the mind for it learning a language and applying it to problems in your speciality isn't hard and can be done outside a class.
- pnathan 13y agoI have never seen a replacement for the algorithmic study outside of a CS degree. It can be approximated by theoretical Math degrees, however. I have a strong bias towards CS/math graduates because of this. Self-taught individuals frequently have a terrible time grasping these concepts and difficulty picking up the language that is taught in CS classes. (n.b.: I don't know WHY this is. Certainly its right there in the textbooks and on Wikipedia. But its been my experience that it is so.) Also, outside of the hotspots, programming jobs are scarce as hens' teeth. Would not recommend living or going to school outside of a hotspot in 2013.
- qdog 13y agoI know some people that go into programming without a CS degree, but there don't seem to be that many motivated people that learn enough if they don't go through school. There are tons of people who can program a little in visual basic or something, but when we interview people we ask them to implement a stack/queue and have tons of people who fail to come anywhere close.
- onemorepassword 13y agoThose "hotspots" where programming jobs aren't scarce include every major city in the Western world... Also, the same applies to countless other professions. There isn't a lot of demand for any kind of educated professionals in Hicksville, Middle-Of-Nowhere.
- vonmoltke 13y agoDefining "programming job" broadly, yes. However, here in Dallas programming jobs for people who are not experienced Java EE or C# CRUD developers are pretty scarce. Those that do exist for others want pretty specific experience, too.
- rm999 13y ago> I have never seen a replacement for the algorithmic study outside of a CS degree How much algorithmic study do typical CS students really learn outside introductory algorithms and data structures classes? I mentioned both as something every aspiring programmer/software engineer should take because I agree they are critical. I think the foundation of basic algorithms (search, sort, graphs), complexity, and the data structures in which those algorithms exist provides more than adequate algorithmic study.
- toomuchtodo 13y agoI'm in Chicago trying to higher ops engineers for $70K who are already making $80-90K, and Java devs with 1-3 years experience who are already making $100-120K. What is this "job scarcity" you speak of?
- pnathan 13y agoWell, you might try looking outside of metro areas to see it. I'd suggest recruiting in the Dakotas/Montana/Wyoming.
- toomuchtodo 13y agoI'm searching nationwide, using Dice, LinkedIn, Craigslist (international nationwide aggregator built for internal talent search!), and StackExchange. While I've harped about companies allowing telecommuting, the startup I'm at is not my own, and does require people to be onsite (for the time being).
- eldavido 13y agoOps engineers for 70k? Wow, that's a joke
- toomuchtodo 13y agoNot my choice, that's my budget. I don't set the budget.
- kyzyl 13y ago> I have never seen a replacement for the algorithmic study outside of a CS degree. Perhaps you've not seen it, but a lot of engineering disciplines like electrical, computer, physics, mechanical, mechatronics, chemical go through the basic intro to programming + data structures and algorithms + discrete math sequence. Indeed, somebody with a CS degree is likely to be much more steeped in that material than somebody without, but don't perpetuate the false dichotomy of "took CS and can reason about algorithms, or didn't and can't" Each discipline had its strengths and weaknesses, but often they are just looking at similar problems from different angles. EDIT: Reading your comment again I see that maybe this is what you were getting at with the preference to CS/math bit.
- pnathan 13y agoWhat I particularly find valuable about CS graduates is (1) the algorithmic knowledge usually taught in the upper class courses and (2) the language about the theory and craft. Math people can shift into the algorithmic knowledge without going through mental twists. Some physics people too. I don't find other engineering majors as amenable to the abstraction qua abstraction that CS pushes. I in particular have had bad experiences with EEs. YMMV. The language thing is sort of a big deal: when I talk about asymptotic complexity and reason about the math underlying a difficult problem, it's good to be on the same page with my audience. CS majors are taught that, even if they forgot it since. It's not something specific and magic to CS majors: its just that higher order abstractions are sort of in the curriculum of computer science and math more than others. They can be learned online or from a textbook; it's not some sort of magic only available in a CS course can. :-) And, as you pointed out, diversity brings a great benefit. I find my colleagues with physics, music, IT, and digital media degrees to have very valuable insights, even though we do have communication difficulties occasionally.