Is Meteorology turning into Computer Science?

25   Jan ,  2012 | 29
comments

I just got back from the AMS conference in New Orleans.  You can read a lot of details about the AMS conference from the wonderful writers of the Front Page of the AMS blog.

I was able to attend the student conference career fair on Saturday, the energy committee meeting for students on Sunday, and the climate, energy, and new economy talks on Monday.   I was able to network with a lot of wonderful meteorology students, young professionals, senior level executives, energy trade floor meteorologists, and just readers of my blog too.  The conference is still going on now, so I can only speak of the 3 days I attended.  From what I saw, my friends at the AMS put on an amazing conference!

Now with that being said, let’s get onto my post.  Is Meteorology turning into Computer Science?  Why am I asking this question?

Well, in my previous post of “The Future of Meteorology”, I discussed that the three main areas of growth will be 1) Weather Modeling 2) Weather Derivatives and Insurance 3) Private weather forecasting.  But I never got into what skills would be required for the future of meteorology.  Today that’s what I want to discuss based on what I saw at the AMS student conference.

After attending the student conference at the AMS career fair, I spoke to each private employer that was hiring meteorologists.   Some of the employers I spoke to at the booths were, “Unisys, Climate Corporation, Wunderground, Accuweather, Impact weather, among others.

And here’s what was very intriguing:  a majority of these employers are looking for meteorology developers (ie people who are excellent at programming but also understand meteorology).

Meteorology programmers are a growing trend in today’s meteorology job world.  Whether it is programming using Python, C++, Objective C, or PHP, the “new” graduate in meteorology in today’s economic climate should probably have these skills under their belt. When I spoke to a few of them…they mentioned if someone is a MS or PHD with programming skills, they would like to talk with them.  Some of them even mentioned they were prepared to throw ridiculous amounts of cash if you met those qualifications…so if you’re interested in learning more,  let me know!

Many of these private weather corporations deal with large data sets.  Since there is a great demand from the private and public industry on high resolution and accurate modeling, many firms are hiring in these areas of the meteorology. So being able to understand database programming and statistics is very important too.

In addition to the student conference career fair, I also attended a presentation about how NOAA/NWS is working with the DOE and the private energy world in providing more resources for these companies to use.  The concentration of the presentation was about the WFIP model and how they are working with private industry leaders to make short term wind forecasting more accurate.

I think the meteorology community has plenty of weather models to access now…but the hard part is integrating and customizing them into the private world for them to effectively utilize them.  In addition, as I’ve mentioned before, the weather modeling world is continuing to enhance the features of the model, along with it’s accuracy and resolution.  And that’s why I feel this is a growing trend and a need for programmers who understand meteorology.

This trend is very interesting to me because when I went to the student conference 10 years ago (yes now you know how I old I am ;) ) ,the majority of the positions I saw were operational meteorology jobs.

To be honest, none of the private employers I talked to at the student conference even mentioned they were hiring operational meteorologists.  So in today’s tough economic climate, it requires you to think outside the box.   And that also means taking other positions within weather companies (or government) in order to get your “foot in the door”.   Once you have your foot in the door, it’s easier to work your way internally to where you want to be.

Bottom line, if the growing trend is to hire meteorological developers, and you happen to be a good developer…you should start applying to these jobs or contacting private employers.  Even though you may want to be in forecasting…it’s better to at least “get in” to a company than “wait” for a forecasting job to open up.  Hope that makes sense! (photo credit: bloggertechgirl)

Are any of you seeing the same hiring trend out there for meteorologists? Do you think meteorology is turning into Computer Science?  Would love to hear your perspective, and your thoughts on the AMS conference, too.  Thanks!

