We’ve got a couple positions open within my team, working on the Sierra project at Sandia National Laboratories in sunny Albuquerque, New Mexico[1] (where you can soak in our blue skies and sun that shines 310 days a year). The Sierra project is a conglomeration of finite element analysis engineering codes designed for high performance computing environments (typically Linux but also other *nix systems), used for a wide variety of applications in heat/fluid/solid/structural mechanics[2]. My team, the Sierra Infrastructure team, is responsible for providing the tools and expertise to make development and distribution of Sierra (and related packages we couple to[2]) efficient and convenient, and the necessary support to enable effective analysis with Sierra.
This means you get to dabble in a large variety of programming languages, write software that enables people to do cool engineering, install software on and work on everything from supercomputers to smaller clusters (hundreds or thousands of processors) to beefy workstations. For daily work, nearly everyone has a access to a (personal) workstation with an 8-CPU (dual quad-core) Nehalem chip and 24GB RAM as well as a 24-30 inch monitor…though these machines are getting a bit old and we might get an upgrade later this year. 🙂
Required:
- Extensive experience with Linux and/or other *nix systems.
- A strong background in computer science.
- A current DOE Q clearance, or the ability to obtain one[3], which typically requires US citizenship.
- Familiarity with scripting languages such as Python and Bash
- Reasonable experience with compiled languages (C++/Fortran)
- Basic understanding of best practices in software engineering (version control, unit/system testing, peer review, patches, etc.)
- Bachelor’s degree (preferably in computer science, though other science or engineering field knowledge is also often beneficial)
Desirable:
- Intimate knowledge of high performance computing software tools and libraries (e.g. MPI)
- Extensive experience with Python and Bash
- Extensive experience with C/C++, Fortran 77, Fortran 90+
- The ability to obtain an SCI clearance
- Direct experience with the Git version control system
- Knowledge of the internals of git (knowledge of plumbing commands is good, familiarity with git source code even better)
- Advanced degree(s) and/or five to ten years experience in software development and/or system administration
- Experience with build systems (especially switching from BJam (Boost Build) to CMake), and report dashboards (esp. Dart and CDash)
- Familiarity with static and dynamic analysis tools
- Willingness (and patience) to help fight the good fight to move us towards both using more open source software and releasing more of our software as open source 🙂
Got questions? Feel free to email me. Sound cool? Apply (before the end of the month).
If I’ve piqued your curiosity, but this isn’t quite what you had in mind, there are other openings on other Sierra teams too[4].
[1] Relocation assistance is available for qualified candidates (within the continental US).
[2] Sierra is used in analyses including heat transfer, enclosure radiation, turbulent flow, fires, participating media radiation, high and low mach flows, phase change, modal analysis, acoustics, contact, large deformations, etc. etc. It encompasses millions of lines of code and several teams. There are also a number of related packages not yet part of Sierra, such as Cubit, CTH, and Alegra; we often couple with these other codes and thus also distribute them. Some of the code is open source, a lot more should be, and more is becoming so (though some of it will likely never be open source, unfortunately).
[3] My team doesn’t actually do any classified work, but we do need to work with people who do, and we need to periodically install, update, or support our software on such systems.
[4]
The job sounds nice, but you forgot to mention that sandia supports nuclear weapons (http://public.ca.sandia.gov/) 🙁
@Thomas: Yes, I figured that anyone who was interested would look up the company and find this out (it’s not limited to the California site; you can find it on Sandia’s main page too at http://www.sandia.gov); it’s probably the source of about half the lab’s funding (though a lot of that ends up in basic science/engineering research that benefits many other purposes). Interestingly, because Obama and congress in general seem to want to get rid of nuclear weapons eventually, Sandia’s funding is projected to go up. From what I understand (and it’s not much), the reason for that is that the most pragmatic path to reducing the stockpile seems to be increasing efforts to ensure the existing stockpile is functional and safe (the things weren’t originally intended to “sit on the shelf” for 50 years, particularly with the radioactivity that has interesting effects on the many, many other important components) and to do more Life Extension Programs so as to continue to avoid the need to build new ones (see also http://nnsa.energy.gov/ourmission/managingthestockpile/lifeextensionprograms which probably says it better than I could). But yes, anyone applying ought to be aware of this and would find this out at their interview if they didn’t know about it before.