Math major wanting to be a programmer

In summary: I agree that knowing multiple languages is definitely a bonus, the most important factor is that you can write code that is easy to read and understand. I think that this is something that you can learn with experience.In summary, it seems that a math major can still land a career in programming without a CS degree if they are good programmers. They should learn important programming languages and make sure their code is easy to read and understand.
  • #1
Robben
166
2
I am a math major and I will be a senior next semester. I am wondering if I can get a career in programming without a CS degree? Should I stay in school and get a second degree or can I go get a masters in programming? Or I don't have to do either and still land a career in programming with only a math degree?

I will definitely ask my advisor soon about this but I will be glad to hear your advices and recommendations.
 
Physics news on Phys.org
  • #2
Have you taken any programming courses? In particular data structures or algorithms and a programming language like Java or C++?
 
  • #3
jedishrfu said:
Have you taken any programming courses? In particular data structures or algorithms and a programming language like Java or C++?
I have taken three courses worth of programming: Java, Python, and computational Physics.
 
  • #4
jedishrfu said:
Have you taken any programming courses? In particular data structures or algorithms and a programming language like Java or C++?

And by algorithms do you mean courses like numerical methods? Because I took two numerical method course.
 
  • #5
It seems you're on the right track. Your best bet is to look for jobs that are software based but require a fair knowledge of math.

Also another area you might want to take a course in is web application programming as that may give your resume an added appeal.

Ideally though, companies looking for CS grads will go after CS unless you can show them something more.

Personally, I think math majors make great programmers.
 
  • #6
In programming, nobody cares about anything other than whether you are a good programmer. A degree (of any sort) is pretty much irrelevant except to HR departments and other brands of officialdom, and maybe in getting your first job. And certainly if you have a math degree, nobody will have the slightest interest in whether you have a CS degree too.
 
  • #7
And by algorithms do you mean courses like numerical methods? Because I took two numerical method course.

You want something more like this, although numerical is good, too:

http://ocw.mit.edu/courses/electric...ntroduction-to-algorithms-sma-5503-fall-2005/

I just got a job that I haven't started yet as a financial software developer with a math PhD and CS minor. Was pretty hard to get, though. Hacker schools are one possibility that would help bridge the gap. Also, it's good to work on your own projects and study books like this to be ready for interviews:

https://www.amazon.com/dp/098478280X/?tag=pfamazon01-20
 
  • #8
Programming is like art. You show them what you can create with code.
 
  • Like
Likes micromass
  • #9
Almeisan said:
Programming is like art. You show them what you can create with code.

Agreed.

I think an issue might be that you don't know enough (or the right) programming languages. Sure, everybody sees you can learn the programming language easily. But if they need to choose between you (who can learn it easily) or somebody who already know C++, the choice is clear. They will go for who knows it already.

So perhaps it is not a bad idea to teach yourself important languages like C++. You might then put on your CV that you know it by self-studying and perhaps refer to a program that you have written using your knowledge. That way they can see immediately what you're capable of.
 
  • #11
jedishrfu said:
I would agree with Micro on C++ except Java is ahead by a nose and C takes the win.

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Interesting! I had no idea!

But yeah, it was just an example. I guess the gist of my message was to learn more programming languages and to make examples of projects you wrote.

Besides, if you know C++, then don't you technically also know C?
 
  • #13
List is only place 32 :(

Take your bracket: (((((((( ))))))))
 
  • #15
micromass said:
Agreed.

I think an issue might be that you don't know enough (or the right) programming languages. Sure, everybody sees you can learn the programming language easily. But if they need to choose between you (who can learn it easily) or somebody who already know C++, the choice is clear. They will go for who knows it already.

So perhaps it is not a bad idea to teach yourself important languages like C++. You might then put on your CV that you know it by self-studying and perhaps refer to a program that you have written using your knowledge. That way they can see immediately what you're capable of.

I am not a programmer by profession, but I always thought that the most important thing was that you can code shippable code in one language. Then, knowing one or two more languages is a big pro, and something that probably comes alongside with it. But that knowing a lot of languages for it's own sake isn't very important. They are similar enough that if you can code in one language, you know how to learn a new one.

While most programming I did myself was in C/C++, there are other languages just as useful as a core coding base. Sure, if your main language is something that is more akin to a scripting language like php, javascript or R or Matlab, I can see the problem.
 
  • #16
Another theme for jobs that's been hinted at here is doing software projects on your own time. Something you could share in an interview. Interviewers like to see self starters more than someone who has Java or C++ on their resume because they took some courses in it.

It's far better if you've done significant programming in an internship or on your own and you've used the tools of the trade like netbeans/eclipse for development, ant/maven/make for building, git/SVN/cvs for source code management, debuggers and performance monitors... Whatever you can learn will make you a more viable candidate.
 
  • Like
Likes Robben
  • #17
Thank you all for your advice.

@jedisrfu I will definitely take you up on your suggestion about software projects.
 

What skills from a Math major can be useful for a career in programming?

A Math major often develops strong analytical and problem-solving skills that are essential for programming. Additionally, Math majors are typically proficient in logic, critical thinking, and complex problem-solving, which are all valuable skills in programming.

Do I need to have a background in computer science to become a programmer with a Math major?

No, a background in computer science is not necessary to become a programmer. Many programmers come from diverse academic backgrounds and learn programming through self-study or bootcamp programs. However, having a strong foundation in math can be beneficial in understanding algorithms and data structures.

What programming languages should a Math major focus on learning?

There is no definitive answer to this question as it depends on the specific career path and industry. However, some popular languages among mathematicians include Python, R, and MATLAB, which are commonly used in data analysis and scientific computing. Additionally, learning a general-purpose language like Java or C++ can also be advantageous.

What types of programming jobs are available for Math majors?

Math majors can pursue various programming careers, including data analyst, software engineer, machine learning engineer, and quantitative analyst. These roles often require strong analytical skills and the ability to work with large datasets, making them a good fit for Math majors.

How can a Math major gain programming skills?

There are many ways for a Math major to gain programming skills, such as taking online courses, attending coding bootcamps, or participating in coding workshops. Additionally, practicing coding through personal projects and collaborating with other programmers can also help improve programming skills.

Similar threads

  • STEM Academic Advising
Replies
8
Views
930
  • STEM Academic Advising
Replies
13
Views
1K
  • STEM Academic Advising
Replies
8
Views
1K
  • STEM Academic Advising
Replies
3
Views
748
Replies
2
Views
634
  • STEM Academic Advising
Replies
30
Views
2K
  • STEM Academic Advising
Replies
3
Views
896
  • STEM Academic Advising
Replies
12
Views
1K
  • STEM Academic Advising
Replies
7
Views
895
  • STEM Academic Advising
Replies
2
Views
933
Back
Top