Skip to content

Software Engineering · Work role code 621

Software Developer

Executes software planning, requirements, risk management, design, development, architecture, modeling, estimation, configuration management, quality, security, and tests using software development methodologies, architectural structures, viewpoints, styles, design decisions, and frameworks across all lifecycle phases.

From DoD DCWF Tool v5.3 (2026-09-25)

Tasks

From DoD DCWF Tool v5.3 (2026-09-25), in the tool's order, with the DCWF KSAT id

Free · DoD DCWF Tool v5.3 (2026-09-25)
  • 408Analyze information to determine, recommend, and plan the development of a new application or modification of an existing application.Core
  • 414Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.Core
  • 417Apply coding and testing standards, apply security testing tools including "fuzzing" static-analysis code scanning tools, and conduct code reviews.Core
  • 418Apply secure code documentation.Core
  • 432Capture security controls used during the requirements phase to integrate security within the process, to identify key security objectives, and to maximize software security while minimizing disruption to plans and schedules.Core
  • 446Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.Core
  • 459AConduct trial runs of programs and software applications to ensure the desired information is produced and instructions and security levels are correct.Core
  • 461Confer with systems analysts, engineers, programmers, and others to design application and to obtain information on project limitations and capabilities, performance requirements, and interfaces.Core
  • 467Consult with engineering staff to evaluate interface between hardware and software.Core
  • 477Correct errors by making appropriate changes and rechecking the program to ensure desired results are produced.Core
  • 506Design, develop, and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.Core
  • 515ADevelop software system testing and validation procedures, programming, and documentation.Core
  • 543Develop secure code and error handling.Core
  • 602Evaluate factors such as reporting formats required, cost constraints, and need for security restrictions to determine hardware configuration.Additional
  • 634Identify basic common coding flaws at a high level.Core
  • 644Identify security implications and apply methodologies within centralized and decentralized environments across the enterprise computer systems in software development.Additional
  • 645Identify security issues around steady state operation and management of software and incorporate security measures that must be taken when a product reaches its end of life.Additional
  • 709AModify and maintain existing software to correct errors, to adapt it to new hardware, or to upgrade interfaces and improve performance.Core
  • 726Oversee and make recommendations regarding configuration management.Additional
  • 756Perform integrated quality assurance testing for security functionality and resiliency attack.Additional
  • 764Perform secure programming and identify potential flaws in codes to mitigate vulnerabilities.Core
  • 770Perform risk analysis (e.g., threat, vulnerability, and probability of occurrence) whenever an application or system undergoes a major change.Additional
  • 785Prepare detailed workflow charts and diagrams that describe input, output, and logical operation, and convert them into a series of instructions coded in a computer language.Core
  • 826Address security implications in the software acceptance phase including completion criteria, risk acceptance and documentation, common criteria, and methods of independent testing.Additional
  • 850Store, retrieve, and manipulate data for analysis of system capabilities and requirements.Additional
  • 865Translate security requirements into application design elements including documenting the elements of the software attack surfaces, conducting threat modeling, and defining any specific security criteria.Core
  • 970AApply cybersecurity functions (e.g., encryption, access control, and identity management) to reduce exploitation opportunities.Core
  • 971Design countermeasures and mitigations against potential exploitation of programming language weaknesses and vulnerabilities in system and elements.Additional
  • 972ADetermine and document software patches or the extent of releases that would leave software vulnerable.Additional
  • 1149AEnable applications with public keying by leveraging existing public key infrastructure (PKI) libraries and incorporating certificate management and encryption functionalities when appropriate.Additional
  • 1150AIdentify and leverage the enterprise-wide security services while designing and developing secure applications (e.g., Enterprise PKI, Federated Identity server, Enterprise AV solution) when appropriate.Additional
  • 1151Identify and leverage the enterprise-wide version control system while designing and developing secure applications.Core
  • 2156Consult with customers about software system design and maintenance.Additional
  • 2335Direct software programming and development of documentation.Core
  • 2839Supervise and assign work to programmers, designers, technologists and technicians, and other engineering and scientific personnel.Additional
  • 5200Design, implement, test, and evaluate secure interfaces between information systems, physical systems, and/or embedded technologies.Core

