Chemistry & Computer Programming

In summary, you have a great opportunity to combine your love for computer programming with your BSc Chemistry degree. There is a high demand for programmers with domain knowledge in chemistry, and many companies are looking for individuals with training in both fields. You may also have the option to work remotely in the future, but it is important to gain experience and prove yourself before pursuing that path. It is recommended to start learning programming as soon as possible, even before completing your degree, in order to have a strong foundation and be able to create useful programs while still studying. There are also opportunities for computer interfacing, which may require on-site work. Overall, you have many possibilities and it is up to you to decide whether to pursue a PhD, Masters
  • #1
Chemist125
16
0
I love computer programming, but I'm currently on a BSc Chemistry degree. Is there anyway I can combine these for a job/career?
 
Physics news on Phys.org
  • #3
Chemist125 said:
I love computer programming, but I'm currently on a BSc Chemistry degree. Is there anyway I can combine these for a job/career?

Are you kidding? EASILY those can be combined! The subject of Chemistry is overly flooded with opportunities to create computer programs. You'll do yourself a great amount of good if you learn and use programming skills toward Chemistry.
 
  • #4
symbolipoint said:
Are you kidding? EASILY those can be combined! The subject of Chemistry is overly flooded with opportunities to create computer programs. You'll do yourself a great amount of good if you learn and use programming skills toward Chemistry.

To be honest, I'd rather have more programming and less chemistry. It's just one of the ways that I'm looking at in order to escape working in a laboratory.
 
  • #5
Chemist125 said:
I love computer programming, but I'm currently on a BSc Chemistry degree. Is there anyway I can combine these for a job/career?

I think you'll have more opportunity than you realize.

There are an abundance of programmers, but very few have domain knowledge of chemistry.

I guess an obvious way is to be in charge of writing the code and the platform for simulation. There would be standalone packages that may do this, but I'm sure that there will always be cases where you have to write custom code that's very specific, and thus extend the platform in some way.

Also companies that write simulation/visualization or computational software in the domain of chemistry (or as an above posted said: computational chemistry) would look for people like yourself who have training in chemistry.

Bottom line, I think you have good options with the choices you are proposing to make.
 
  • #6
chiro said:
I think you'll have more opportunity than you realize.

There are an abundance of programmers, but very few have domain knowledge of chemistry.

I guess an obvious way is to be in charge of writing the code and the platform for simulation. There would be standalone packages that may do this, but I'm sure that there will always be cases where you have to write custom code that's very specific, and thus extend the platform in some way.

Also companies that write simulation/visualization or computational software in the domain of chemistry (or as an above posted said: computational chemistry) would look for people like yourself who have training in chemistry.

Bottom line, I think you have good options with the choices you are proposing to make.

My dream is to be able to work remotely, from home. Do you think it's a possible reality?
 
  • #7
Chemist125 said:
My dream is to be able to work remotely, from home. Do you think it's a possible reality?

With programming or certain jobs in IT its more possible than you think.

I'm not sure if you'll get any job worth its salt that will let you stay home all the time, but often systems can be setup that allow people to have a large majority of their time to work at home.

I don't think you'll get a choice when you start. One reason is that you need to prove yourself but another reason that's important is that you won't be ready to work remotely when you first start: I guarantee you'll need other peoples help, need to learn understand the domain of your work, and build up enough experience so that you can, one day, have the ability to solve the problems that you need to solve in the near future.

After you get enough experience and have something to show for it, then you'll be given more freedom in how you choose to work and this includes working remotely.

There are a lot of different jobs that allow you to work at home, but at least in terms of legitimate jobs (ie not the type that you get in your junk box saying that Jane Doe earns 3000 dollars a week working from home), development and other IT fields often do support completely remote environments that are integrated into their systems which allow you to stay at home and work whatever hours.
 
  • #8
chiro said:
I think you'll have more opportunity than you realize.

There are an abundance of programmers, but very few have domain knowledge of chemistry.

I guess an obvious way is to be in charge of writing the code and the platform for simulation. There would be standalone packages that may do this, but I'm sure that there will always be cases where you have to write custom code that's very specific, and thus extend the platform in some way.

