A physics major is not good preparation for a career in software development

In summary, the conversation discusses the misconception that a degree in physics, particularly a B.S., can lead to a career in programming. The speaker argues that this is not true, as the standard courses for physics majors do not include programming and the skills that are in demand for programming jobs are not taught in these programs. They also mention that the only successful candidates for programming jobs with a physics degree are those who self-taught programming skills. The conversation also addresses the idea of a degree being vocational training and the misleading advice given to students about job prospects with a physics degree.
  • #1
pi-r8
138
30
Whenever people ask what jobs they can do with a B.S. in physics (and to a lesser extent with an M.S. or Ph.D.), one of the first suggestions offered is that they can become a programmer. In my opinion, this is seriously wrong and harmful advice.

Look at the standard courses that physics majors take. None of them have anything to do with programming! Most of them are pencil-and-paper theory classes, with a few lab classes thrown in for kicks. In my program, they suggested one, *optional* introductory-level class in programming. Would you tell someone that they were qualified to be an engineer, just because they had taken one introductory course?

Some people do programming as part of research projects. Again, these are entirely optional, and not part of the standard curriculum. And even when they do, they mostly program simple number crunching algorithms in obsolete languages like Fortran. That kind of programming does not even come close to qualifying someone for a professional programming job. It can actually be *worse* than no experience, because it teaches bad habits that will have to be broken later.

Meanwhile, the skills that are actually in demand for programming jobs, are not taught at all. I'm talking about skills like web and mobile development, server maintenance, or managing a database with SQL. Not to mention languages that are slightly more recent than Fortran (or even C++). Oh, and since so many programmers have CS degrees, they'll also expect you to know a fair amount about CS, even if it doesn't relate directly to programming. No one will ever ask you to calculate an electromagnetic field, though.

As far as I can figure, the only people who are successful in landing programming jobs with just a physics degree, are the people who self-taught themselves programming (usually starting in high school or even earlier). Which is fine for them, but it doesn't really help the people who didn't do that. It's completely unrelated to the physics degree itself. It's basically like saying, that if you teach yourself piano very well, then you can become a professional piano player after getting a physics degree. Technically true, but misleading and unhelpful to anyone with a physics degree who is not a self-taught piano or programming virtuoso.
 
  • Like
Likes math_denial
Physics news on Phys.org
  • #2
By that reasoning a BS in CS is a waste of time for software development since so many CS BS people can't development software at all, and so many good developers do not have CS degrees. A college degree in a specific field guarantees no skills or job prospects. For better of worse college programs are customizable. Your complaint seems to be that very specific training is not forced on everyone for the benefit of the few people that need it.
 
  • #3
You seem to view a CS degree as a vocational degree. If you want a vocational degree, get a vocational degree and some certificates, not a CS degree or a physics degree. They're completely different things.
 
  • #4
bcrowell said:
You seem to view a CS degree as a vocational degree. If you want a vocational degree, get a vocational degree and some certificates, not a CS degree or a physics degree. They're completely different things.
No, that's not what I'm saying at all. Of course no one majors in physics just to get a programming job. The problem is, everyone seems to think that they'll be able to get programming jobs(among others) with just a physics b.s. degree, just like they would with a cs degree, and it's really not true. A physics degree is totally unrelated to programming jobs. A cs degree also teaches unrelated knowledge, but it does at least somewhat prepare you to work as a programmer.
 
  • Like
Likes math_denial
  • #5
I don't think pi-r8 is too far off base.

Someone who has a degree in physics with no programming experience (or just a rudimentary knowledge of it) has very little chance of getting a programming job. I don't know of any companies that would train someone how to program, just because that person has a physics degree.

But - if a physics major has significant programming experience, their chances are greatly increased. I'd say the same for math majors, too.
 
  • Like
Likes math_denial
  • #6
lurflurf said:
By that reasoning a BS in CS is a waste of time for software development since so many CS BS people can't development software at all, and so many good developers do not have CS degrees. A college degree in a specific field guarantees no skills or job prospects. For better of worse college programs are customizable. Your complaint seems to be that very specific training is not forced on everyone for the benefit of the few people that need it.

No, my complaint is that people are giving students bad job advice by leading them to believe that a physics major will teach them enough to get a programming job.
 
  • Like
Likes math_denial
  • #7
Yes that is bad advice indeed. A physics major is not (usually) enough for a physics job or a programming job.
 
  • Like
Likes math_denial
  • #8
It still looks like you see a BS as vocational training.
 
  • #9
I agree. I have seen some of my colleagues' programming and it's atrocious. One physics PhD I know doesn't even know touch typing! He's a hunt-and-peck typist. Personally if I was in a position to hire a software developer I would be very critical of someone with a physics degree, especially just a BS.

Vanadium 50 said:
It still looks like you see a BS as vocational training.

Considering the way colleges market their degree programs, that's not such a strange thing. If getting a college degree wasn't at all relevant to finding employment then far fewer people would do it than there are now.
 
  • Like
Likes math_denial
  • #10
Agree wholeheartedly with the OP. I wonder how many physics students are in school with the notion that a phd in physics is an attention getter in the "real" world because of so-called critical thinking skills.

The elite make a big stink over math and physics skills as a primary indicator of competitiveness, and the pro-education shills rah rah on the sidelines, ...but but...

It just aint so. Otherwise show me the respect.
 
  • Like
Likes math_denial
  • #11
daveyrocket said:
Considering the way colleges market their degree programs, that's not such a strange thing. If getting a college degree wasn't at all relevant to finding employment then far fewer people would do it than there are now.

That's part of another issue: "not knowing what to do with young adults."

