Applied Physics BS is good for programming jobs?

Click For Summary

Discussion Overview

The discussion revolves around the employability of individuals with an Applied Physics BS in programming jobs, particularly in software development and scientific programming. Participants explore the relevance of their physics and programming background compared to a traditional Computer Science (CS) degree, considering various programming languages and skills required in the industry.

Discussion Character

  • Debate/contested
  • Technical explanation
  • Conceptual clarification
  • Exploratory

Main Points Raised

  • Some participants suggest that an Applied Physics BS with programming experience could be employable in software development, particularly if tailored to the job requirements.
  • Others argue that companies may prefer candidates with a CS degree due to perceived qualifications, emphasizing the need to highlight relevant CS courses on resumes.
  • There is a discussion about the necessity of additional skills, such as knowledge of algorithms, data structures, and software design, which are often emphasized in CS curricula.
  • Some participants note that for scientific programming, familiarity with languages like MATLAB, Python, Julia, R, C/C++, and Fortran is beneficial.
  • One participant mentions the importance of practical experience and project work in the software industry, suggesting that theoretical knowledge alone may not suffice.
  • There is a distinction made between software engineering and computer science, with some participants highlighting that CS education often focuses more on theory than on programming skills.
  • Some express optimism about the potential for Applied Physics graduates to find opportunities in programming roles, especially in quantitative fields.
  • A suggestion is made to contact potential employers directly to understand their specific requirements for candidates.

Areas of Agreement / Disagreement

Participants generally agree that while an Applied Physics BS can be relevant for programming jobs, there are differing opinions on how it compares to a CS degree. The discussion reflects multiple competing views on the necessary skills and qualifications for software development roles, and no consensus is reached regarding the overall employability of Applied Physics graduates in this field.

Contextual Notes

Limitations include varying educational structures and expectations in different countries, as well as the evolving nature of job requirements in the tech industry. The discussion does not resolve the specific skills or experiences that may be most advantageous for job seekers.

