DescriptionAre 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 at APL.We 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 push the boundaries of existing solutions. Our team is committed to developing quality software by embracing agile methodologies and fostering an environment of diversity, learning, and collaboration.
As a Software Engineer you will...- Optimize software to take full advantage of powerful, modern computer hardware.
- Collaborate with a small, dynamic software team to development 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.
QualificationsYou meet our minimum qualifications for the job if you...- 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. 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 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.
#LI-KW1
Minimum Rate$100,000 Annually
Maximum Rate$195,000 Annually