A year or two ago, a poster here (it was probably twofish-quant, but I'm not certain) was saying that before, young men went to the army. Today, they go to college.

rdg123 said:
Agree wholeheartedly with the OP. I wonder how many physics students are in school with the notion that a phd in physics is an attention getter in the "real" world because of so-called critical thinking skills.

The elite make a big stink over math and physics skills as a primary indicator of competitiveness, and the pro-education shills rah rah on the sidelines, ...but but...

It just aint so. Otherwise show me the respect.

Easy way to test this supposition. Simply cold-call 10 firms/companies, ask them if they're hiring, and in the conversation, mention having a physics degree. Note their reaction.

Done.

Why is it that people don't know what to do with physics majors, but "they" know what to do with Slavic literature, history or politics majors?

Check http://academic.reed.edu/poli_sci/resources/poliscimajorhandbook.htm out. It's the handbook for political science majors at a liberal arts college, which happens to be a very academically rigorous one. Specifically, read the section titled "Life after..." and the one about "summer internships." The department goes out of its way to pay its students for the internships they're doing. Summer internships are *part* of the degree, and that's at one of the most academic institutes (arguably) in the country.

Sure, a college degree is not, and should not be regarded as a vocational course. Educating oneself is an end in and of itself, but if that was *all* that mattered, I'm certain lots of people wouldn't be getting into as much debt as they seem to. Certification (i.e, a bachelor's degree) is the de facto requirement for lots of jobs. I don't think there's anything wrong with jobs not requiring bachelor's degrees, and I really wouldn't mind doing one after getting any degree, but most people don't think that way. That's also because I probably won't go to a college that would require my getting too indebted.

I've heard of people doing philosophy degrees and then going to work in a circus, which is pretty cool. I don't think there's anything wrong with that. What I find wrong, however, is that just about everybody around me (i.e, kids my age) think they're entitled to cushy white collar jobs just because they have a degree. I have friends studying civil engineering who already have plans of working "on the field" for a few years, and then going "into management or consulting" after, because that's where the money is at. And they're just freshmen...

As far as I'm concerned, every academic department should have one such "major handbook" available to the their students. I've went over the webpages of at least 75 colleges' physics departments over the past year or two, and I've never seen one. At least, not one with specifics instead of "with the critical thinking and technical skills you earn with your physics degree, you will be qualified for a wide range of positions. Many of our graduates go on into fields such as management, software engineering, law, medicine or physics research." Caveat: a lot of them get further degrees for that. I haven't quoted this directly from any webpage but it's the same kind of generic "information" that I've seen in most places. I actually e-mailed a person who takes care of "what alumni are doing" at a college, and my e-mail was forwarded to a prof who responded with that same generic info. It was nice of him to take away 2-3 minutes of his time to reply to my e-mail, but he completely walked around my question and told me exactly what I found in the department's main website.

That was an ivy league school btw. Another one, while not having any extensive info, did have some relevant stuff available. "X, Y and Z business consulting and investment banking firms recruit on campus. Many of our physics graduates have been hired straight out of college from them. Here are some of the questions you may be asked at an interview. Here is some further information on the nature of the job. While most of what you learned in your physics degree will not be directly relevant, these employers value our graduates." (paraphrasing here; been a while since I went on that page, but that was the gist of it)

Now, *that* was useful! However, that's just for an ivy league college. And we know all too well that McKinsey doesn't recruit on campus at SUNY-Platsburgh, Arizona State or UMass-Amherst...

Sidenote: Why are law, medical and engineering schools part of universities? Sure, people conduct research in those fields, but are those degrees not primarily vocation qualifications? The M.D and J.D are "vocational doctorates."
 
  • #12
pi-r8 said:
Meanwhile, the skills that are actually in demand for programming jobs, are not taught at all. I'm talking about skills like web and mobile development, server maintenance, or managing a database with SQL. Not to mention languages that are slightly more recent than Fortran (or even C++).

Classes are only part of your education. If you are good with computers you can and will be expected to teach yourself the language of the day, which is one reason that being in an environment where you can teach yourself is a good one.

Oh, and since so many programmers have CS degrees, they'll also expect you to know a fair amount about CS, even if it doesn't relate directly to programming. No one will ever ask you to calculate an electromagnetic field, though.

Not true. Calculating field equations was something of a standard interview question for the jobs I was applying for. I also got questions on Green functions and contour integration.

As far as I can figure, the only people who are successful in landing programming jobs with just a physics degree, are the people who self-taught themselves programming (usually starting in high school or even earlier). Which is fine for them, but it doesn't really help the people who didn't do that.

Well download a book from Amazon and figure out what it is you have to learn what it is that you have to do to learn what you have to learn. Complaining that physics classes don't prepare you for the "real world" is like saying that doing push ups and aerobic exercises doesn't prepare to you play football.

It's completely unrelated to the physics degree itself. It's basically like saying, that if you teach yourself piano very well, then you can become a professional piano player after getting a physics degree. Technically true, but misleading and unhelpful to anyone with a physics degree who is not a self-taught piano or programming virtuoso.

It's not unrelated. Doing physics problems gives you the mental toughness that you can use to do other things, if that's what you want to do.
 
  • #13
rdg123 said:
Agree wholeheartedly with the OP. I wonder how many physics students are in school with the notion that a phd in physics is an attention getter in the "real" world because of so-called critical thinking skills.

It worked for me. It's not that people will fall over you if you have a physics Ph.D., but rather that if can figure out neutrino diffusion then figuring out how to write a resume shouldn't be that tough.

Part of it is I think is attitude. If you are in the "pay X money to get Y degree to make Z money" then physics sucks. But I've been incredibly curious about the universe. I like analyzing systems, whether physical or sociological, and then figuring out how to make those systems work for me.

Physics works for me because it's the hardest thing that I can find. I can have someone teach me physics, and then I'll figure out the CS and marketing stuff on my own. If I specialized in marketing, then I couldn't teach myself physics. So since I want the "whole package" I went into astrophysics, and then read everything that I could on stuff that has nothing obviously to do with astrophysics.
 
  • #14
Mépris said:
Easy way to test this supposition. Simply cold-call 10 firms/companies, ask them if they're hiring, and in the conversation, mention having a physics degree. Note their reaction.

One thing that I learned from sales people is that this is the wrong approach. If the company wants a computer programmer, then you are a computer programmer. If they company wants a salesman, then you be a salesman. If you can't give what the company wants, then shake hands, politely close the conversation, and move to the next person.

It doesn't matter if 9, 99, or 999 or nine million people say no. All you need is one person to say yes, and you are golden. One thing that sales people do is to figure out very quickly if they can't make a sale, and if they can't they politely end the conversation and move to the next person.

Also, cold calling is usually a waste of time. Large companies have all of these systems in place to prevent people from getting any useful information. That's where conferences and head hunters come in. If you have the e-mail address of someone that will write back, that's gold.

I think this is cool, because the part of my brain that I used to figure out how a big bureaucracy works is the part of my brain I use to figure out the big bang. It's a big puzzle.

Why is it that people don't know what to do with physics majors, but "they" know what to do with Slavic literature, history or politics majors?

Because people in those majors *talk* to people. You need to network. You can make a very simple model of how the world works, and that gives you the number of people you need to talk to get a job.

What I find wrong, however, is that just about everybody around me (i.e, kids my age) think they're entitled to cushy white collar jobs just because they have a degree.

I don't think there's anything wrong with that.

One thing that I learned is that most people want the easy way. Most people get more stuff the easy way. If I wanted the most money/respect/toys, no way would I go into physics. If that's what you want out of life, don't do physics.

It's not what I want. What I want to frankly to die satisfied that my life was worth it.

As far as I'm concerned, every academic department should have one such "major handbook" available to the their students.

Or not. One of the cool things about my teachers if you went up to them and asked what you could do with a physics degree if academia didn't work out, they'd answer that they hadn't got a clue. COOL!

No one *could* have written a "handbook" for me. Most of the careers that I've been working in are things that did not exist when I was an undergraduate. I really have no idea what I'll be doing in a decade. I'm sure it will be interesting. It will likely involve something that hasn't been invented yet.

I'm always learning new stuff. Right now, I'm trying to teach myself how to write low-level video drivers for GPU's. I'm doing it because I think it's important and useful.

I've went over the webpages of at least 75 colleges' physics departments over the past year or two, and I've never seen one.

Because they haven't got a clue.

Now, *that* was useful! However, that's just for an ivy league college. And we know all too well that McKinsey doesn't recruit on campus at SUNY-Platsburgh, Arizona State or UMass-Amherst...

OK, then scratch McKinsey off your list if you go to Arizona State. Who is next?

Sidenote: Why are law, medical and engineering schools part of universities? Sure, people conduct research in those fields, but are those degrees not primarily vocation qualifications? The M.D and J.D are "vocational doctorates."

People need to justify themselves, so one way you can justify spending money on something abstract is that you can say that it's because of "deep stuff." But so what?
 
  • #15
One other thing undergraduate is very different from graduate school. For example, one thing that was on my resume that made me attractive was that I had programmed on supercomputers. Now my supercomputer programming was "self-taught" in that I didn't take a course on supercomputers. However, through the good graces of my adviser, I got free supercomputer time that I could use to "play" with.

Now there aren't that many situations outside of a physics department where someone will just hand you the keys to supercomputer and let you take it out for a spin. (One funny thing though is that the computer I'm typing with now probably has more horse power than the supercomputer I used way back when.)
 
  • #16
pi-r8 said:
Look at the standard courses that physics majors take. None of them have anything to do with programming! Most of them are pencil-and-paper theory classes, with a few lab classes thrown in for kicks. In my program, they suggested one, *optional* introductory-level class in programming. Would you tell someone that they were qualified to be an engineer, just because they had taken one introductory course?

I actually only took one engineering course, Intro to Design. As it turns out, I am qualified to be an engineer. In my case, what was really important was my understanding of science and mathematics in a general sense, because the ME curriculum, for example, has very little relevance to my job. I've never needed to calculate the stress of a beam or quantify convective heat transfer. I also never need to do many of the things I learned in my physics program either.

As I've noted before, not every physics student makes a good engineer. It really does depend on the individual, their interests and capabilities. It also depends on the position. Some engineering jobs require professional registration. Some engineering jobs require field specific knowledge that is taught in specialized programs. On the other hand, some positions require neither of those things. Software jobs are similar. Some physics students will have the proper skills and interests, and some will not. The physics curriculum in and of itself does not provide those things.
 
  • #17
The point is college freshman has no idea about networking and learning stuff on his own.

College freshman thinks that if he/she study hard and do all that teachers are saying, he/she will get a good job.

Because of that young physics majors are doomed.

I truly believe that academic degree becomes useful with certain amount of wisdom and experience of it's holder. Because of that it's better for older people while young should get vocational training first.
 
  • #18
pi-r8 said:
Whenever people ask what jobs they can do with a B.S. in physics (and to a lesser extent with an M.S. or Ph.D.), one of the first suggestions offered is that they can become a programmer. In my opinion, this is seriously wrong and harmful advice.

Look at the standard courses that physics majors take. None of them have anything to do with programming! Most of them are pencil-and-paper theory classes, with a few lab classes thrown in for kicks. In my program, they suggested one, *optional* introductory-level class in programming. Would you tell someone that they were qualified to be an engineer, just because they had taken one introductory course?

Some people do programming as part of research projects. Again, these are entirely optional, and not part of the standard curriculum. And even when they do, they mostly program simple number crunching algorithms in obsolete languages like Fortran. That kind of programming does not even come close to qualifying someone for a professional programming job. It can actually be *worse* than no experience, because it teaches bad habits that will have to be broken later.

Meanwhile, the skills that are actually in demand for programming jobs, are not taught at all. I'm talking about skills like web and mobile development, server maintenance, or managing a database with SQL. Not to mention languages that are slightly more recent than Fortran (or even C++). Oh, and since so many programmers have CS degrees, they'll also expect you to know a fair amount about CS, even if it doesn't relate directly to programming. No one will ever ask you to calculate an electromagnetic field, though.

As far as I can figure, the only people who are successful in landing programming jobs with just a physics degree, are the people who self-taught themselves programming (usually starting in high school or even earlier). Which is fine for them, but it doesn't really help the people who didn't do that. It's completely unrelated to the physics degree itself. It's basically like saying, that if you teach yourself piano very well, then you can become a professional piano player after getting a physics degree. Technically true, but misleading and unhelpful to anyone with a physics degree who is not a self-taught piano or programming virtuoso.

Has anyone in your programming classes taught you that 90% of programming problem is solved precisely with pen and paper before the actual programming is undertaken?
 
  • #19
If your goal is a job in software development, you should get a computer science or computer engineering degree.

If your goal is a job as an engineer, you should get an engineering degree.

Of course it's *possible* to get a job as an engineer or software developer with a physics degree, but honestly, that's doing things the hard way.

You should study physics if your goal is to be a physicist. You might not get there (it's a long, tough road!), but if that's not your goal, you should be studying something more appropriate.
 
  • #20
TMFKAN64 said:
If your goal is a job in software development, you should get a computer science or computer engineering degree.

If your goal is a job as an engineer, you should get an engineering degree.

Of course it's *possible* to get a job as an engineer or software developer with a physics degree, but honestly, that's doing things the hard way.

You should study physics if your goal is to be a physicist. You might not get there (it's a long, tough road!), but if that's not your goal, you should be studying something more appropriate.

The "real" world wants the cheapest on-demand problem solvers, not people mistaking paper degrees for licenses guaranteeing long term professions like a medical doctor. someone out of university with a CS degree won't have much large scale design experience or domain knowledge. They are essentially trained for niche employment in operating systems and compilers.

Makes no sense to be sacked down that long, except HR departments demand it. Go figure.

As for physicist, I think the naive notion from employers is that an engineer is one by default. They don't want physicists on staff as physicists.

So that leaves engineering, often promoted around here as the upcoming nirvana. Of course, chemistry was once a darling too, with all the opportunities in bottom-up nanotech, medicinal chem, etc. Now chemistry is just one of those farm-it-out non-professions.
 
  • #21
Rika said:
The point is college freshman has no idea about networking and learning stuff on his own.

Some do. Some don't. My experience has been that most high school students in the US *do* realize the importance of social networks given the amount of time people put into developing them.

College freshman thinks that if he/she study hard and do all that teachers are saying, he/she will get a good job.

Well that's not true. That should become pretty obvious quickly.

I truly believe that academic degree becomes useful with certain amount of wisdom and experience of it's holder. Because of that it's better for older people while young should get vocational training first.

One problem here is that the way that you learn stuff is by having stuff happen to you. The other problem is that it turns out that you just can't change an educational system very quickly. Educational systems aren't like bridges. You usually can't design them. Rather they evolve.
 
  • #22
rdg123 said:
Makes no sense to be sacked down that long, except HR departments demand it. Go figure.

Degrees end up being a queuing system. If you have X jobs and 5X applicants, slicing people by degrees is a quick and relatively fair way of making the queue smaller, very quickly.

As for physicist, I think the naive notion from employers is that an engineer is one by default. They don't want physicists on staff as physicists.

It depends on the employer. One thing that will get you in trouble is to figure out what "employers" want, as if there is one employer out there. As far as skills go, you have different companies that want different things, and as long as one person says yes, you are good.

Also it helps to understand why HR and employers do what they do. Put simply, they don't care if you get the job. If they are looking for X bottle washers, and you have fifty applicants of which five are certified bottle washers, then you can toss everyone else into the trash. It could be that they just rejected a lot of people who are perfectly good bottle washers, but so freaking what?

So that leaves engineering, often promoted around here as the upcoming nirvana. Of course, chemistry was once a darling too, with all the opportunities in bottom-up nanotech, medicinal chem, etc. Now chemistry is just one of those farm-it-out non-professions.

At some point, you have to wonder if trying to guess tomorrows lottery ticket is a good strategy. Maybe it's a better idea not to follow the latest "hot flavor" but instead develop some general skills which you can apply across careers.
 
  • #23
twofish-quant said:
At some point, you have to wonder if trying to guess tomorrows lottery ticket is a good strategy. Maybe it's a better idea not to follow the latest "hot flavor" but instead develop some general skills which you can apply across careers.

While I agree with your sentiment above, it is also a fact that a significant number of students who graduate with a BA or BS from college/university in the US this year will not be able to find a well-paying job upon graduation, and it may well be the case that many of these students will be unemployed for a stretch of a year or longer (the situation will differ for those with a MA/MS or PhD, depending on the field). And given that many students will graduate with high debts will mean that current graduates will struggle financially for many years to come.

You need to understand that most questions or posts on the Career Guidance section of the forums are ultimately based on the fear that they will somehow be left unemployed or unemployable upon graduation. Telling someone to develop general skills won't help students.

I think it may simply be better to tell people that no matter what you graduate in, you will have a >50% chance that you will lose (by lose, I mean being unemployed, underemployed, or ending up in poverty). Then depending on individual circumstances, each potential student may well decide whether pursuing a college/university education is actually worth it or not.
 
Last edited:
  • #24
StatGuy2000 said:
You need to understand that most questions or posts on the Career Guidance section of the forums are ultimately based on the fear that they will somehow be left unemployed or unemployable upon graduation. Telling someone to develop general skills won't help students.

In fact I think it will. If you have general skills then you can take a look at the situation and then "reinvent" yourself to make the best out of a bad situation. The other advice is "stay out of debt."

I think it may simply be better to tell people that no matter what you graduate in, you will have a >50% chance that you will lose (by lose, I mean being unemployed, underemployed, or ending up in poverty).

First of all, I don't think it's that bad. One thing that helps me put things in perspective is knowing people that have grown up in other countries. If you are born in the United States, you've already won stage one of the "lottery of fate" and then odds are that even if you end up underemployed, you'll still be better off than if you were born somewhere else.

One big irony is that we have the most technologically advanced, productive economy on the history of the planet, yet people *still* feel left out. It's interesting to figure out why. One is that definitions of success are relative. Even the poorest people in the United States live better than most people in Medieval Europe. But that's not the comparison people use. People compare themselves with their peers and by definition half of your peers are going to end up below average.

The second reason people feel awful is that there is a lot of money to be made making people feel awful. If everyone felt like a used beat up car was good enough, then no one would buy new cars and the car industry would collapse. So there are entire industries devoted to making you feel bad.

Second, this is a rather passive view of the world. If we live in a world in which most college graduates can't find decent jobs, then we've just got to change the world. Also if you can't change the world, you can at least change yourself. If you realize that people are in fact trying to make you feel miserable, then you can figure out what to do about it.

Then depending on individual circumstances, each potential student may well decide whether pursuing a college/university education is actually worth it or not.

An education is always worth it. The question is whether going to college is the best way of getting an education. The other thing is what is a college education.

The other thing is that there is "weird feedback." Suppose your chance of winning the lottery is X%. You decide not to play the lottery. However, buy not playing the lottery you end up boosting the odds of the other people that play it. Something that is interesting is that the question "what are my chances of getting into Harvard or getting job X?" is a deeply philosophical question that hits the nature of probability.
 
  • #25
twofish-quant said:
In fact I think it will. If you have general skills then you can take a look at the situation and then "reinvent" yourself to make the best out of a bad situation. The other advice is "stay out of debt."

Perhaps as far as "general" skills are considered, but for many people, "staying out of debt" is not an option if they wish to pursue higher education.

First of all, I don't think it's that bad. One thing that helps me put things in perspective is knowing people that have grown up in other countries. If you are born in the United States, you've already won stage one of the "lottery of fate" and then odds are that even if you end up underemployed, you'll still be better off than if you were born somewhere else.

One big irony is that we have the most technologically advanced, productive economy on the history of the planet, yet people *still* feel left out. It's interesting to figure out why. One is that definitions of success are relative. Even the poorest people in the United States live better than most people in Medieval Europe. But that's not the comparison people use. People compare themselves with their peers and by definition half of your peers are going to end up below average.

Of course, the perspective I outlined is based on those born or raised in the US or another country with similar standards of living (e.g. Canada, Britain, Sweden, etc.) And frankly, people throughout history have always compared themselves to their peers in terms of their relative social standing, so stating that they are better off than those in Medieval Europe is pointless.

Second, this is a rather passive view of the world. If we live in a world in which most college graduates can't find decent jobs, then we've just got to change the world. Also if you can't change the world, you can at least change yourself. If you realize that people are in fact trying to make you feel miserable, then you can figure out what to do about it.

You are operating under the assumption that somehow one can change the world to ensure greater employment for the jobless. As the experiences of Spain and Greece shows, that is easier said than done, for in an increasingly interconnected global economy, a nation's economic situation often depends on situations that are outside of the control of either individuals or individual governments.

Another assumption you make is that somehow you can "change yourself". If you are unemployed, no amount of realization that there are people trying to make you feel miserable will help you out of the situation.

An education is always worth it. The question is whether going to college is the best way of getting an education. The other thing is what is a college education.

The other thing is that there is "weird feedback." Suppose your chance of winning the lottery is X%. You decide not to play the lottery. However, buy not playing the lottery you end up boosting the odds of the other people that play it. Something that is interesting is that the question "what are my chances of getting into Harvard or getting job X?" is a deeply philosophical question that hits the nature of probability.

I obviously concur that an education is worth it. And whether college is the best way to get an education is indeed a question worth exploring (as well as looking into what is a "college education"), but that's a whole other debate I do not wish to explore at the moment.

Strictly speaking, in a true lottery, whether one individual player chooses to participate (or not) has no effect on the probability of a win for the remaining participants, since there can only be 1 event that can be defined as a "win" and a given play is unaffected by any previous play (since each play is independent).

Of course, employment is not a lottery, so the feedback loop you mention will be applicable (if I choose not to seek job A, then the probability of getting job A does indeed increase for the remaining participants, barring any new entrants).
 
  • #26
Hi,

Just wondering, what is the level of proficiency assumed by employers, if someone is going to get a job with a non-CS degree? Does he/she need to have a deep understanding of operating systems or something like that? And what kind of work do they do?

Thanks
 
  • #27
set said:
Hi,

Just wondering, what is the level of proficiency assumed by employers, if someone is going to get a job with a non-CS degree? Does he/she need to have a deep understanding of operating systems or something like that? And what kind of work do they do?

Thanks

According to my experience the employer expects hands-on experience in a particular field - depending on the job opening, plus maybe vendor- or technology-specific certifications (Microsoft, CISCO, SAP, CISSP...). Yes, it is tough to bootstrap this process immediately after university.

Re kind of work: "CS jobs" or "IT jobs" with or without degree can be anything: software architect / project management, developer, networking specialist...

I am a physics PhD with ~ 15 years experience in the IT sector, mainly in IT infrastructure and networking security. When I started to work in IT I felt that only a minority of my colleagues actually had a CS or IT specific degree - IT was a sector that was particularly open to people with uncommon CVs. So you typically started out in a non-IT department and sort of gradually moved into IT. For example: Business degree --> controlling department --> SAP specialist. Or: Engineering degree or vocational training --> manufacturing department --> specialist for production planning software --> IT department.

But this has changed a lot - many of these self-trained early age IT specialists have worked towards a formal degree now while working.
 
Last edited:
  • #28
StatGuy2000 said:
Perhaps as far as "general" skills are considered, but for many people, "staying out of debt" is not an option if they wish to pursue higher
education.

But you do have some say into how much debt. If you have to choose between a Calculus I class in a community college and a big name university, then you have to ask is it worth the expense.

And frankly, people throughout history have always compared themselves to their peers in terms of their relative social standing, so stating that they are better off than those in Medieval Europe is pointless.

There may be a predisposition to rank people, but the basis of that ranking changes. As far as whether it's pointless, part of the purpose of college is to think through what is worthwhile and what is pointless. One problem with buying into the "rat race" is that you'll never have enough, and people will want more, more, more until things blow up somehow.

You are operating under the assumption that somehow one can change the world to ensure greater employment for the jobless.

I'm under the assumption that it's worth my effort to try. I don't know if quantum gravity is solvable. I don't know if full employment is possible. But I think I'll die happier knowing that I at least tried some things, rather than just give in.

Again, people can live their life however they want, and it's good that different people do different things. However, what's worked for me is to try solving hard problems to help the world. That's why I got into physics.

As the experiences of Spain and Greece shows, that is easier said than done, for in an increasingly interconnected global economy, a nation's economic situation often depends on situations that are outside of the control of either individuals or individual governments.

Sure. But "physics thinking" comes in useful in trying to analyze complex situations. Something that happens sometimes is the butterfly effect. A small change in one place can make huge changes. If you can figure out where the butterfly effects are, you might be able to put yourself where you can actually make a difference, if that's what you want to do with your life.

Also, the people that taught me physics also taught me a lot more stuff. There is a power elite in the world, and I was taught that I could change the world, and if I didn't change it positively then I was a disgrace to the school.

Another assumption you make is that somehow you can "change yourself". If you are unemployed, no amount of realization that there are people trying to make you feel miserable will help you out of the situation.

It worked for me. I get angry easily. Once I realized that I was getting screwed over, that got me out of bed in the morning. One thing about anger is figuring out how to express it in ways that are amusing. Watching stand-up comedy helped me do that. Also lot's of absurdist literature and drama.

What works for me, might or might not work for you. But I wanted to point out that for at least one person (i.e. me), getting a physics major was one of the best things that happened to them.

Also, the "what can I do with a physics major?" conversation that I had was a short one. "What can I do with a physics major?" Answer from my teachers: "We haven't got a clue, but we think you are smart and you'll figure something out."
 
  • #29
lisab said:
I don't think pi-r8 is too far off base.

Someone who has a degree in physics with no programming experience (or just a rudimentary knowledge of it) has very little chance of getting a programming job. I don't know of any companies that would train someone how to program, just because that person has a physics degree.

But - if a physics major has significant programming experience, their chances are greatly increased. I'd say the same for math majors, too.

I have a few years worth of programming and still can't even land a job interview. I have "programming" experience. Not "software engineering". I got my projects to do what they are supposed to, but I worked alone with nobody to mentor me, and therefore am largely useless in a setting where teamwork and efficiency are expected. I just don't have those concepts down.

My projects weren't small scripts. My largest project was to program an application that took real-time images from an x-ray detector (30FPS video), analyzed it, displayed it, and let the user adjust the analysis parameters (contrast levels in this case) on the fly. They used my program during live surgeries. And yet I can't even get a job interview. Why? Because I developed all of it using Qt Creator by myself and not using .Net framework in an Agile environment or whatever.

It's the difference between eyeballing how big of a piece of metal you need and then filing it down if you need less vs. calculating exactly how much you'd need.

And of course I just don't have the background in algorithms or databases to be able to hold my own against CS majors. Nobody cares that physicists are "quick learners", nobody cares that physicists are "critical thinkers" or can "analyze problems". Absolutely none of that matters if you can't hit the ground running and need to be trained before you can contribute to a project.

I've posted here a lot asking for advice and it's always been a lot of "umm..." and "ahhh...". A few suggestions to go to various engineering or programming fields that didn't net a single interview. Finally I've decided to just go back to school (obviously my acceptance isn't guaranteed either). Until then I'll work at Safeway I guess. If they don't think I'm overqualified and actually hire me, that is.
 
  • #30
Mistake said:
I have a few years worth of programming and still can't even land a job interview. I have "programming" experience. Not "software engineering". I got my projects to do what they are supposed to, but I worked alone with nobody to mentor me, and therefore am largely useless in a setting where teamwork and efficiency are expected. I just don't have those concepts down.

My projects weren't small scripts. My largest project was to program an application that took real-time images from an x-ray detector (30FPS video), analyzed it, displayed it, and let the user adjust the analysis parameters (contrast levels in this case) on the fly. They used my program during live surgeries. And yet I can't even get a job interview. Why? Because I developed all of it using Qt Creator by myself and not using .Net framework in an Agile environment or whatever.

It's the difference between eyeballing how big of a piece of metal you need and then filing it down if you need less vs. calculating exactly how much you'd need.

And of course I just don't have the background in algorithms or databases to be able to hold my own against CS majors. Nobody cares that physicists are "quick learners", nobody cares that physicists are "critical thinkers" or can "analyze problems". Absolutely none of that matters if you can't hit the ground running and need to be trained before you can contribute to a project.

I've posted here a lot asking for advice and it's always been a lot of "umm..." and "ahhh...". A few suggestions to go to various engineering or programming fields that didn't net a single interview. Finally I've decided to just go back to school (obviously my acceptance isn't guaranteed either). Until then I'll work at Safeway I guess. If they don't think I'm overqualified and actually hire me, that is.

This is a common problem in getting work because you have clueless HR people that have absolutely no idea what something other than the buzz-words mean.

You also have really demanding employers that want you to have a tonne of experience in these new technologies, tonnes of experience, lots of projects, but then put you on a three or six month contract. It's absolutely insane what is happening out there in the dev world (and although this was my experience quite a long time ago, I have doubts that this kind of behaviour has ended).

I can understand a large part of it: the people want the dev guys to probably spend a week or two getting up to speed on the repository in the platform they are using and then just do what they need to do and because of that they get super-specific about what they want.

At the same time though, I have a feeling that this works against them if they don't find what they want and just end up screwing themselves.

Ironically though, there is good news for all those FORTRAN and COBOL programmers in that those huge legacy systems require people to maintain very old and ugly repositories so if you do know these, there is probably an ugly code-base waiting for you somewhere.
 
  • #31
Mistake said:
I have a few years worth of programming and still can't even land a job interview. I have "programming" experience. Not "software engineering". I got my projects to do what they are supposed to, but I worked alone with nobody to mentor me, and therefore am largely useless in a setting where teamwork and efficiency are expected. I just don't have those concepts down.

My projects weren't small scripts. My largest project was to program an application that took real-time images from an x-ray detector (30FPS video), analyzed it, displayed it, and let the user adjust the analysis parameters (contrast levels in this case) on the fly. They used my program during live surgeries. And yet I can't even get a job interview. Why? Because I developed all of it using Qt Creator by myself and not using .Net framework in an Agile environment or whatever.

It's the difference between eyeballing how big of a piece of metal you need and then filing it down if you need less vs. calculating exactly how much you'd need.

And of course I just don't have the background in algorithms or databases to be able to hold my own against CS majors. Nobody cares that physicists are "quick learners", nobody cares that physicists are "critical thinkers" or can "analyze problems". Absolutely none of that matters if you can't hit the ground running and need to be trained before you can contribute to a project.

I've posted here a lot asking for advice and it's always been a lot of "umm..." and "ahhh...". A few suggestions to go to various engineering or programming fields that didn't net a single interview. Finally I've decided to just go back to school (obviously my acceptance isn't guaranteed either). Until then I'll work at Safeway I guess. If they don't think I'm overqualified and actually hire me, that is.

It is true that many employers want their employees to "hit the ground running" because many of them simply can't afford (or don't want to bother with the time) to train their employees.

That being said, let me ask you something. Have you thought about spending time now training yourself in programming in various different languages/tools? (e.g. Java, SQL, C++, .NET framework, SAS if you want to do statistical programming, etc.) Most of these languages/tools/etc. are available on the web to download free of the charge or for a low price (except for SAS -- there you might have to resort to Pirate Bay or ask a friend who works for SAS). If you have solid programming knowledge, it shouldn't take longer than a month to pick up all the skills you would need in a job setting, and you can add your knowledge in the resume.
 
  • #32
StatGuy2000 said:
That being said, let me ask you something. Have you thought about spending time now training yourself in programming in various different languages/tools? (e.g. Java, SQL, C++, .NET framework, SAS if you want to do statistical programming, etc.) Most of these languages/tools/etc. are available on the web to download free of the charge or for a low price (except for SAS -- there you might have to resort to Pirate Bay or ask a friend who works for SAS). If you have solid programming knowledge, it shouldn't take longer than a month to pick up all the skills you would need in a job setting, and you can add your knowledge in the resume.

Yes I have. The roadblocks I've run into are:

  • What do I program? People say "give yourself a project", but that's vague non-advice. I don't know what project to undertake that would force me to learn new concepts. I learned Python a few weeks ago. Made a small game with pygame. It was super easy and I didn't learn anything besides syntax. I just don't know what else to start.
  • Let's say I make a project and improve my knowledge. A good project that takes a solid month of programming. I can then write on my resume "1 month of programming in X". People almost always want years -- at least 1. Do I lie?
  • Added to that, if I get probed on what my experience in language X is, I would respond with "Oh I made a project for myself." Would that even fly? There's no real way to check that out.

However, the main problem is still my first point. I don't know what project I could undertake that would actually be doable for one person in a reasonable amount of time and also teach me new things.
 
  • #33
Mistake said:
Yes I have. The roadblocks I've run into are:

  • What do I program? People say "give yourself a project", but that's vague non-advice. I don't know what project to undertake that would force me to learn new concepts. I learned Python a few weeks ago. Made a small game with pygame. It was super easy and I didn't learn anything besides syntax. I just don't know what else to start.
  • Let's say I make a project and improve my knowledge. A good project that takes a solid month of programming. I can then write on my resume "1 month of programming in X". People almost always want years -- at least 1. Do I lie?
  • Added to that, if I get probed on what my experience in language X is, I would respond with "Oh I made a project for myself." Would that even fly? There's no real way to check that out.

However, the main problem is still my first point. I don't know what project I could undertake that would actually be doable for one person in a reasonable amount of time and also teach me new things.

As far as what to program, that would really depend on you. I'm a statistician, and if I was to learn a new programming language, I would pick a project that would involve some form of statistical or data analysis as a place to start.

Earlier in your post, you had stated that you had programmed an application that analyzed images from an x-ray detector using Qt Creator. Now I have no experience with Qt Creator (in fact, I've never heard of it until now), but it sounds to me that the work was fairly complex. Have you thought about independently developing this application using another programming language/application as a project? You already have the basic algorithm in place, so it's a matter of converting it into the new format.

If what I suggested above is too much a challenge in the beginning, starting with a little project (like developing a game using Python, as you did) may be advisable. Whatever you decide to do can then be mentioned in your resume; you can also save copies of the algorithm or the application if possible as part of a portfolio (similar to what graphic designers do with their projects) which you can present to a potential employer.

As far as what to write on your resume, I would simply leave out how many years of experience you have, and say something to the effect of "solid knowledge of X programming language" or "comfortable knowledge of X programming language".
 
  • #34
StatGuy2000 said:
Earlier in your post, you had stated that you had programmed an application that analyzed images from an x-ray detector using Qt Creator. Now I have no experience with Qt Creator (in fact, I've never heard of it until now), but it sounds to me that the work was fairly complex. Have you thought about independently developing this application using another programming language/application as a project? You already have the basic algorithm in place, so it's a matter of converting it into the new format.

Qt Creator (C++ IDE) is like Visual Studio or Netbeans, with the added benefit that it is designed for use with the Qt libraries, which are cross-platform libraries that handle everything from GUI development to networking and multithreading.

In any case, the program I made used DLL files provided by the manufacturer of the hardware that I can't really do anything without. I can definitely simulate images, but it just seems like I'm making a project that ends up being worthless. The big deal about the program for me was that I had to have a separate thread for data acquisition and a separate one for the GUI as well as figuring out how to store a monolithic chunk of data (up to 700MB) in one giant array, being able to cycle through that data, save it in various file formats, load it back up. That kind of thing. Also a big chunk was devoted to communicating with the x-ray detector itself, changing settings remotely, checking to make sure everything is working well, and calibrating. A lot of bread and butter programming that was more time consuming than difficult.

If what I suggested above is too much a challenge in the beginning, starting with a little project (like developing a game using Python, as you did) may be advisable. Whatever you decide to do can then be mentioned in your resume; you can also save copies of the algorithm or the application if possible as part of a portfolio (similar to what graphic designers do with their projects) which you can present to a potential employer.

Can you elaborate more on the portfolio? Pictures of my program or something? Only thing I'd feel bad about is if someone looks at my code and sees bad coding practices or something. Usually when I'm learning, I don't sweat the details.

As far as what to write on your resume, I would simply leave out how many years of experience you have, and say something to the effect of "solid knowledge of X programming language" or "comfortable knowledge of X programming language".

Yeah that's a good way to go about it I guess. Then if the interviewer probes you you can actually explain instead of being weeded out automatically.
 
  • #35
I’d echo what a couple of previous posts have said. My background in physics (pen and paper theory work) did nothing to prepare me for writing software. I’ve worked with a few fresh out of university computer science majors (including some with postgraduate degrees) and they also were not very well prepared to be software developers. Among the people I’ve worked with there’s a mix of opinions about the value of academic work in computer science as it applies to software development.

I’ve worked in a couple of biotech jobs. A background in science was a bonus in these jobs, but the main thing they needed from me was coding skills. The most helpful aspect of my physics background has been the experience it gave me giving technical talks to groups of people.

I’ve made plenty of mistakes writing software, but as far as I know none of them has been the result of not studying computer science, e.g. I’ve never found myself saying, “if only I had known about the Liskov substitution principle I wouldn’t have made that mistake”. Also, none of the people I’ve worked with that have computer science backgrounds have ever told me anything like that either.

As some others have said, I think vocational education would probably be the best preparation for being a software developer. However, I think a lot people have a have a strong bias towards computer science degrees or more generally four year degrees. I wish it wasn’t that way, but I think it is. I will say I have interviewed for jobs and sometimes I get asked computer science type questions. It would be nice to just know the answer, or at least have seen a similar problem in the past, instead of standing at a while board trying to figure it out on the fly.

Learning the basics of programming isn’t that hard, “if” statement and “loops” are no big deal. I think the main challenge is learning the libraries and frameworks. I’m not sure how much they teach this at universities. The people I’ve worked with right out of school didn’t know much about these kinds of things. Another thing they lacked was working within a software development process. Doing this for a small class project is very different from doing it in the context of a large commercial application.

At a smaller company knowing about networking and operating systems might be helpful, since there might not be much other support. But I’d look at this as more of a “nice to have”, for the most part it’s probably more important to be really good at programming (including programming in a browser for a web application) and knowing enough about databases to be effective.

To me it’s not a big deal if someone doesn’t know how to program if they can learn quickly and have a good attitude they can pick it up fairly quickly. I basically started from zero, after a couple of weeks I was doing productive things, I was marginally competent after about 2-3 months (i.e. it seemed natural to call myself a software developer) and was ok after about 6-7 months or so. I think the big challenge is getting in. I’ve conducted a fair number (close to 100) of technical interviews (basically after people have gotten past a resume review and sometimes a phone interview) and all of the people I’ve interviewed had real programming experience. Like I said though, I have worked with people right out school, so it’s possible.

In summary, I think there’s a bootstrap problem, actual software development experience it the best way to learn, but how do you get it? A comp sci degree would probably be very useful in getting you past the resume screeners and into an in person interview.
 

Similar threads

  • STEM Career Guidance
Replies
30
Views
5K
  • STEM Career Guidance
Replies
22
Views
3K
  • STEM Career Guidance
Replies
9
Views
2K
  • STEM Career Guidance
2
Replies
37
Views
6K
  • STEM Career Guidance
Replies
5
Views
825
  • STEM Career Guidance
Replies
18
Views
2K
  • STEM Career Guidance
Replies
10
Views
721
  • STEM Career Guidance
Replies
33
Views
2K
  • STEM Career Guidance
Replies
9
Views
1K
Replies
13
Views
2K
Back
Top