Knowledge

From DoD DCWF Tool v5.3 (2026-09-25), in the tool's order, with the DCWF KSAT id

Free · DoD DCWF Tool v5.3 (2026-09-25)
  • 20Knowledge of complex data structures.Core
  • 22* Knowledge of computer networking concepts and protocols, and network security methodologies.Core
  • 23Knowledge of computer programming principles such as object-oriented design.Core
  • 38Knowledge of organization's enterprise information security architecture system.Additional
  • 40Knowledge of organization's evaluation and validation requirements.Additional
  • 43AKnowledge of embedded systems.Additional
  • 56Knowledge of cybersecurity principles and methods that apply to software development.Core
  • 63Knowledge of cybersecurity principles and organizational requirements (relevant to confidentiality, integrity, availability, authentication, non-repudiation).Additional
  • 72Knowledge of local area and wide area networking principles and concepts including bandwidth management.Additional
  • 74Knowledge of low-level computer languages (e.g., assembly languages).Additional
  • 81AKnowledge of network protocols such as TCP/IP, Dynamic Host Configuration, Domain Name System (DNS), and directory services.Additional
  • 90Knowledge of operating systems.Core
  • 95BKnowledge of penetration testing principles, tools, and techniques, including specialized tools for non-traditional systems and networks (e.g., control systems).Additional
  • 100Knowledge of Privacy Impact Assessments.Additional
  • 102Knowledge of programming language structures and logic.Core
  • 105Knowledge of system and application security threats and vulnerabilities (e.g., buffer overflow, mobile code, cross-site scripting, Procedural Language/Structured Query Language [PL/SQL] and injections, race conditions, covert channel, replay, return-oriented attacks, malicious code).Core
  • 108* Knowledge of risk management processes (e.g., methods for assessing and mitigating risk).Core
  • 109Knowledge of secure configuration management techniques.Additional
  • 116Knowledge of software debugging principles.Core
  • 117Knowledge of software design tools, methods, and techniques.Core
  • 118AKnowledge of software development models, methodologies, and practices (Waterfall Model, Spiral, Agile, DevSecOps).Core
  • 119Knowledge of software engineering.Core
  • 121Knowledge of structured analysis principles and methods.Core
  • 124Knowledge of system design tools, methods, and techniques, including automated systems analysis and design tools.Core
  • 149Knowledge of web services, including service-oriented architecture, Simple Object Access Protocol, and web service description language.Core
  • 191AKnowledge of development and application of security system access controls.Core
  • 904AKnowledge of interpreted and compiled computer languages.Core
  • 905Knowledge of secure coding techniques.Core
  • 968Knowledge of software related information technology (IT) security principles and methods (e.g., modularization, layering, abstraction, data hiding, simplicity/minimization).Core
  • 976Knowledge of software quality assurance process.Additional
  • 978AKnowledge of root cause analysis techniques.Additional
  • 979Knowledge of supply chain risk management standards, processes, and practices.Additional
  • 1034AKnowledge of Personally Identifiable Information (PII) data security standards.Additional
  • 1034BKnowledge of Payment Card Industry (PCI) data security standards.Additional
  • 1034CKnowledge of Personal Health Information (PHI) data security standards.Additional
  • 1037AKnowledge of information technology (IT) risk management policies, requirements, and procedures.Additional
  • 1038BKnowledge of local specialized system requirements (e.g., critical infrastructure/control systems that may not use standard information technology [IT]) for safety, performance, and reliability.Additional
  • 1072Knowledge of network security architecture concepts including topology, protocols, components, and principles (e.g., application of defense-in-depth, Zero Trust).Additional
  • 1131Knowledge of security architecture concepts and enterprise architecture reference models (e.g., Zachman, Federal Enterprise Architecture [FEA]).Additional
  • 1135Knowledge of the application firewall concepts and functions (e.g., Single point of authentication/audit/policy enforcement, message scanning for malicious content, data anonymization for PCI and PII compliance, data loss protection scanning, accelerated cryptographic operations, SSL security, REST/JSON processing).Additional
  • 1157* Knowledge of national and international laws, regulations, policies, and ethics as they relate to cybersecurity.Core
  • 1158* Knowledge of cybersecurity principles.Core
  • 1159* Knowledge of cyber threats and vulnerabilities.Core
  • 6900* Knowledge of specific operational impacts of cybersecurity lapses.Core
  • 6935* Knowledge of cloud computing service models Software as Service (SaaS), Infrastructure as a Service (IaaS), and Platform as a Service (PaaS).Core
  • 6938* Knowledge of cloud computing deployment models in private, public, and hybrid environment and the difference between on-premises and off-premises environments.Core
  • 7097Knowledge of planning for long-term maintainability using architectural structures, viewpoints, styles, design decisions and frameworks, and the underlying data structures.Additional
  • 7111* Knowledge of Zero Trust Security Model Principles.Core

