Tech Support > Computers & Technology > Programming > How to get into Scientific Programming
How to get into Scientific Programming
Posted by Sam Banerjee on October 16th, 2003


Hi all,

I was wondering if anyone could give me feedback on this topic. I am
34, a US Citizen, and have a scientific background, with Bachelor's
Degrees in Physics and Math, graduate work in Physics and Optics
culminating with an MS in Optics. I have worked as an engineer, and
then as a programmer for the last 5 years. However, it has been
comercial programming (using Microsoft technologies such as Vsual C++,
ASP, etc) and while I am thankful to have a job in the current
economic climate, I am also unhappy with the kind of work I am doing.
I would like to do some sort of scientific programming, but I have not
had much success applying to such jobs. They either require an
existing security clearance or ask for tons of prior scientific
programming experience.

So my questions are:

1) What do you think my chances are of getting such a scientific
programming job? Would you expect a big difference when the economy
improves, hopefully in a few years?

2) Any suggestions of specific places where I can apply for a
relatively entry level scientific programming position?

2) Are scientific programming jobs more secure than your typical
commercial position? I have heard that being over 40 and a commercial
programmer is a risky place to be, because of age discrimination and
general outsourcing. Are there many scientific programmers who so that
till they retire?

If I can't find such a job, I am considering getting an MBA, but I
really think I would not enjoy that type of work nearly as much.

Thanks,

-Sam Banerjee

Posted by Robert J. Kolker on October 16th, 2003




Sam Banerjee wrote:

With a name like yours, you can move to India, wrap a towel around your
head and you will have a programming job in no time flat.

Bob Kolker



Posted by E. Robert Tisdale on October 16th, 2003


Sam Banerjee wrote:
Hi Sam,

I am the person that you think that you think you want to be.

Unfortunately, nobody hires "scientific programmers" --
they hire scientists who can program.
I *strongly* advise that
you rekindle your interests in Physics and Optics.
Re-work your resume and stress your science background
first and your computing skills second.
You might look for jobs in "scientific computing" or
try to sell yourself as a "computational physicist".

Certainly, you should apply to JPL

http://eis.jpl.nasa.gov/hrext/employment/index.htm

Take a look at the Common Component Architecture Forum

http://www.cca-forum.org/

Also look into Grid-Based Computing.
Take a look at Vector Signal and Image Processing Library

http://www.vsipl.org/

web page.


Posted by Richard Heathfield on October 16th, 2003


Robert J. Kolker wrote:

Followups set. Nuff said.

--
Richard Heathfield : binary@eton.powernet.co.uk
"Usenet is a strange place." - Dennis M Ritchie, 29 July 1999.
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
K&R answers, C books, etc: http://users.powernet.co.uk/eton

Posted by Victor Eijkhout on October 16th, 2003


Sam Banerjee <mephistopheles_01@hotmail.com> wrote:

Not necessarily. Even the biggest companies seem to be shrinking their
research departments, and that's where you'd probably want to find work.

I'd suggest getting back into college, doing either computer science in
a department that is strong on scientific computing, or engineering, and
make sure you take classes in numerical analysis, parallel programming,
&c

Another possibility is finance. I have no experience with that, but I do
see job openings. I disagree with Robert Tisdale that no one hires
scientific programmers as such, but the job ads, as you note, ask for
experience in the relevant field. So make sure you get that experience.

V.
--
email: lastname at cs utk edu
homepage: cs utk edu tilde lastname

Posted by R. Martin on October 17th, 2003


Sam Banerjee wrote:
I think it used to be better. There have been times when almost
anyone with a couple of programming courses could get a job as a
programmer (don't laugh, I've known some of them - strictly speaking
I am one since I only took one programming course in college, back
when one programming course was all that was offered). If the
economy improves that should help. How much is hard to say with
all the outsourcing, etc. Scientific programming has been a
comparatively small field, employment-wise, since business found
out how useful computers can be and started hiring programmers.

I've worked as a scientific programmer for research programs at
universities in the past. IMO there used to be more of that,
back when the senior profs were less likely to be computer
literate themselves. Still, there may be a few such jobs out
there, but you may be competing with grad students and postdocs
(some of whom only think they can program, but others who are
quite good in my experience). The other problem is that such
jobs tend to be supported by soft money.

Federal government.

