Are you passionate about improving the quality of scientific and engineering software to address computing needs in global security, energy, and climate? Do you have a desire to address challenges posed by next generation computing architectures? We are seeking an enthusiastic and resourceful software engineer to participate in multi-team collaborations that will directly impact computational science and engineering efforts spanning the research to production spectrum. This position offers the opportunity to improve the stability and productivity of software, to address performance challenges of legacy software on emerging next generation platforms, and to guide researchers toward better software engineering practices. Sandia Job
On any given day, you may be called upon to:
Write and modify scripts in Bash, Python, or CMake to configure, build, test, install & deploy software
Create and monitor test suites using CDash, Jenkins (including pipelines); triage and fix test failures
Develop training materials to improve software engineering practices and provide training
Improve team collaboration via Jira, GitLab or similar tools
Define best practices and integrate emerging practices for software engineering of scientific software
Elicit requirements, design and develop project capabilities or all-purpose tools to improve scientific software engineering workflows
Refactor advanced Python code or heavily templated C++11 code to improve usability, maintainability, extensibility, performance portability
About Our Team
The Software Engineering and Research Department (1424), a new department within the Center for Computing Research, is leading the strategic goal of furthering the substantiation of software engineering as an engineering discipline. This dynamic team of experts conducts fundamental and applied research, development and application in software engineering, design, and the processes and principles that underlie the establishment of quality, rigor, correctness, and repeatability in the implementation of algorithms and applications in software for high consequence applications. The team focuses on applications for scientific computing, computational algorithms, large scale data analytics, and operating system components such as run-time systems and application programming interfaces. A key element of the work is teaming with application and algorithm researchers to establish a strong foundation in software methodologies, state-of-the-art practices, and maintenance and support for production codes and libraries. The department works closely with other organizations across Sandia and with external collaborators. The department is part of the Extreme Scale Computing group, which unifies computer engineering and science disciplines to advance highly scalable and performant computing architectures based on current conventional, as well as future non-conventional, technologies.
Sandia National Laboratories is the nation’s premier science and engineering lab for national security and technology innovation, with teams of specialists focused on cutting-edge work in a broad array of areas. Some of the main reasons we love our jobs:
Challenging work with amazing impact that contributes to security, peace, and freedom worldwide
Some of the best tools, equipment, and research facilities in the world
Career advancement and enrichment opportunities
Flexible schedules, generous vacations, strong medical and other benefits, competitive 401k, learning opportunities, relocation assistance and amenities aimed at creating a solid work/life balance *
World-changing technologies. Life-changing careers. Learn more about Sandia at: http://www.sandia.gov
These benefits vary by job classification.
All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or veteran status.
Qualifications We Require
Bachelor’s and advanced degree in computer science or related discipline plus one or more years’ relevant experience; or a bachelor's degree in computer science or related discipline plus five or more years' relevant experience
Experience in one or more of the following: configuration management, issue tracking, continuous integration, software testing
Experience with developing software in Python, C++ (including the use of templates), and/or Java
Experience with one or more scripting languages in Linux environment (Bash, Python)
Qualifications We Desire
Experience working in a highly collaborative research and development team environment on challenging problems
Effective interpersonal communication skills and demonstrated ability to team across disciplines
Demonstrated analytical, problem-solving and debugging skills
Experience with one or more of the following tools: Git, GitLab, GitHub, Jira, CMake, CTest, Jenkins, Jira (and other Atlassian tools)
Experience with Agile software quality engineering and full software development lifecycle
Demonstrated ability to gather, organize, and document requirements from stakeholders and develop applicable solutions
Experience creating, maintaining, and automating (unit, integration, performance, acceptance) test suites
Experience creating developer and user documentation and training materials and delivering technical training sessions
Experience with object-oriented design and development
Experience with developing scientific modeling and simulation software
Experience with high performance computing software and platform
Position requires a Department of Energy (DOE) Q-level security clearance.
Sandia is required by DOE to conduct a pre-employment drug test and background review that includes checks of personal references, credit, law enforcement records, and employment/education verifications. Applicants for employment must be able to obtain and maintain a DOE Q-level security clearance, which requires U.S. citizenship. If you hold more than one citizenship (i.e., of the U.S. and another country), your ability to obtain a security clearance may be impacted.
Applicants offered employment with Sandia are subject to a federal background investigation to meet the requirements for access to classified information or matter if the duties of the position require a DOE security clearance. Substance abuse or illegal drug use, falsification of information, criminal activity, serious misconduct or other indicators of untrustworthiness can cause a clearance to be denied or terminated by DOE, resulting in the inability to perform the duties assigned and subsequent termination of employment.
Internal Number: 666694
About Sandia National Laboratories
Sandia National Laboratories is one of the country’s largest research and engineering laboratories, employing 8,100 people at major facilities in Albuquerque, New Mexico and Livermore, California. We make enduring contributions to secure our society against high consequence terrorist threats and national incidents through effective use of science, technology, and systems solutions. Please visit our website at www.sandia.gov.