Software Engineer

Riverside Research InstituteFairfax, VA
Onsite

About The Position

Riverside Research is an independent National Security Nonprofit dedicated to research and development in the national interest. We provide high-end technical services, research and development, and prototype solutions to some of the country’s most challenging technical problems. All Riverside Research opportunities require U.S. Citizenship. This position involves producing clean, efficient code based on specifications, working with developers to design algorithms and flowcharts, troubleshooting, debugging, and upgrading existing systems. The role also includes identifying, prioritizing, and executing tasks in the software development life cycle, modifying software to correct errors, adapt to new hardware, or upgrade interfaces and improve performance. Additionally, the engineer will monitor equipment functioning, analyze user needs and software requirements, develop or direct software system testing and validation procedures, and direct software programming and development of documentation. Collaboration with systems analysts, engineers, and programmers is expected to design systems and obtain information on project limitations, capabilities, performance requirements, and interfaces. Storing, retrieving, and manipulating data for analysis of system capabilities and requirements is also part of the role.

Requirements

  • Ability to obtain a TS/SCI
  • Thorough knowledge of current best principles, practices, and procedures for design, development, implementation, deployment, and testing with respect to modern software applications and servers.
  • A minimum of 2 years of related experience with a Bachelor's degree or a Master's degree without experience.
  • Experience and expertise in modern software technologies, architectures, and frameworks that are used in enterprise client-server stacks or web application stacks. Examples include: Java, Kotlin, JavaScript, TypeScript, Spring, Hibernate, Angular, Node, and Python.
  • Experience with database technologies related to modern software application stacks. Examples include Cassandra, MySQL, MSSQL, and MongoDB.
  • Experience user interface and user experience design and implementation.
  • Knowledge of and experience with designing, building, and implementing REST API endpoints according to well-defined best practices.
  • Strong technical documentation skills.
  • Demonstrated troubleshooting skills.
  • Demonstrated ability to work effectively independently and in a team environment.
  • Self-starter with strong communication skills.
  • Demonstrated desire to grow and learn new technologies.

Nice To Haves

  • Active Secret or TS/SCI
  • Experience in developing Mission Software for Space Collections and Orchestration
  • Strong experience and knowledge in the areas of dependency injection, software services, and componentization of designs.
  • Strong experience in object-oriented design and implementation.
  • Strong experience in functional programming design and implementation.
  • Solid understanding of REST, web services, and web security.
  • Full stack development and architecture experience, including, but not limited to, web services, client-server communication, database modeling, tiered server software design, user facing interfaces, and the frameworks related to these items.
  • Experience with Angular framework and related JavaScript client-side libraries.
  • Experience with Java, Spring framework, Flask, Kotlin, Python, and related client and server-side libraries.
  • Experience with different software development methodologies, including agile.
  • Experience with the tools that are used for managing software lifecycle processes such as JIRA, Confluence, and Bamboo.
  • Experience with source control systems, such as Git, and related tools such as BitBucket, Fisheye, and Crucible.
  • Some experience with Cassandra, MinIo, Kubernetes, and Lucene.
  • Familiarity with machine learning algorithms and tools such as naïve-bayes, decision trees, neural networks, and TensorFlow.
  • Familiarity with natural language processing libraries and tools.
  • Strong organization skills to manage multiple timelines and complete tasks quickly within the constraints of clients’ timelines and budgets.
  • Strong data analysis skills.
  • Demonstrated experience and ability in the areas user interface and user experience design and implementation.

Responsibilities

  • Produce clean, efficient code based on specifications.
  • Work with developers to design algorithms and flowcharts.
  • Troubleshoot, debug and upgrade existing systems.
  • Identify, prioritize and execute tasks in the software development life cycle.
  • Modify existing software to correct errors, to adapt it to new hardware, or to upgrade interfaces and improve performance.
  • Monitor functioning of equipment to ensure system operates in conformance with specifications.
  • Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
  • Develop or direct software system testing or validation procedures.
  • Direct software programming and development of documentation.
  • Confer with systems analysts, engineers, programmers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces.
  • Store, retrieve, and manipulate data for analysis of system capabilities and requirements.

Benefits

  • Comprehensive compensation and benefit packages
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service