Federal government (at least so far).

I suppose a few. I still program some, in support of operations and
for my research project, although my job title isn't "programmer".

The last I heard MBAs were falling from favor, except for those from
top, elite MBA programs.

HTH.

Regards,
Russell

Posted by Gregory L. Hansen on October 17th, 2003


In article <1g2xskm.1ct1nbrqxudvxN%see.sig@for.addy>,
Victor Eijkhout <see.sig@for.addy> wrote:
In the group I'm with at NIST they often hire high school students or
undergrads for summer work, and some of them always seem to do image
processing for the neutron interferometer guys.

Something like that would be a way to get some experience and references,
although surely hard to do in the real world if you have a house and a
family and things.

--
"Let us learn to dream, gentlemen, then perhaps we shall find the
truth... But let us beware of publishing our dreams before they have been
put to the proof by the waking understanding." -- Friedrich August Kekulé

Posted by Irrwahn Grausewitz on October 17th, 2003


[cross-posting deliberately stripped]

"E. Robert Tisdale" <E.Robert.Tisdale@jpl.nasa.gov> wrote:
(or was it programming scientists?)]
I doubt that there's anybody who even thinks that he thinks
that he thinks that he wants to be the person you are.



Irrwahn
--
Inertia makes the world go around

Posted by jmfbahciv@aol.com on October 17th, 2003


In article <7ec3a9b5.0310161043.2223750c@posting.google.com>,
mephistopheles_01@hotmail.com (Sam Banerjee) wrote:
None. You don't seem to be able to figure
out how to do the research.

Nope. The job increase then will be IT.
You have got to be joking.


No job is secure. Even the job shoveling bullshit goes away
if the bull dies.

If you're interest is in ensured job longevity of the same
job, join the Teamsters.

If you really are adept in optics, my advice to you is
"Go chips, young man, go chips." Another area are those
companies who are stringing optic cables across oceans.
Another place to find out about job opportunities is to visit
your old stomping grounds where you got your masters degree.
How did you get your degress without knowning about their
applications of the discipline going on in the world?

This has got to be a troll.

/BAH

Subtract a hundred and four for e-mail.

Posted by Dave Rusin on October 17th, 2003


In article <bmoj1t$g4u$1@bob.news.rcn.net>, <jmfbahciv@aol.com> wrote:
You must not be familiar with the educational systems on this planet.

Posted by Marc on October 17th, 2003



"Robert J. Kolker" <bobkolker@attbi.com> wrote in message
news:bmmpea$onoc1$2@ID-76471.news.uni-berlin.de...
well, there is an enlightened response......





Posted by Gregory L. Hansen on October 17th, 2003


In article <7ec3a9b5.0310161043.2223750c@posting.google.com>,
Sam Banerjee <mephistopheles_01@hotmail.com> wrote:
Any particular type of scientific programming? I suppose first you need
to find some science, and then figure out what programming needs to be
done.

Theorists turn to programming to analyze systems they can't solve
analytically, like stellar models, collisions of galaxies, weather,
simulating a rip from first principles. Programs are written to simulate
apparatus during the design phase, to simulate systems to aid
understanding and check methods of analysis, in analyzing data. Everyone
likes the DAQ man, who writes the software for the data acquisition
system. But it's just not usually the case that a lab has a programmer
that people hand jobs to. Rather, they have scientists that program
computers when they find a need.

That may be different at larger facilities like the accelerators where
people are hired into specialized positions. I've heard of one guy that
did programming for... some big accelerator. Complicated programming,
with user interfaces and machine interfaces and number crunching and
everything. And then his term there was up and he had trouble finding a
programming job anywhere else because he didn't know Visual Monkey
Language or whatever flavor of the month the recruiter was looking for.
--
"Let us learn to dream, gentlemen, then perhaps we shall find the
truth... But let us beware of publishing our dreams before they have been
put to the proof by the waking understanding." -- Friedrich August Kekulé

Posted by CBFalconer on October 17th, 2003


"E. Robert Tisdale" wrote:
For once, your advice is sound, unlike your programming. The
underlying reason is that mathematics and physics, and science in
general, is fundamental. Programming, as done by most (myself not
excluded) is very much driven by the current fashion. The
fundamentals of programming (such as proper partitioning) are not
recognized by most of the potential hirers; they simply want
someone facile in the application du jour.

