Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm surprised. Out of all of the STEM degrees, I'd have thought CS was the most useful for guaranteeing a highly secure, well-paid job out of college.


I don't recognize the world that OP is describing. CS is still a good career option and pays well in relation to the level of skill and education it requires.

Having said that, it isn't a utopia and it isn't for everyone. One of the many reasons why I hate the current "Everyone learn to Code" trend is because if you don't love it, programming is as exciting as reading a EULA or TOS or any legal contract. That's certainly how some of my friends see programming, and I can totally see why.


Yeah, I really disagree with ncmncm's world view. My experience on 25 years of Dev is quite different.


Really? Who have you found that pays overtime?


I don't know who pays overtime, I don't get paid overtime, but I also don't do overtime (at a FAANG). Why do overtime if they don't pay for it?

Overall it's pretty good, and I'd be fine even if I was paid half of what I'm paid, after a 2001-style crash. I can think of very few other jobs that have such nice prospects.


What country if you don't mind sharing?


What country? In my experience overtime is never mandatory. I think if you work for a startup with young (unattached) engineering staff there may be social pressure to spend inordinate amount time at the office - is that what you mean?


In the US, on call/overtime without pay can be mandatory for salaried employees. IT as i recall is called out specifically if you help maintain critical systems. Normally the company just has to be clear on expectations before hand. Fortunately I have had reasonable employers that don't abuse it but i do have to do on call and don't believe i have any option to avoid.


I had a salary in my last company and did on call which came with a paid component if we were called to do work off hours. We were working on that in my current company, but they just basically let me set my own hours to deal with that. Work a lot for a few days, go home early on other days. Have some downtime? Expect you might need to work extra some other time. My company doesn't abuse this, although there have been a few really critical months of crunch time in the past few years. It's basically all evened out for me.


I worked in Israel in various big companies and I could see situations for myself or others where overtime was never explicitly specified, but a monthly salaried software engineer had been given an amount of work that cannot be completed without "voluntary" overtime. I'm asking for country because I can see it being a cultural difference between different countries.


My current gig actually. As a contractor/consultant, I charge for hours worked. You want more than the contracted 40 hrs per week not only do you pay but you pay at a higher rate.


Really? Time-and-a-half over 40 hours?

Thought not.


I've worked in startups for fifteen years and not once have I been in a situation with compulsory overtime. Maybe I'm just lucky? Maybe Boston area startups respect work/life balance more than most?


Anyone developing for a web service or data warehouse is likely to be oncall; if the employer has an SEE organization maybe someone else does it for you ....


I'm nearing the end of my second year of CS. I was up programming until midnight last night (Saturday night). I woke at 6am this morning excited that I get to keep working on this task. I don't know of a single peer excited to work on assignments but I guess this bodes well for me.


Yes and no. Cs is huge. People have preferences for what they’d rather be working on. But it seems it’s a lower div class, whose projects tend to be more general. There’s a possible cases: your peers find the project boring because it is trivially easy but just busy work to them; they find it hard; they are interested in something else in cs.


This assignment, in particular, has a reputation for being difficult, even nightmare inducing. I think it's a combination of I like challenges and I like development, while my peers might not like challenges as much or they might find it stressful.


Are you kidding? We have people flooding into CS jobs from ALL other fields, and ALL other countries, because, "If I don't make it in XyZ I can always get a job programming!", at Google I sat next to a math PhD, an EE, and a Music Major! What do you think happens when every one uses your major as their backup plan?


Have a non-CS PhD and “made it” in my field, but joined FANG to make 2X as much money. I mean, why not?

You should have an upper hand though with a CS degree. I had to learn everything on my own, and there are still areas that I don’t know and you should.


You compete.

It was certainly my backup plan. I never took a CS course, but figured that I could be a programmer if physics and math didn't work out. In fact I went through college with no employment-related objectives.

But to be fair, CS also treats programming as a backup plan. That's why there are coding interviews. How many CS majors actually get "CS jobs," i.e., pursuing the advancement of computer science? Probably the same number of physics majors who get physics research jobs. The rest become programmers.


Software engineering is not a "CS job". Computer science is a research field that has very little to do with the workaday business of creating good reliable software.

Developers would do well to realize that they're skilled labor, not academics or superstar artists, and start behaving accordingly.


I regularly have to design complex systems and also do correctness proofs for isolated functions.

But I see the error in my ways and humbly realize that I'm just "skilled labor".

Really, if you compare the level of thinking of an average developer to an average academic, the academic often has nothing but his degree.

The level of parroting and complete lack of critical thinking is widespread among academics.


Not strictly related to programming, but in general, most engineers don't use the stuff that they learned in college. If it's maybe 20% of the work, it will go to 20% of the workers, rather than each worker doing it 20% of the time. As a result, engineers quickly differentiate and stratify in the workplace.

You may be one of the 20% in your particular area of interest. If you're doing the kind of work that most engineers tend to avoid, you will never be unemployed. ;-)


I got a degree in EE, but spent a year in CS (don't ask). Some years back I totted up what have used since graduation that I actually learned in class. I didn't get a CS degree because it is too easy -- you just read the book. So I didn't learn any CS there, I had already read the book.

The only thing I have used since graduation, for work, that I actually studied for a class was big-O notation and reasoning.

But! Every week, in every engineering class, they assigned problem sets. Every week I read them through and knew, with certainty, there was no way I could do them. Then, every week I turned them in, completed correctly.

So that was what I really learned in school: that I have no real sense of what I can learn to do, and do. Since then, I have just done things, without worrying about whether I was really capable.


> I regularly have to design complex systems and also do correctness proofs for isolated functions.

So just like any other engineering job?


To add my anecdotes to the pile, my experience is that those going into software jobs as a backup plan make significantly less and do significantly different work. They generally just don't have the skill base nor experience to command the same level of salary.


I don't imagine this is true at a place like Google.


Can confirm. EE major with computers and programming as a hobby since I was a kid.

When my major didn’t work out, I managed to land a IT-job instead and I’ve been here since.


Being able to program is, and that takes 10 years of self study.

Or at some companies perhaps being a whiteboard genius helps. But the output of those companies is ... mixed.


Learning to program most definitely doesn't take 10 years of self-study. Someone of reasonable intelligence and enough disciple can learn enough in about a year to become reasonable useful for the average company. Does that person still have a lot to learn. Sure, but that can be learned at the job.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: