Software Engineer - Test and Quality

Associated Universities•SOCORRO, NM

About The Position

The National Radio Astronomy Observatory (NRAO), managed and operated by Associated Universities, Inc. (AUI), develops and maintains software that supports the astronomy community in proposing, planning, scheduling, and analyzing telescope observations. The mid-level Software Engineer will join the Science User Applications Group (SUA), which builds user-facing applications including the NRAO Science Archive and Science Proposal applications. The position will help ensure these applications are reliable, well tested, and maintainable, and may contribute to tools for current telescopes and the next generation Very Large Array (ngVLA). The initial focus will be the NRAO Science Archive, working with the Archive Team. Work may later extend to other SUA teams, including Proposal Submission. The role includes designing and maintaining automated test infrastructure, writing tests for backend services and web interfaces, integrating tests into CI/CD pipelines, identifying performance problems, collaborating with developers to improve testability and code quality, and contributing to system design and delivery. Team members also maintain and upgrade existing software and develop tools supporting the Observatory’s evolving observing methods. The position is based in Albuquerque, New Mexico; Socorro, New Mexico; Charlottesville, Virginia; or Green Bank, West Virginia. A remote arrangement may be considered for well-qualified candidates. Work is typically performed in a research or development environment alongside professionals in research, engineering, software development, and education. Observatory employees must be authorized to work in the United States; the Observatory cannot sponsor new H-1B visas for this position.

Requirements

  • Bachelor’s degree in computer science, engineering, a scientific field, or a related field; highly relevant experience may be considered in lieu of a bachelor’s degree.
  • At least one year of experience developing software applications.
  • Familiarity with standard software engineering concepts, practices, and procedures through academic training or internship experience.
  • Ability to communicate effectively verbally and in writing.
  • Professional experience designing and implementing automated unit, integration, and end-to-end tests.
  • Experience with testing frameworks and tools such as pytest, JUnit, Jasmine/Karma, Cypress, Playwright, or Selenium.
  • Experience with version control and building and maintaining CI/CD pipelines that run automated tests.
  • Experience developing software in Python, Java, or a comparable language.
  • Experience testing web applications and APIs, and understanding of HTTP and RESTful services.
  • Experience debugging and profiling software systems, including diagnosing performance problems.
  • Understanding of object-oriented design and ability to write maintainable, well-structured code.
  • Experience with relational databases and ability to create and manage test data.
  • Demonstrated ability to learn and apply new languages, frameworks, and tools.
  • Strong interpersonal and communication skills, both verbally and in writing.
  • Ability and interest in working as part of a team in a Scrum environment.
  • Authorization to work in the United States.

Nice To Haves

  • At least three years of professional experience in software development or software testing, with a significant portion focused on test automation and quality practices.
  • Advanced degree.
  • Familiarity with web front-end technologies such as Angular, TypeScript, and webpack.
  • Experience with performance and load testing tools.
  • Familiarity with containerization technologies such as Docker, Docker Compose, Docker Swarm, or Kubernetes.
  • Familiarity with object-relational mapping such as SQLAlchemy and messaging systems such as RabbitMQ.
  • Experience with test strategy, test planning, and defect tracking.
  • Familiarity with basic astronomical principles and data reduction.

Responsibilities

  • Design, build, and maintain robust automated test infrastructure covering unit, integration, and end-to-end testing.
  • Write and maintain automated tests for backend services and web user interfaces.
  • Integrate testing into CI/CD pipelines so problems are caught early and releases are dependable.
  • Identify performance bottlenecks and regressions through profiling and load testing.
  • Work with developers to improve testability, diagnose defects, and raise code quality across applications.
  • Contribute to the design and delivery of key system components.
  • Maintain and upgrade existing software and develop new tools supporting the Observatory’s evolving observing methods.

Benefits

  • Paid time off, including 13 holidays and annual accrual of up to 24 vacation days.
  • Medical, dental, and vision plans effective on the first day of employment, subject to eligibility requirements.
  • Retirement benefit equal to 10 percent of a qualified participant’s base pay, with no required employee contribution.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service