Posted by AJ on January 25, 2012

  • Karin

    Hello AJ,

    Read your paper with interest, but have you been trying this :

    http://www.previmeteo360.com/

    Tell me what you think about it

    Regards,

    Karin

    • Brian

      AJ,

      It was nice to finally meet you at the career fair! I talked to many students about the desire for knowledge, skills, and abilities not only in the science of meteorology but also how to apply the science in the IT world. The issue is the gap between the weather scientists and the IT professionals. Many of the large companies that support weather agencies know how to design, build, test, and deploy very complex IT systems for weather — but lack the weather domain knowledge and expertise at the core. The gap is closing, for example IBM recently leveraged the power of their core services along with their knowledge of real time analytics to build Deep Thunder. Other companies are starting to mesh their competencies in SOA, cloud computing, and streamlined user applications with the weather community to come up with innovative solutions for the increasing demand for more timely and accurate weather information to support real time decision support.

      • Anonymous

        It was nice to meet you too Brian! Thanks for your comment and definitely agree with everything you wrote. Makes complete sense!

        Thanks,

        AJ

  • Caarem

    All careers are including computer science as a plus. Kind of difficult to hire someone who does not have knowledge in Matlab, C++ or do not know how to look into a model code. Computer science is a mean not an end on this.

    • Anonymous

      Yep that’s true. I guess my point was when I was looking for entry level jobs…programming was just a minor piece of the puzzle…today it seems like a major piece given what private companies are now looking for.

      AJ

  • Curtis

    AJ,

    You wrote a blog awhile ago about the value of a masters degree in meteorology. Since you’ve attended the conference and found this information out, do you think it would be wise for someone looking to break into the business who may not have computer science skills to go back and acquire those skills while still applying? I would imagine someone could go to a community college and within a year or so have those skills…..but the question is……would those companies hire someone with intro computer science skills?

    • Anonymous

      Sure, honestly I think you can get programming skills from anywhere. Community college, university, or even self-teach yourself. Bottom line, you’ll need to demonstrate how you apply your skills to large data sets and enterprise applications. That’s all that matters…if you can show that and prove that to the employer…I’m sure they won’t care where you learned the programming skills.

      Hope that helps,

      AJ

  • Rob

    Very interesting read. I’ve been doing some job searching for about six months as I finish up my degree. I remember years ago when I was transitioning out of active duty Navy, gov weather forecaster jobs required calc and physics. Now most of them want computer programing experience. Even some Climo/Atmospheric grad school programs desire students who are proficient in some programing language.

    I think moving toward models is good and bad. It should be a tool not a solution. For global and synoptic scale analysis and forecasting I see models being very useful. This could serve private shipping companies interested in best routes to conserve fuel and severe weather areas. Although depending on models to accurately interpret the physical laws of motion and conservation of energy using complex mathematical equations on smaller scales will result in many busted forecasts. A computer scientist in Silver Springs MD with a general knowledge of meteorology is not going to be able to accurately forecast a sea breeze at the mouth of the Delaware Bay.

    Modeling is only as accurate at the data inputed into it. Most weather sensor units (land and sea) have limitations compared to human observers and upper air soundings. The ASOS’s ceilometer can only sense clouds if they are over head and less than 12,000 feet. We have increased these sensors worldwide and that incomplete data is being inputted into climate models. “Poo poo in, poo poo out” as one of my superiors once told me.

    It’s amusing to me that scientists and politicians are basing their “global warming forecasts” on these model predictions. I mean the local weather man can’t even nail the 3 day forecast, let alone the 100 year climate forecast!

    Thanks for the post.

    • Anonymous

      Thanks Rob…I couldn’t agree with you more. Models should be used as a tool…and in my post about “wind models taking over wind meteorology jobs, ” I discuss the importance of the human element in forecasting. It is definitely needed to interpret the model biases, and just have the overall experience of any local weather phenomenon.

      Models are not perfect…we all know that. They never will be. We know that too. But the reality on the ground is there is a large demand for accurate and high resolution weather modeling. And that is something I think future meteorologists need to be ready for.

      Thanks!

      AJ

  • John

    Computer Science really got its kick off when Von Neuman justified building a computer with the primary use of weather forecasting (Remember “Richardson’s Failure?). We started AMI when I could get my hands on Intel 4004 CPU chips (1973) but had to assemble our first computer from a kit so we could start running environmental monitoring systems with micro’ss, rather than mini’s (a $1000 rather than $20,000).

    A compute is the only way to analyze the vast amounts of meteorological data and hardware and software has progressed to keep up with our needs – almost. In actuality meteorology” came of age when computers were born. If you’re not a user, you’re not as effective as you could be.

  • Shelley

    Thank you for the interesting post. It is too bad that these companies are so short sighted as to only want PhD’s and those with Master’s. I know many good architects and programmers who could do the jobs they have and not require the companies to throw ridiculous amounts of money at them. I also know an Atmospheric Scientist that has more than 15 years of architecting, designing, and programming highly available, highly stable systems that processes 10,000 transactions or more per minute and use databases containing billions of records.

    I don’t think it matters what field you go into. Programming skills are going to be a must have but they are not the end-all-to-be-all. Coders come for a dime a dozen and it is only a matter of time before these companies figure out that they do not have to throw huge sums of cash at anyone, they can just spec out the job and outsource it.

    • Anonymous

      Thanks for your comment Shelley! I think the masters and PHD was more of a “preference”…I think they’ll take any meteorologist who has solid programming skills with large data sets and who can understands meteorology. When I spoke to them, they said that particular talent is difficult to find…so if you know some people…they should definitely speak to those companies!

      I hope they do not spec out the job and outsource it…I’m all for keeping American jobs at home and not outsourcing it where quality control is always a persistent issue. Just my two cents.

      AJ

  • Txagwx

    Just found this blog. I have a masters in meteorology, with a strong background in programming. I would say we are getting so dependent on computer forecasting, that most meteorologists have forgotten how to forecast. NWS seems so dependent on mos, nam, gfs and lack the intution in forecasting. I find myself time to time also being glued to each change in the gfs or euro model, and finding out that neither are correct. That is probably why there are so many blown forecasts these days. The best forecast are the ones that the meteorogist analyze the upstream data and compare it to the models.

    • Anonymous

      You’re right…I do feel folks are getting glued to weather models and not analyzing upstream data. However, models generally have certain “parts” to the forecast that are correct. And that’s why I believe it’s your job as a meteorologist to understand model biases. And in addition, understand usual terrain effects, etc that models cannot pick up in your forecasting region.

      In my opinion, the models should be used as a guide to make your own analysis and forecast. The bottom line is you can look at upstream data, teleconnections, and all sorts of other data to make a great forecast. But sometimes there isn’t the time to do such a thorough analysis when you’re on a job requiring a product to be delivered in a very limited amount of time. I know it sounds like an excuse, but it’s sometimes just how it is.

      Bottom line, I think the “meteorology world” is getting much better at making accurate forecasts. There are a couple of cool models out there like the HRRR model that are making a large impact on short term forecasting.

      Best,

      AJ

  • Susanne

    Great blog. I agree with the importance of having programming skills, I am a recent MS graduate working as a climatologist and utilize some form of programming every day. I most often use Matlab, Fortran, html, and Java but and could definitely know them better, as well as learn GIS and Python. I am interested in your opinion on the best way for a grad student and/or new hire to quickly obtain these skills in the most efficient way. I keep my eyes open for short courses or workshops, but many seem to be at intro level. Online tutorials have been useful, but a challenge since you can’t really ask specific questions to the instructor and they often don’t address your specific needs.

    • Anonymous

      Hi Susanne, thanks! Also, appreciate your question. I think the best option would have been to attend the AMS conference. This year they offered a short course in Python at both the beginner level and advanced level. Being at the AMS, the focus is also on weather…so it’s a win-win. It’s a 2 day short course for 8 hours each day. And you’re with other meteorologists too. It can’t get better than that!

      So plan on it for next year if you didn’t go this year. In addition, you can attend part time classes at your local university. But the best way I’d recommend is the AMS. Does anyone else have other recommendations for Susanne?

  • Daniel Rothenberg

    I think it’s worth being a little pedantic here. It’s not that meteorology is turning into computer science; it’s simply that programming is being recognized as an essential toolbox of skills to solve basic problems in our field. Whether it’s building a Google Maps-based visualization tool for geospatial data, building a statistical processing code, or just tedious organization of a large volume of files, programming is to the modern meteorologist what a level is to a carpenter – an essential tool.

    Therein actually lies the problem. Sure, many meteorologists have basic “programming” skills; you can throw data at them, ask them to perform some mathematics on it, and they’ll process it and plot the result. But many meteorologists have little or no computer science or software engineering skill. This is distinctly different from programming, and involves a great deal of testing, problem solving, and communication in the form of documenting one’s code and work. It’s the difference between having a script which solves your problems today, and then having to totally re-invent the wheel 6 months down the line when that old problem rears its head again. How efficiently could a carpenter work if he or she had to re-forge their hammer every time they start a new project?

    I’ve found through my experience interacting with recruiters at the conference that mentioning you took a class in Python or another language gets you the opportunity to hand over a resume. What gets you the job opportunity is relevant experience working on real software engineering projects. No one is impressed that you know how to write a for loop in Python; they might be marginally impressed if you talk about using generators or optimizing your code using NumPy and vectorization. But they’ll be *really* impressed if you talk about how built a tool on Google App-Engine to automate the forecasts you write for friends and family each day. Who cares if you wrote it in Java or Python? The point is that you imagined and synthesized a complex software system from scratch. That sort of creativity and intrinsic problem solving is far more valuable than what most code monkeys can offer.

    • Anonymous

      Hi Daniel, thanks for your awesome perspective! You hit the nail on the head. Couldn’t agree with you more. Being able to have relevant experience on real software engineering projects is definitely a plus.

      And being able to showcase what you have done with your programming skills is even better. Showing real live applications you’ve built and how they have impacted the world makes a huge difference.

      Like Daniel mentioned…just having random program languages under your belt doesn’t mean much unless you have applied them. So once you learn the language, feel free to be creative and apply what you’ve learned into solving problems you see in the meteorology world (or even in other fields). This way you can showcase how you solved these problems to your next employer!

      Thanks for bringing this up Daniel.

      Best,

      AJ

  • RAFoltman

    I’ve been doing programming to create various reports for utilities over the last 15 years. This is an ongoing trend. That way people can create the reports, products with a scientific background instead of having a programmer doing it. Often the IT guys are more expensive too.

    • Anonymous

      Yep, makes complete sense. Thanks for your perspective!

  • http://twitter.com/JDubOKC J Dub

    Found this from @metrprof’s RT. Looks like I finally found someone who is posting what I’m looking for: An idea of what I’ll be getting into if I pursue a degree in meteorology. Some people I’ve asked have been “Go for it, good luck, and prepare to be disappointed”. At least now, I know I need to look more into programming.

    Keep posting & I’ll keep reading.

    • Anonymous

      Awesome…great to hear you found this post helpful. Good luck! Thanks for reading…

      AJ

  • John

    We started AMI in 1974 and by 1980 had a staff of meteorologists who could program diffusion models. When Regan got elected and industries powered back on their stringent analyses for air quality permits AND IBM ANNOUNCED THE PERSONAL COMPUTER FOR WHICH LOTUS 1.2.3 WAS THE ONLY SOFTWARE, we had programmers ready to go to work setting up small businesses with accounting, word processor, inventory, billing, etc. software. We even created AMI Systems to “hide” the fact that we were computer-savy meteorologists who had programmed out own business software doing their business management programs. By 1988 we had over 80 business clients as well as numerous corporations for whom we still ran air quality/meteorological networks.

    A programming meteorologist is a utility in-fielder in the business world. AMI even wrote the software for a major hospital in Houston to analyze their billings for their Pathology Lab.

    It is amazing what fields an education in meteorology covers. It is hard to think of a field where meteorology does not play some part – almost anything environmental is influenced by meteorology, but almost all heavy industries have to attribute some percentage of their “lost” profits to weather. For instance, the efficiency of a refinery is dependent on the temperatures inside their reactors, which themselves are dependent on the skin temperatures of the reactors, and cooling rain on the skin of the reactor will change the internal temperature. Solution, when a cold front is bearing down on the refinery, crank up the boiler temperature before the rain hits. I’m a strong advocate of Meteorological Engineering as a service AMI provides.

  • Paul

    I generally agree that Meteorologists in today’s day and age MUST have strong computer skills in multiple operating systems and that includes programming in a few languages. I think FORTRAN is still used, and I know C/C++ is quite big still. I also use IDL and MATLAB/Octave. OBTW, if you are not MATLAB capable, Octave is virtually identical to MATLAB and it is a free download at octave.org for both Windows and Linux/Unix. Also, a scripting language is a must – Korn Shell and PERL seem pretty clear cut, and PYTHON is up and coming.

    Here, as I see it, though, is the problem. There are SO MANY programming languages out there that people are using, it can get quite frustrating. Further, there are no real coding standards. If you are a smart person, you can put together some spaghetti code , it’ll run great, until something changes. Then you really have to know what you are doing. People will write code based on what they know, and not everyone is the greatest programmer that every types keystrokes – myself included!

    As a result of this, in major software/system projects for meteorology, I think there is a place for a more pure meteorologist (with some programming skills), and a Computer Scientist/engineer, working togther. This way, the S/W or system can be designed with the very latest principles of diesign and optimization, WHILE not losing the scientific intelligence that the meteorologist brings to the effort. I think that both need to work together .

    Just some thoughts…

  • JohnO

    Interesting post Ankit. Speaking as a meteorologist and programmer I think there are multiple sides to this. From a company perspective (especially a smaller company or a young startup) it makes sense for them to be able to hire one person with both skill sets instead of two. I know from experience that being able to bounce between roles and truly understand the science behind the software means I can contribute more to developing that software. You can hire some of the best software builders in the world but if they don’t fully understand what the program they’re writing is supposed to do or why, then they can’t really create an end-product that’s as strong as it could be since all design and feature decisions have to come from meteorologists (who in turn have little to no experience designing or building software). On the other hand, there are certain roles for which little to no programming is really ever going to be needed. Many operational forecasters really don’t need to know how to build an enterprise application and can get by with knowing a little scripting to help automate repetitive tasks if need be. That said, I don’t know a single meteorologist who doesn’t spend 80%+ of his/her time in front of a computer and so knowing how to get the most use out of that tool cannot hurt. Of all the supplemental skills a company could be looking for (ex: sales experience, or management or marketing, etc) the one most pertinent for many meteorology positions is likely programming, hence the increase in these types of job listings.

    • Anonymous

      Thanks Jon…I’m glad you chimed in! I think you’re exactly right…especially being in this role yourself, it makes a lot of sense. Programming is definitely becoming increasingly important within meteorology…and most new meteorology roles nowadays are requiring it like you said. Thanks for your perspective!

  • Surftweeter

    Hello AJ

    I am the owner of a small website/start-up and am currently looking to establish a working relationship with a meteorologist who has significant programming skills.

    I hope you wont find it too presumtuous of me to be posting here…

    I’m interested in chatting to any of the respondents to your article who would be keen to forward their resume to me.

    I’ll be hiring someone who has the required skillset to install the NOAA’s WW3 sytem on my server (ie they understand how to work with Grib files / can install degrib etc) , can compile and run the model and do the neccessary tweaking/ ongoing maintenance.

    We will produce xml feeds which will then be rendered as graphs on my website.Thew visualisations are already working and we have the feeds running from the older ww2 model, but need to run the ww3 model for greater accuracy
    I also require weather maps/synoptic charts to be generated
    We’ll also need to create finer resolutions for certain geographic areas, so the applicant would need the required mathematical skills and ability to implement relevant bathymetry data for those areas.

    My contact details are:

    surftweeter”at”bigpond.com

    • Anonymous

      Hi Surftweeter….I’m glad you posted here and thanks for hiring meteorologists. My goal is to get as many meteorologists employed as possible! .

      A couple of questions: Where are you based? Can this job be remote or do they have to move?

      I may also have a couple of folks interested too which I’ll forward to you by email as well.

      • Surftweeter

        HI AJ

        I’m based in Australia, and the work can most definitely be done on a remote basis, and the work will be done in a linux environment, so applicants should be very familiar with linux.

        Initially I’m looking to hire someone on a part time/ project basis… but I hope the position will grow into something substantial over time.

        Thanks again for providing such a useful resource and allowing me to post here.