Software Engineer, Python, C++ Developer
Listed on 2026-07-09
-
Software Development
Software Engineer, Python, C++ Developer, DevOps
Description
Are you a skilled software developer with a passion for crafting highly-quality, innovative software products? Do you love solving sophisticated, algorithmically intensive problems? If so, we’re looking for someone like you to join our team are seeking a talented software engineer to help us expand our internal high-fidelity physics simulation capability. Join a hardworking team of engineers and scientists who provide invaluable data across the lab and to our sponsors.
We are passionate about crafting fast, reliable software that pushes the boundaries of existing solutions. Our team is committed to developing quality software by embracing agile methodologies and fostering an environment of learning and collaboration.
- Optimize software to take full advantage of powerful, modern computer hardware.
- Collaborate with a small, dynamic software team to develop sophisticated simulation software to improve modeling capabilities.
- Guide software architecture and design decisions, while mentoring junior members of the team.
- Work closely with the user community and analysts to rapidly develop features through constant feedback and iteration.
- Possess a BS in Computer Science, Computer Engineering, Mathematics, or a related field.
- Have at least 3 years of professional experience as a software engineer.
- Are a skilled and efficient programmer in systems or scientific programming languages (e.g., Python, C++, Rust, Julia, etc.) with a desire to expand into new areas of coding languages and processes.
- Are proficient in standard software engineering practices (documenting, testing, CI/CD, logging, etc.).
- Are familiar with programming for and in a Linux environment.
- Can effectively collaborate with colleagues of varying experience levels.
- Have the verbal and writing skills vital for detailing and presenting work to APL colleagues and government sponsors.
- Are able to obtain an Interim Secret level security clearance by your start date and can ultimately obtain a Final Secret level clearance. Eligibility requires U.S. citizenship.
- Have a M.S. in Computer Science, Computer Engineering, Mathematics, or a related field.
- Have 5 years of experience as a full-time software engineer.
- Have modern C++ experience.
- Have CUDA (or other GPGPU) programming experience.
- Have experience with GPU accelerated ray-tracing libraries like OptiX.
- Have HPC experience using SLURM (or equivalent grid engine).
- Have experience working professionally in an agile development environment.
- Have familiarity with numerical methods, partial differential equations, and/or physics simulations.
- Understand common CEM methods such as physical optics, geometric optics, finite difference time domain, method of moments, etc.
The Johns Hopkins University Applied Physics Laboratory (APL) brings world-class expertise to our nation’s most critical defense, security, space, and science challenges. We celebrate diversity and encourage creativity and bold new ideas. APL offers generous benefits, including a robust education assistance program, retirement contributions, and a healthy work/life balance. APL’s campus is located in the Baltimore-Washington metro area.
EEO StatementAll 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 providing reasonable accommodation to individuals of all abilities.
CompensationMinimum Rate: $100,000 Annually
Maximum Rate: $195,000 Annually
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).