Also companies that write simulation/visualization or computational software in the domain of chemistry (or as an above posted said: computational chemistry) would look for people like yourself who have training in chemistry.

Bottom line, I think you have good options with the choices you are proposing to make.
What should I do when I graduate with by BSc Chemistry (with industry experience)...should I try to gain formal qualifications in programming?

There's so many possibilities...

I could try for a PhD or Masters, or even a job!
 
  • #9
Chemist125 said:
What should I do when I graduate with by BSc Chemistry (with industry experience)...should I try to gain formal qualifications in programming?

That would be waiting far too long. Learning to write computer programs needs to start before the end of the second year of your B.Sc. program. Sooner is better, so you have the chance to write some useful or interesting programs while you are still studying for your undergraduate Chemistry degree.

There's so many possibilities...

I could try for a PhD or Masters, or even a job!

One important possibility is computer interfacing. You cannot practically design those kinds of programs just working remotely; you must be able to work with the end-users and observe the results directly, and look for editing changes to adjust with the program directly in place, and then work with the end user to retest. You need to be on-site for these things.
 
  • #10
symbolipoint said:
That would be waiting far too long. Learning to write computer programs needs to start before the end of the second year of your B.Sc. program. Sooner is better, so you have the chance to write some useful or interesting programs while you are still studying for your undergraduate Chemistry degree.



One important possibility is computer interfacing. You cannot practically design those kinds of programs just working remotely; you must be able to work with the end-users and observe the results directly, and look for editing changes to adjust with the program directly in place, and then work with the end user to retest. You need to be on-site for these things.

I graduate this year! When I graduate I will be 22 years old. I've already spent a year working in the chemical industry as a chemist!

I thinking that a PhD would be the best route for me...only 3 years, + I get paid.

What you think?
 
  • #11
Chemist125 said:
I graduate this year! When I graduate I will be 22 years old. I've already spent a year working in the chemical industry as a chemist!

I thinking that a PhD would be the best route for me...only 3 years, + I get paid.

What you think?

You would need at least two or three years before you could move into a junior role, and those years would be jam-packed with a lot of practical project experience.

Basically you have the following areas that you learn in programming:

1) Procedural Programming Concepts
2) Domain specific Concepts
3) Computer Science Concepts
4) Engineering Concepts (specific to software)
5) Other stuff that no one talks about but that experts are aware of

With domain specific concepts you have to have some kind of understanding of the domain for domain specific concepts, but before that you need to understand how computers actually work.

If you have a good enough background in the basics, learning domain specific things is not relatively hard. If you want to be a programmer you need to demonstrate that you know these basics well enough to be able to work with say an external software library, or extend existing repositories, or to get something done quick with a lot of different code sets like say a combination of libraries and an existing repository.

Its kind of like asking a physicist to figure something out without a knowledge of math: you know its going to end up a disaster. A physicist uses experimental data and assumptions to build the math. Like the physicist a network programmer will apply network specific concepts in programming, but obviously they have to have a good base already to actually do anything useful.

You could do a PhD program that involves significant amounts of programming and if you can get something like this I would recommend it.

I would also work on some projects of your own to build up your understanding and make the connections between things that make you a solid programmer.

I guess its like any profession really, the more you discover, get your feet wet, learn every crevice and what it means, then you're bound to become good if you put in enough effort.

I think one thing you have to be aware of is that in most jobs, you're going to be expected to solve non-trivial problems more seamlessly than you realize.

I would compare the above to driving on a racetrack: if you are just learning to drive you are focusing on things like changing gears, steering, and coordinating everything which distracts from the more high level view of say an experienced driver which will be analyzing corners, acceleration and deceleration and more "high level" things that is involved in racing.

When you go into a job you will be learning to "race" instead of learning to drive, because its expected that you already have enough skill to drive without really thinking too hard about it.
 
  • #12
chiro said:
You would need at least two or three years before you could move into a junior role, and those years would be jam-packed with a lot of practical project experience.

Basically you have the following areas that you learn in programming:

1) Procedural Programming Concepts
2) Domain specific Concepts
3) Computer Science Concepts
4) Engineering Concepts (specific to software)
5) Other stuff that no one talks about but that experts are aware of

