Software Assurance/Formal Methods Developer
Job Description
DescriptionDo you have experience solving problems with static analysis or formal methods for software assurance?
Are you passionate about making meaningful contributions that impact national security systems?
Do you work best in an intellectually stimulating, professionally rewarding, and fun environment?
If so, we 're looking for someone like you to join our APL team.
We are seeking a motivated and creative Software Assurance/Formal Methods Developer who will...
- Solve software assurance problems using static analysis, formal methods, or other techniques to tackle the nation's most pressing cyber security challenges.
- Explore techniques to support development of zero-defect software and systems.
- Work on research teams staffed with world-class experts to perform research and development improving the state-of-the-art in software assurance theory and practice.
- Work alongside engineers and scientists who are passionate about innovation and are driven to make a real difference in defending our nation.
- Participate in research projects that create and apply static analysis and formal methods tools and techniques to real-world problems. Goals include formal verification of algorithms, improvement of the quality of code being analyzed, elimination of software bugs and design flaws, formal specification, and analysis of cyber-physical systems.
- Devise and develop algorithms, techniques, and new tools that implement and test your ideas for improving software assurance and more reliable reasoning under uncertainty.
- Analyze data and results related to software assurance. Show the benefits of using static analysis and formal methods in software development.
- Share knowledge by clearly articulating ideas through papers and presentations to technical staff, management, and government. Take advantage of opportunities to participate in working groups, sponsor meetings, proposal writing, and conferences.
Qualifications
You meet the minimum qualifications for this position if you have:
- Bachelor's in computer science, computer engineering, electrical engineering, mathematics, or other field relevant to the above duties.
- 4+ years of either professional experience or a combination of graduate research and experience with static analysis, formal methods, or related areas.
- Experience with static analysis and/or formal methods tools and techniques, such as model checking, theorem proving, programming language analysis and design, type theory, static source code analysis, or formal logic.
- Ability to understand code in a variety of programming languages and to develop software to demonstrate new analysis capabilities.
- An understanding that limited local travel may be required.
- Ability to obtain a secret level security clearance. If selected, you will be subject to a government security clearance investigation and must meet the requirements for access to classified information. Eligibility requirements include U.S. citizenship.
You'll go above and beyond our minimum requirements if you have:
- Master’s/Ph.D. in computer science, computer engineering, electrical engineering, or a related field
- 7+ years of experience with static analysis, formal methods, or related areas.
- Experience using machine learning to advance software assurance.
- Experience with the above, familiarity with operational semantics, abstract interpretation, symbolic execution, or type inference.
- Experience with software development on Linux, using languages such as Rust, OCaml, C/C++, Java, and tools such as Spin, Coq, and ACL2.
- Experience writing published papers and presenting results to conferences/workshops.
- Familiarity with a range of cyber-security concepts, such as network and host-based security, cryptography, trusted systems, and vulnerability/exploit discovery.
- Current DoD clearance and prior experience working with Government agencies.
Why work at APL?
The Johns Hopkins University Applied Physics Laboratory (APL) brings world-class expertise to our nation’s most critical defense, security, space and science challenges. While we are dedicated to solving complex challenges and pioneering new technologies, what makes us truly outstanding is our culture. We offer a vibrant, welcoming atmosphere where you can bring your authentic self to work, continue to grow, and build strong connections with inspiring teammates.
At APL, we celebrate our differences and encourage creativity and bold, new ideas. Our employees enjoy generous benefits, including a robust education assistance program, unparalleled retirement contributions, and a healthy work/life balance. APL’s campus is located in the Baltimore-Washington metro area. Learn more about our career opportunities at http://www.jhuapl.edu/careers.
About Us
APL is an Equal Opportunity/Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to race, creed, color, religion, sex, gender identity or expression, sexual orientation, national origin, age, physical or mental disability, genetic information, veteran status, occupation, marital or familial status, political opinion, personal appearance, or any other characteristic protected by applicable law.
APL is committed to promoting an innovative environment that embraces diversity, encourages creativity, and supports inclusion of new ideas. In doing so, we are committed to providing reasonable accommodation to individuals of all abilities, including those with disabilities. If you require a reasonable accommodation to participate in any part of the hiring process, please contact Accommodations@jhuapl.edu. Only by ensuring that everyone’s voice is heard are we empowered to be bold, do great things, and make the world a better place.
*Please mention you saw this ad on WomenInCareers.*