Architects and implements scalable and maintainable new features and modernizes legacy code using best practices in software engineering, identifying possible improvements during the development cycle
Contributes to and maintains software development best practices, training material for scientific programmers on software development best practices, structure and design theory, software documentation, release cycles and version control processes
Collaborates with physicists, RF engineers, and applied mathematicians to translate complex models into efficient code
Mentors junior developers and fosters a culture of scientific rigor and engineering excellence
Stays informed of advancements in computational tools, scientific frameworks, software engineering best practices and data modeling
Other duties as assigned
Qualifications
Required Qualifications
Must be eligible for TS/SCI security clearance and consent to CI Poly
Education and Experience
Degree in Software Engineering or closely related field with software development experience, like Computer Science or Computational Science
Bachelor's with 8+ years of experience, or
Master's with 6+ years of experience
PhD with 3+ years of experience
Relevant years of experience may be substituted in lieu of a degree.
Strong understanding of software development methodologies (e.g., waterfall, agile), version control (Git), and continuous integration
Previous experience working in R&D environments or collaborating with researchers
Proven proficiency in multiple programming languages (e.g., Python, C, C++, Fortran)
Familiarity with software development activities such as
Software development on and for Linux and Windows
Front end and GUI development
Python, Unix shell scripting and similar languages
HPC/supercomputing: MPI, OpenMP, threading, GPUs
Research and Development/prototyping scientific code
Excellent communication skills and proven ability to work cross-functionally
Ability to work independently and collaboratively with a team as projects require
Willingness to learn and perform other duties as assigned
Ability to travel (less than 10%)
Desired Qualifications
Active Security Clearance, TS/SCI (with CI poly preferred)
Proven software engineering best practices experience (such as SWEBOK, CMMI)
Demonstrated professional proficiency with
Working collaboratively within a team on software development
The full software development lifecycle (SDLC)
Parallel programming on high-performance computers (MPI and/or OpenMP or similar)
Developing cross-platform (Windows and Linux) software
The Atlassian tools (JIRA, bitbucket, Bamboo)
Experience developing software for scientific applications
Familiarity with linear algebra and numerical solutions techniques or numerical algorithms
Proven experience leading and directing the efforts of a team
Prior supervisory experience
- Global Comp
- $130,000 - $200,000 This represents the typical compensation range for this position based on experience, location and other factors.
Closing Statement Riverside Research Institute is a not-for-profit, technology-oriented defense company, where service to our customers and support of our staff is our overall mission. Riverside is an affirmative action-equal opportunity employer and complies with all applicable federal, state, and local laws regarding recruitment and hiring. Riverside offers comprehensive compensation and benefit packages to our employees. Riverside bases its employment decisions solely on technical experience, qualifications and other job-related criteria related to our organizational purpose as a not-for-profit company, and without regard to race, color, religion, age, sex marital status, sexual orientation, national origin, physical or mental disability, veteran’s status or any other status legally protected by applicable federal, state, and local law.