Skills

From DoD DCWF Tool v5.3 (2026-09-25), in the tool's order, with the DCWF KSAT id

Free · DoD DCWF Tool v5.3 (2026-09-25)
  • 3BSkill in conducting vulnerability scans and recognizing vulnerabilities in information systems and networks.Additional
  • 168Skill in conducting software debugging.Core
  • 172Skill in creating and utilizing mathematical or statistical models.Additional
  • 174Skill in creating programs that validate and process multiple inputs including command line arguments, environmental variables, and input streams.Core
  • 177Skill in designing countermeasures to identified security risks.Additional
  • 185ASkill in developing applications that can log and handle errors, exceptions, and application faults and logging.Core
  • 197Skill in discerning the protection needs (i.e., security controls) of information systems and networks.Additional
  • 238ASkill in writing code in a currently supported programming language (e.g., Java, C++).Core
  • 905ASkill in applying secure coding techniques.Core
  • 973ASkill in using code analysis tools.Core
  • 980ASkill in performing root cause analysis.Additional
  • 1020ASkill in secure test plan design (e. g. unit, integration, system, acceptance).Additional
  • 1140ASkill in using Public-Key Infrastructure (PKI) encryption and digital signature capabilities into applications (e.g., S/MIME email, SSL traffic).Additional
  • 3822ASkill in managing user relationships, including determining user needs/requirements, managing user expectations, and demonstrating commitment to delivering quality results.Additional
  • 6942Skill in designing or implementing cloud computing deployment models.Additional
  • 6945Skill in migrating workloads to, from, and among the different cloud computing service models.Additional

Abilities

From DoD DCWF Tool v5.3 (2026-09-25), in the tool's order, with the DCWF KSAT id

Free · DoD DCWF Tool v5.3 (2026-09-25)
  • 1071AAbility to develop secure software according to secure software deployment methodologies, tools, and practices.Core
  • 3080Ability to use and understand complex mathematical concepts (e.g., discrete math).Additional
  • 6918Ability to apply cybersecurity strategy to cloud computing service and deployment models, identifying proper architecture for different operating environments.Additional
  • 6919Ability to determine the best cloud deployment model for the appropriate operating environment.Additional

Workforce Automation analysis, not part of the source

O*NET jobs

WFA · Part of the paid plan when accounts open

Jobs the ETO-CSET NICE/O*NET crosswalk (2024) maps to this role’s NICE equivalents, with the share of each job’s detailed work activities (DWAs) that has a mapped AI skill.

Equivalents

NICE work roles

From DoD DCWF Tool v5.3 (2026-09-25), linked from published ids only, never from titles

Free · DoD DCWF Tool v5.3 (2026-09-25)

O*NET jobs it reaches

Through its NICE equivalents, by the ETO-CSET NICE/O*NET crosswalk (2024); jobs from O*NET 30.3

Free · O*NET 30.3