Software Engineer - Mid to Experienced Level (Maryland)
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. Beyond technical skills, we need strong critical thinkers, collaborators, independent self-starters, continuous learners and flexible contributors.
Job Summary
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. 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.
Technologies & Tools
Common tools and areas of interest include:
- COBOL, C/C++, Java, Python, Rust
- Angular, React
- PIG Analytics, PySpark
- Cloud computing, Amazon Web Services (AWS), Linux (VMWare)
- Agile development, continuous integration/continuous delivery (CI/CD), containers and Docker, Kubernetes
- ElasticSearch, micro services, Ansible, clusters
- Digital forensics, incident response, quantum computing
Candidates with experience in COBOL or IBM mainframe are preferred.
Qualifications
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 (i.e., requirements analysis, software design, implementation, testing, integration, deployment/installation, and maintenance) and programming.
Full Performance – Entry is with a Bachelor's degree plus 3 years of relevant experience or 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 or 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.
Desired Skills & Competencies
The ideal candidate will have specialized skills or interest in one or more of the following skills/technologies:
- Strong background in advanced mathematics (i.e., number theory, abstract algebra, linear algebra, probability theory and discrete mathematics)
- Solid grasp of data structure, 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 using cryptographic libraries, APIs and adherence to security standards (NIST, ISO 27001 and OWASP guidelines)
- Teamwork
- Leadership
- Good interpersonal skills
- Prior Intelligence Community experience preferred
Pay & Benefits
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.
NSA offers a comprehensive benefits package.
Schedule
This is a full-time position, Monday – Friday, with basic 8hr/day work requirement between 6:00 a.m. and 6:00 p.m. (flexible).
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.