With domain specific concepts you have to have some kind of understanding of the domain for domain specific concepts, but before that you need to understand how computers actually work.

If you have a good enough background in the basics, learning domain specific things is not relatively hard. If you want to be a programmer you need to demonstrate that you know these basics well enough to be able to work with say an external software library, or extend existing repositories, or to get something done quick with a lot of different code sets like say a combination of libraries and an existing repository.

Its kind of like asking a physicist to figure something out without a knowledge of math: you know its going to end up a disaster. A physicist uses experimental data and assumptions to build the math. Like the physicist a network programmer will apply network specific concepts in programming, but obviously they have to have a good base already to actually do anything useful.

You could do a PhD program that involves significant amounts of programming and if you can get something like this I would recommend it.

I would also work on some projects of your own to build up your understanding and make the connections between things that make you a solid programmer.

I guess its like any profession really, the more you discover, get your feet wet, learn every crevice and what it means, then you're bound to become good if you put in enough effort.

I think one thing you have to be aware of is that in most jobs, you're going to be expected to solve non-trivial problems more seamlessly than you realize.

I would compare the above to driving on a racetrack: if you are just learning to drive you are focusing on things like changing gears, steering, and coordinating everything which distracts from the more high level view of say an experienced driver which will be analyzing corners, acceleration and deceleration and more "high level" things that is involved in racing.

When you go into a job you will be learning to "race" instead of learning to drive, because its expected that you already have enough skill to drive without really thinking too hard about it.

I understand. Certainly a PhD does seem like a good route (if it has a large component of programming)! It means I would graduate @ 25 with a doctorate and 3 years of programming experience relevant to chemistry (all in addition to my industry experience and 4.0 GPA chemistry degree).

But would this route really put me in an equal or better position to say, a senior programmer (with no domain knowledge of chemistry) if we both applied to a job for, let's say, a pharmacuetical company looking to hire an in-house person to develope their software?

In any event, I would certainly love to be able to work remotely. I'm a British citizen, but my dream is to emigrate to Alaska or Western Canada (Don' t laugh!). Literally as far away from people as I can get!

Here's an example of a job I found in the states:

http://www.ccl.net/cca/jobs/joblist/mess0019765.shtml
 
Last edited by a moderator:
  • #13
Chemist125 said:
Here's an example of a job I found in the states:

http://www.ccl.net/cca/jobs/joblist/mess0019765.shtml
They don't even want to be in Canada and you put them in the States?! :redface:
 
Last edited by a moderator:
  • #14
Ryker said:
They don't even want to be in Canada and you put them in the States?! :redface:

I mean't to say Canada. It's irrelevant anyway, I was just giving an example of a job.
 

FAQ: Chemistry & Computer Programming

What is the connection between chemistry and computer programming?

The connection between chemistry and computer programming lies in the use of computers to model and simulate chemical reactions and processes. Computer programs are also used to analyze and interpret data obtained from chemical experiments.

How can computer programming be applied in the field of chemistry?

Computer programming can be applied in chemistry in various ways, such as designing and running simulations to study chemical reactions, creating databases to store and analyze chemical data, and developing algorithms to predict properties of chemical compounds.

What programming languages are commonly used in chemistry?

The most commonly used programming languages in chemistry are Python, Java, and C++. Python is popular for its simplicity and versatility, while Java and C++ are used for their speed and ability to handle complex calculations.

What are the benefits of using computer programming in chemistry?

Using computer programming in chemistry allows for faster and more accurate calculations, data analysis, and simulations. It also enables the creation of databases and models that can aid in understanding and predicting chemical phenomena.

Do you need to be an expert in both chemistry and computer programming to work in this field?

While having a strong background in both chemistry and computer programming can be beneficial, it is not always necessary to be an expert in both fields to work in this area. Many scientists collaborate with programmers to develop and use computer programs in their research.

Similar threads

Replies
3
Views
2K
Replies
4
Views
3K
Replies
18
Views
2K
Replies
1
Views
1K
Replies
11
Views
2K
Replies
3
Views
1K
Replies
26
Views
4K
Replies
4
Views
2K
Back
Top