Engineering Senior physics major to software engineer?

AI Thread Summary
A senior physics major is transitioning to a career in software engineering and seeks advice on preparing for job eligibility by graduation. They have limited programming experience, having taken only one FORTRAN class and are currently enrolled in a C/C++ course. Recommendations include gaining experience through complex coding projects, contributing to open-source initiatives, and considering internships, though larger companies may not be the best fit for growth. Learning object-oriented programming is emphasized, with suggestions to explore languages like C# or Java if C++ proves challenging. Engaging in personal projects that simulate real-world applications is also advised to enhance programming skills and understanding.
Jeeb
Messages
1
Reaction score
0
Hello everyone!

I have recently decided that I want to pursue a career in software engineering, but the problem is that I haven’t taken many courses in it. I’ll briefly describe where I’m at now:

I’m a senior physics major, and I had originally planned on doing some sort of medical physics or biophysics career. After participating in an REU in biophysics, I decided that I research in general wasn't for me, though I still have some interest in medical applications. Upon more soul searching I realized that I enjoyed programming much more than anything I had previously tried; in particular, I enjoy the creativity and analytical skills that are involved in programming.

So far I’ve only taken one programming class which taught FORTRAN and emphasized its use in solving scientific problems. I’ve taken classes in introductory biology, organic chemistry, the standard physics and math sequences, and the advanced physics classes (e.g. quantum 2, E&M2, modern optics), and I did another REU in photonics/optoelectronics in a previous year. This semester I am finishing up my physics requirements and taking a C/C++ class in the CSE department.

I want to be eligible for jobs in software engineering by the time I graduate in the spring, so my question to you all is what sort of steps should I take to prepare myself for programming in general? For example: what classes can I take in the spring semester that would be most useful, would CSE research be a good idea, are there any books you would recommend, etc.?

Thank you for your time!
 
Last edited:
Physics news on Phys.org
Have you looked into computational physics?
 
Or seen what your school requires for a CS minor?

I want to be eligible for jobs in software engineering by the time I graduate in the spring, so my question to you all is what sort of steps should I take to prepare myself for programming in general?
Take software engineering and get some experience working on really big/complex coding projects. If you've got any skills to offer (coding/testing/writing), volunteer for an open source project. You need to build up experience coding for most every job, even the ones looking for new grads.
 
I agree with @story645 on working of complex coding. Getting an internship was helpful to me, but there is only so far that it can take you. I find most large companies would rather hire outside of their internship pool. A lot of people think that the majority of these jobs are being sent offshore, however, that is not entirely true. There is still a great demand for onshore software engineer jobs, if you know where to look. Hope this helps, good luck.
-J
 
JNanotech said:
I agree with @story645 on working of complex coding. Getting an internship was helpful to me, but there is only so far that it can take you. I find most large companies would rather hire outside of their internship pool. A lot of people think that the majority of these jobs are being sent offshore, however, that is not entirely true. There is still a great demand for onshore software engineer jobs, if you know where to look. Hope this helps, good luck.
-J

As a software engineer for over 20 years I can tell you a few things. Not in order and forgive me for the hyperbole.

1. I would absolutely suggest *not* getting hired by a large company. Larger companies more often than not simply do not require you to wear enough hats. Further small companies can only survive when there are truly fire-breathing dragons present. Such dragons are critical to have around for your own growth. There is far more to this than those two points, and quite frankly I almost dare not enter it here because this subject by itself is worth 20 or more dedicated threads.

2. Object Oriented technology is an absolute must these days. It is a paradigm that I and most once procedural programmers fight and eventually cave in happily to. Huge caution here. C++ is not the best way to learn this. IF for some reason you find C++ confusing you are certainly not alone. It is a language fraught with ways of shooting yourself in the foot. Consider C# or Java if you become beleaguered. Sigh. Another 20+ threads worth.

3. To learn how to program I would suggest this. Pick an application that you would find useful *and* interesting to you. One that you wish existed. Design and code the thing from start to finish, including (believe it or not) documentation + source code control + delivery mechanisms. Make it as much a real product as you can. You will be amazed at the breadth of programing and other obstacles you will bump into that everyone else not doing this will ever be exposed to.

4. I once would have suggested becoming a frequent visitor to the following USENET newsgroups:

comp.programming
comp.object
comp.lang.{some language}.{some group} <---depending upon your current language

...but sadly USENET is under siege from high volume spamming unless you use a service with an antispam filter. Look around for various computing forums suiting your needs.
 
I don't know if anyone on here works for any of the well known defense companies of your country, whichever country you are from?? Also, if you choose to work in one, do you think the engineering education provide from your school would adequately prepare you for the job. What do I mean by that? Well if you work at say Lockheed Martin and you work in the latest iteration of a missile or if you work at Pratt & Whitney, they assign you to work in the team helping out with building the jet...
Hello, I graduated from undergrad a few years ago with a Major in Physics and minor in Electrical Engineering. I tried to get experience working on and testing circuits through my professor who studied Neutrinos, however covid caused the opportunity to go away and I graduated with no experience or internships. I have attempted to break into the engineering industry with no success. Right now I am considering going for a Masters in Electrical Engineering and I need advice on if this would be...
So lately, my interest in the realm of optics/optoelectronics/photonics engineering has grown and I have started to seriously consider pursuing a career in the field. I have done a bit of career research and also have done some learning on the side to gather more knowledge on these topics. However, I have some questions on what a career in these fields would look like, and I wanted to find out more about this area to know what I would be getting myself into if I did make the choice to pursue...

Similar threads

Replies
30
Views
9K
Replies
18
Views
5K
Replies
0
Views
646
Replies
14
Views
1K
Replies
21
Views
4K
Replies
18
Views
2K
Replies
2
Views
2K
Back
Top