Software Engineer - Mid to Experienced Level (Maryland)
Fort George G. Meade Complex, MD • GG-11/1 to 14/10 • Open: 2026-08-10, Close: 2026-08-23
About the role
NSA is seeking experienced Software Engineers to advance high-impact systems and teams. Tools and technologies used evolve quickly, with systems and responsibilities spanning the full spectrum. Your work will protect the nation by providing U.S. policy and decision makers with critical, timely intelligence, thwarting foreign adversaries, and defending vital networks.
As a Software Engineer at NSA, you can focus on virtually any area of computer science including cybersecurity, high-performance computing (HPC), quantum computing research, data analytics, machine learning/artificial intelligence (ML/AI), cryptology/cryptography, complex algorithms, large-scale platform development, and many others. The sheer breadth of technologies NSA uses provides countless opportunities for broadening your expertise and leadership growth.
Please upload a copy of your transcripts from all schools attended prior to applying for this position. Unofficial transcripts are fine at this stage. Minimum qualifications for this position require a degree that demonstrates a concentration of computer science (CS) courses in foundational CS areas.
Responsibilities
- Engage in software development processes including requirements analysis, software design, implementation, testing, integration, deployment/installation, and maintenance
- Work with a variety of tools and technologies such as COBOL, C/C++, Java, cloud computing, Angular, React, Python, PIG Analytics, Pyspark, agile development, continuous integration/continuous delivery (CI/CD), containers and Docker, Kubernetes, Amazon Web Services (AWS), Linux (VMWare), ElasticSearch, Rust, microservices, Ansible, clusters, digital forensics, incident response, and quantum computing
- Apply strong critical thinking, collaboration, and independent self-starter skills
- Demonstrate continuous learning and flexibility in contributing to diverse teams
Requirements
The qualifications listed are the minimum acceptable to be considered for the position. Degree must be in Computer Science (CS) or Software Engineering. Related fields (e.g., Engineering, Mathematics) may be considered relevant if the programs contain, at minimum, a concentration of courses in the following foundational CS areas: algorithms; computer architecture (not network architecture); programming methodologies and languages; data structures; logic and computation; and advanced mathematics (for example, calculus, discrete mathematics). Relevant experience must be in the software development process and programming.
Qualifications
- Full Performance: Entry is with a Bachelor's degree plus 3 years of relevant experience, a Master's degree plus 1 year of relevant experience, or a Doctoral degree and no experience. An Associate's degree plus 5 years of relevant experience may be considered for individuals with in-depth experience that is clearly related to the position.
- Senior: Entry is with a Bachelor's degree plus 6 years of relevant experience, a Master's degree plus 4 years of relevant experience, or a Doctoral degree plus 2 years of relevant experience. An Associate's degree plus 8 years of relevant experience may be considered for individuals with in-depth experience that is clearly related to the position.
Skills
- Strong background in advanced mathematics (i.e., number theory, abstract algebra, linear algebra, probability theory, and discrete mathematics)
- Solid grasp of data structures, algorithms, operating systems, and computer architecture
- Proficiency in languages like C/C++, Python, and Java
- Knowledge of both symmetric and asymmetric cryptography, including hash functions, encryption, digital signatures, and key exchange
- Familiarity with protocols like TLS/SSL and network security principles for secure communications
- Understanding of hardware security modules (HSMs) and other secure computing (cloud) platforms
- Familiarity with Security Information and Event Management (SIEM), intrusion detection systems (IDS), and vulnerability assessment tools
- Knowledge of cryptographic libraries, APIs, and adherence to security standards (NIST, ISO 27001, and OWASP guidelines)
- Experience with tools and platforms such as Docker, AWS, GitLab, open-source contributions (see code.nsa.gov), databases (both relational and non-relational), and various languages (Java, C, C++, Python, etc.)
- Candidates with experience in COBOL or IBM mainframe are preferred
- Teamwork, leadership, and strong interpersonal skills
- Prior Intelligence Community experience preferred
Pay
Salary offers are based on candidates' education level and years of experience relevant to the position and also take into account information provided by the hiring manager/organization regarding the work level for the position.
Salary Range: $105,262 - $192,764 (Full Performance, Senior). Salary range varies by location, work level, and relevant experience to the position.
Benefits
NSA offers a comprehensive benefits package.
Schedule
This is a full-time position, Monday - Friday, with a basic 8hr/day work requirement between 6:00 a.m. and 6:00 p.m. (flexible).