Software Engineer II - III (4536)
Would you like to be writing mission-critical software for some of the largest scientific endeavors on the planet? Would you like to be part of a highly skilled international team of engineers and scientists pushing the boundaries of humankind’s knowledge of the universe?
The National Radio Astronomy Observatory (NRAO) is seeking a full-time software engineer to design, develop, and maintain code for their radio telescope calibration and imaging pipelines. These pipelines are used for the vast majority of data processing by users of the ALMA and VLA telescopes.
Pipeline Software Engineers are responsible for all aspects of the software engineering lifecycle, from requirements derivation through design, development, testing and maintenance of code. They must be capable of formulating complex technical solutions, suitable for operational deployment, from broad scientific objectives in a research environment. They must possess both software engineering domain knowledge as well as the ability to learn the basic concepts of radio interferometry.
The position will be based at our headquarters in Charlottesville, VA (preferred); at the Science Operations Center in Socorro, NM; or at a satellite office in Albuquerque, NM. A remote work arrangement might also be possible.
In addition to competitive pay, NRAO provides excellent paid time off benefits (vacation and sick leave). Medical, dental and vision plans are effective first day of employment. NRAO’s retirement benefit contributes an amount equal to 10 percent of a qualified participant’s base pay. No contribution is required of the employee; we also offer an optional supplemental, tax-deferred plan for employee retirement contributions.
Job Duties Summary
Responsibilities will include, but are not limited to:
• Developing new radio interferometer data reduction algorithm implementations as needed by new scientific objectives;
• Maintaining pipeline heuristics in support of ongoing telescope data processing operations;
• Evolving the Pipeline code base to be modern, lean, efficient, and well understood;
• Operating in a distributed international team environment with other software developers and scientific staff;
• Taking ownership of a subset of functionality and providing technical direction, decision-making, and subject matter expertise in that area, while continuing to consult with team members and stakeholders.
Work is typically performed in a research or development environment. Must be able to communicate effectively both verbally and in writing. Occasional travel (domestic and international) may be required.
Bachelor's degree in computer science, engineering, scientific or related field is required.
Advanced engineering or science degree and a background that includes astronomy is highly desired.
One to two years of work experience in software development. In addition:
• Software development in Linux
• Software development with Python
• Experience using version control software
• An understanding of formal software engineering principles including design, documentation, ticketing systems, version control and testing frameworks
• Experience with large development projects in Python
• Experience writing code for data visualization and web presentation
• Familiarity with basic astronomical principles and data reduction
• Demonstrated ability to learn new scientific concepts and apply them to engineering implementation, ideally in radio astronomy and interferometry
• Experience with scientific software development, numerical processing techniques, and mathematical packages such as Python/numpy
• Experience with CASA (or similar data reduction package)
• Familiarity with High Performance Computing and Big Data concepts
Select the “Apply” button below. Applicants are required to submit a CV/Resume and cover letter describing interest and suitability for the position. Please upload your CV/Resume with the ‘Add Resume’ button and your cover letter with the ‘Additional Files’ button at the beginning of the application process.