--
Chuck F (cbfalconer@yahoo.com) (cbfalconer@worldnet.att.net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home.att.net> USE worldnet address!



Posted by Alan Balmer on October 17th, 2003


On Fri, 17 Oct 2003 19:14:19 GMT, CBFalconer <cbfalconer@yahoo.com>
wrote:

Very true. When schools first started producing "computer science"
graduates, there was a strong feeling in the industries I worked in
that it was "easier to teach an engineer to program than to teach a
programmer engineering."

I think that's still true.

--
Al Balmer
Balmer Consulting
removebalmerconsultingthis@att.net

Posted by Guillaume on October 17th, 2003


That's true to some extent.
It may also be a reason for poor software quality.

Posted by osmium on October 17th, 2003


Dave Rusin writes:

Well said! That was exactly my thought when I saw the comment.



Posted by Dan Nagle on October 17th, 2003


Hello,

On 17 Oct 2003 20:21:39 GMT, Guillaume <grsNOSPAM@mail.com> wrote:

I have found it infinitely (well, maybe not quite!) easier
to teach Fortran to C programmers than to teach floating point
to integer programmers.

--
Cheers!

Dan Nagle
Purple Sage Computing Solutions, Inc.

Posted by E. Robert Tisdale on October 18th, 2003


Guillaume wrote:

[Alan Balmer wrote:]

Scientists and engineers are almost always amateur programmers.
They are seldom professional programmers.
They write code for their own use
to help them do the work that they were hired and are paid to do.
They seldom test their code before they attempt to use it
and they usually dispose of their code soon after
they have finished using it to do their work.
They almost never write code
that other scientists and engineers can use
unless they are also programmers.
Scientists and engineers are usually very careful and meticulous
about all of their work including programming.
I wouldn't say that they write "poor quality software"
but they don't usually write "professional quality software".

Historically, this has not been a problem
because scientific and engineering applications
have always been small. The high performance numerical kernel
of modern scientific and engineering applications is still quite small
but users now expect all of the "bells and whistles"
(Graphical User Interfaces, network connectivity,
relational databases, etc.) that you find in so-called
"commercial" application programs.
These new application programs are typically so large that
it isn't practical for one programmer to develop and maintain them.
A *team* of programmers is required and they must be able
to read, understand and maintain code written by other team members.
This is where amateur programmers run into serious problems.
They don't know how to *design* software.
They don't know how to break a large project down into *modules*
that each of the programmers can work on independently
without the need to know how all of the modules fit together.
What is required in this case is
professional programmers and software engineers.

Unfortunately, it is at least as difficult to make
software engineers and professional programmers out of
scientist and engineers as it is to make scientist and engineers
out of professional programmers and software engineers.
I'm not sure that either is necessary or even desirable.


Posted by jmfbahciv@aol.com on October 18th, 2003


In article <bmovr5$3j0$1@news.math.niu.edu>,
rusin@vesuvius.math.niu.edu (Dave Rusin) wrote:
I always _listened_ to the grads and instructors tell their stories.
If one is curious about some discipline, there is a lot more to
learn about how to do the work than in text books.

/BAH

Subtract a hundred and four for e-mail.

Posted by jmfbahciv@aol.com on October 18th, 2003


In article <bmrbp9$q413r$1@ID-179017.news.uni-berlin.de>,
"osmium" <r124c4u102@comcast.net> wrote:
Which makes them more experienced than you. There will always
be people more experienced than you and there will always be
people less experienced than you. The trick of learning is
to tap those who have knowledge you don't have.

The OP stated that he had masters degree in optics. In all of
that study time, including the undergrad work, this guy never
encountered a trade magazine? He never encountered
writeups by other people who wrote about that business?
The OP never encountered how businesses were using optics to
make money? Computer chips, terminals, eyeglasses, contacts,
anything that's trying to use fiber optics over long distance
(telephones, LANs, any data base application), computer games,
windows in houses, photography, ..

Go to a retail store and look at everything that needs some
knowledge of optics. How could the OP set down at a terminal,
and type in the request without noticing all the ways that
optics is involved in getting those ASCII bits from his fingers
to my terminal screen?

The whole post smelled of troll.

/BAH


Subtract a hundred and four for e-mail.


Similar Posts