Software Engineer
Riverside Research's Applied Mathematics and Physics Solutions group is seeking an experienced Software Engineer to lead development of high-performance, large scale simulation tools for electromagnetic analysis. The candidate will lead code development and testing activities that advance the state-of-the-art in defense industry computational electromagnetic (CEM) tools. This position is intended for long-term career growth and the successful candidate will become the Lead SW Engineer with oversight over all development activities and supervisory responsibilities within a few years. Work will be performed in collaboration with a diverse team, with backgrounds in CEM, physics, computer science, electrical engineering, applied mathematics, and high-performance computing (HPC) at our facilities in Ohio (Dayton), New York (NYC), Illinois (Champaign), and Virginia (Fairfax).
Responsibilities
- Leads all aspects of the software development lifecycle including requirements, design, development, documentation, testing (validation and verification), deployment and debugging high performance CEM software applications
- Drives software quality through rigorous design reviews, peer reviews, automated testing and continuous integration. This may include developing test plans, supporting and improving our automated testing infrastructure, and performing testing.
- Architects possible improvements during the development cycle
- Contributes to and maintains software development best practices, training mate 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
Ability to obtain and maintain a Top Secret / SCI Security Clearance with CI polyEducation and Experience : Degree in Software Engineering or closely related field with software development experience, like Computer Science or Computational ScienceBachelor's with 8+ years of experience, orMaster's with 6+ years of experiencePhD with 3+ years of experienceRelevant 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 integrationPrevious experience working in R&D environments or collaborating with researchersStrong proficiency in low level scientific programming languages (e.g., C, C++, Fortran)Familiarity with : Software development on and for Linux or other Unix-like systems, Python, Unix shell scripting and similar languages, HPC / supercomputing : MPI, OpenMP, threading, GPUs, Research and Development / prototyping scientific codeExcellent communication skills and proven ability to work cross-functionallyAbility to work independently and collaboratively with a team as projects requireWillingness to learn and perform other duties as assignedAbility to travel (less than 10%)Desired Qualifications :
Active Security Clearance, TS / SCI (with poly preferred)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)Additional STEM degree in physics, electrical engineering, or applied mathematics or experience developing software for scientific applicationsFamiliarity with linear algebra and numerical solutions techniques or numerical algorithmsFamiliarity with electromagnetic wave theoryExperience leading and directing the efforts of a teamSupervisory experienceGlobal Comp $113,00 - $210,000 This represents the typical compensation range for this position based on experience, location and other factors.