Jo01
Messages
7
Reaction score
0
An Applied physics BS in Italy (a lot of C programming, analog and digital electronics with arduino and assembly and digital design) plus as many CS exams as i can (i'm thinking about OOP in Java 8, algorithms analisys and design, database theory and SQL and Multicore programming in Java and OpenCL) is employable for software development company as a CS BS?
In this way, considering the higher level of math and physics (a lot more than in a CS degree) we must learn the disadvantage of not having an IT degree can be turned in an advantage opening more job positions?
(I.e. I'm thinking about scientific programming)
Thank you!
 
Physics news on Phys.org
So you have an Applied Physics BS and ou have a lot of programming classes as well.

The only problem you face is whether a company will choose you over a CS graduate and that's hard to say.

They may view you as over qualified with all the extra math. I would mention the math and physics you took on your resume or job application but only in a supporting way and instead focus on the CS courses that you think are directly applicable to the job.

Again this all depends on the job, basically you must tailor your resume to match the job using the courses and experience you have as the bait to entice the employer to bring you in for an interview.

If the job focused on using programming, Arduino and some physics related to optics then that is what you'd stress first followed by the other stuff in order of relevance to the job.

Companies will have an assumption that a CS BS can do the following things and you must convince them that you have the same skills.
 
  • Like
Likes   Reactions: QuantumQuest
Jo01 said:
An Applied physics BS in Italy (a lot of C programming, analog and digital electronics with arduino and assembly and digital design) plus as many CS exams as i can (i'm thinking about OOP in Java 8, algorithms analisys and design, database theory and SQL and Multicore programming in Java and OpenCL) is employable for software development company as a CS BS?
In this way, considering the higher level of math and physics (a lot more than in a CS degree) we must learn the disadvantage of not having an IT degree can be turned in an advantage opening more job positions?
(I.e. I'm thinking about scientific programming)
Thank you!

I'd stress out the point that the whole thing depends on the sort of job - into the IT industry in general, that you apply for. The skills you mention are very good, but they're not the perfect match in order to be employable by a software development company, in general. Their demands are more relevant to a CS degree. This entails also extensive educated knowledge of algorithms, data structures, many programming languages, design and implementation of software tools (compilers included) and in many cases web development skills, as well as other things, you find on a typical CS curriculum.

Now if you restrict that to scientific computing, then I think that your skills are more than enough. I don't say in any way that you can't get a software development job, but you'll definitely need more skills.

Also, the factor of working experience must not be overlooked. In software industry this is an absolute must. Extensive knowledge has to be backed up by at least some projects done, with a fair degree of complexity and other kinds of working experience on the subject are always considered plus.
 
For scientific programming I'd like to add that you should be familiar with MATLAB, numerical Python, Julia, R, C/C++ and Fortran or some subset thereof as these frequently popup in modeling and simulation contexts.

Often the work environment will be locked into MATLAB + FORTRAN + C/C++ or be more progressive and using numerical Python, R and possibly Julia.

A good numerical Python distribution (ie has numpy and sympy integrated in) is the Anaconda distribution with Julia. Some instructions for getting it on your computer:

http://lectures.quantecon.org/jl/getting_started.html

I like Julia and think its the future of numerical computing. It has the hooks to integrate with the other languages well and its modeled on MATLAB allowing a MATLAB shop to consider switching to an open source environment provided theyy aren't too invested in the MATLAB toolkits.
 
  • Like
Likes   Reactions: QuantumQuest
QuantumQuest said:
Their demands are more relevant to a CS degree. This entails also extensive educated knowledge of algorithms, data structures, many programming languages, design and implementation of software tools (compilers included) and in many cases web development skills, as well as other things, you find on a typical CS curriculum.
Maybe you're talking about Software engineers.
Here in CS classes you don't learn "many programming languages" but just Python (first was C) and Java to learn OOP paradigm, then some C and some functional concept.
All the rest is THEORY, algebra, probability, computational complexity, combinatorics, algorithmics, logic, logic design...
They repeat often that "Computer science is not programming, programming is only a tool" ;)
 
Thank you all for the answers! :smile:
jedishrfu said:
I like Julia and think its the future of numerical computing.
I wish to learn it asap, I'm very courious of its potential.
Fortunately kind of every post by software companies here say "CS, Mathematic, Physics or other quantitative fields degree required" so i can hope to study and begin to work in the meantime... :wink:
 
One other resource to consider the company youre interested in. Perhaps you could contact them to see what they are looking for. Preferably talk to a hiring manager and not the HR people who won't really know the job specifics.
 
Last edited:
Jo01 said:
Maybe you're talking about Software engineers.

I don't talk only about software engineers.

Jo01 said:
Here in CS classes you don't learn "many programming languages" but just Python (first was C) and Java to learn OOP paradigm, then some C and some functional concept.
All the rest is THEORY, algebra, probability, computational complexity, combinatorics, algorithmics, logic, logic design...

I don't know what holds in your country, but usually there is some separation - this holds at least to the west cultures I know of. After some point, there is a branch to Theoretical CS, Applied CS and the mostly relevant to engineering things (signals, digital systems etc.) or some sort of this anyway. There are surely topics in the first years about all these at the introductory level, but there is specialization later.

Jo01 said:
They repeat often that "Computer science is not programming, programming is only a tool"

True that. Computer Science is all about algorithms. But this cannot devalue the importance of programming in CS.
 

Similar threads

  • · Replies 15 ·
Replies
15
Views
4K
  • · Replies 14 ·
Replies
14
Views
5K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 18 ·
Replies
18
Views
7K
  • · Replies 92 ·
4
Replies
92
Views
22K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 18 ·
Replies
18
Views
4K
  • · Replies 21 ·
Replies
21
Views
5K
  • · Replies 108 ·
4
Replies
108
Views
20K
  • · Replies 11 ·
Replies
11
Views
3K