AI/ML Jobs

The artificial intelligence, machine learning, and deep learning jobs.

Software Engineer at National Security Agency (Fort Meade, MD)

Responsibilities The professionals at the National Security Agency (NSA) have one common goal: to protect our nation.  The mission requires a strong offense and a steadfast defense.  The offense collects, processes and disseminates intelligence information derived from foreign signals for intelligence and counterintelligence purposes.  The defense prevents adversaries from gaining access to sensitive classified national security information. 

The need to maintain our core Computer Science group is vital to provide the technical capabilities necessary to successfully execute NSA's mission. The increased complexity of supporting NSA's mission requires world class researchers, programmers, and developers who operate in teams in areas such as software engineering, information technology infrastructure, high performance computing, data science, architectures, computer security, and networking in order to design and develop advanced tools, techniques, and systems.

Given the pace of technologies and myriad of adversaries in the cyber realm and foreign nation state actors, Software Engineers at the NSA develop the technologies and abilities to maintain our advantage in both national defense and information gathering. Software Engineers help collect data, extract value, route and manage at scale, build user interfaces, protect our systems, and identify and develop support infrastructure as a service provider to the Agency and Intelligence Community. 

As a Software Engineer, your responsibilities can include: 

- creating applications that scale across an entire data center
- identifying and retrieving the most important pieces of information out of 100s of petabytes of data
- leveraging open source software
- integrating off-the-shelf and government developed software
- leading new advances in computer science and riding the bleeding edge of computing technologies: 
- microprocessor-based advances
- beyond the horizon supercomputers
- signals processing (including analog control)
- user interfaces
- deep learning
- information security
- the design and implementation of encryption
- advanced algorithms Skills The ideal candidate is someone with excellent problem-solving, communication, and interpersonal skills who is able to:

- work in a team environment to build software
- handle multiple assignments
- synthesize information to solve complex problems
- apply knowledge data structures and algorithms to software engineering problems
- develop, diagnose, and operate complex computer systems
- identify customer needs and validate product design
- deliver software that others WANT to use
- deal with conflict within a team 

Knowledge and experience in one or more of the following is desired: 

- programming with a high-level language (e.g., C, C++, Java, python, ruby,) 
- building user facing services, middleware, and backend systems
- Full-stack development
- operating systems administration and advanced user functions, site reliability engineering
- computer networking (e.g., communication protocols, distributed systems, , Internet of Things, real-time systems, routing and switching)
- data spaces, data modeling, data analysis, storage design, and administration
- information retrieval, machine learning, artificial intelligence, statistics and analytics
- vulnerability analysis Qualifications Salary Range: $68,586 - $85,464 (Entry/Developmental)

*The qualifications listed are the minimum acceptable to be considered for the position. 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. 

Entry is with a Bachelor's degree and no experience. An Associate's degree plus 2 years of relevant experience may be considered for individuals with in-depth experience that is clearly related to the position.

Degree must be in Computer Science (CS). 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). Information Technology (IT) or Information Systems (IS) degrees may be considered relevant if the programs contain the amount and type of coursework equivalent to a CS major.

Relevant experience must be in the software development process (i.e., requirements analysis, software design, implementation, testing, integration, deployment/installation, and maintenance) and programming.


Salary Range:  $79,334 -$105,663 (Full Performance)

*The qualifications listed are the minimum acceptable to be considered for the position. 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. 

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.

Degree must be in Computer Science (CS). 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). Information Technology (IT) or Information Systems (IS) degrees may be considered relevant if the programs contain the amount and type of coursework equivalent to a CS major.

Relevant experience must be in the software development process (i.e., requirements analysis, software design, implementation, testing, integration, deployment/installation, and maintenance) and programming. Pay, Benefits, & Work Schedule On-the job training, Internal NSA courses, and external training will be made available based on the need and experience of the selectee.