Software Developer

Competency-based occupation
Onet code: 15-1252.00

1

Years

35

Skills

345h

Related instruction
Classroom Instruction Topics
  • Database Design and Development
  • Database SQL Connection Scripting
  • Web App Development (Frontend or Backend)
  • Web App Specialization - Intro to Cloud Essentials
  • Web App Specialization - Web App Development (Frontend or Backend)
  • Software Application Specialization - Computer Science 1
  • Software Application Specialization - Computer Science 2
On-the-job Training
  • Participates in and supports the planning of product, platform, and/or software development life cycles by assisting the team with initial determination of applicable specifications, requirements, systems and concepts to produce the desired output
    • Participates in the implementation of software development life cycles and specifications, including supporting of mapping out work plans, under supervision
    • Supports the creation, installation and integration of tools or software languages needed per output in the work plan, under supervision
    • Coordinate with program project team to analyze user needs and software requirements to determine feasibility of design within time and cost constraints
    • Assist program project team to analyze information to determine, recommend, and plan installation of a new software program or modification of existing software
    • Proactively collaborate with others to resolve information technology issues
  • Supports the Principal Software Developer and team leads with mapping out detailed requirement specifications, communicates with other key team members and/or customers members
    • Collaboratively works with entire project team to ensure desired requirements and objectives are clear and clarified to all team members including Database Developers, User Experience (UX) designers, Quality Assurance (QA) testers, product managers, etc.,
    • Ensures proper use of desired Software Requirement Specification (SRS), and clearly defines and documents the product requirements, under supervision
    • Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes
    • Translate software project security requirements into application design elements including documenting the elements of the software attack surfaces, assist in conducting threat modeling, and defining any specific security criteria in the specification re
    • Assist development team in the identification of basic common coding flaws at a high level and then implement mitigation plans
    • Support team in development of secure test plan development and design (e. g. unit, integration, system, acceptance, etc)
    • Supports the software product development team/ QA testers in preliminary quality assurance requirements assessments & potential risk assessments, under supervision
  • Participates in and supports designing software or platform with the project/product team
    • Supports the UX team, or appropriate team members, with software design and structure of the software as it relates to implementation, its data models, interfaces between system components, and if applicable, the algorithms used, under supervision
    • Prepare 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
    • Provides input for the initial identification and development of the best prototype suited for the project, if any; supports identification of appropriate languages, operating systems, and monitoring methods applicable for the final program
    • Assist team in implementing best cybersecurity and privacy principles to organizational requirements design to ensure confidentiality, integrity, availability, authentication, non-repudiation techniques
    • Confer with systems analysts, engineers, programmers and others to design systems and to obtain information on project limitations and capabilities, performance requirements and interfaces
  • Supports the development and assembly of the software, platform, or product
    • Follows the company-specific source code management processes, including enterprise-wide version control system while designing and developing secure software applications
    • Compile and write code documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program
    • Assist team in development of software programs that validate and process multiple inputs including command line arguments, environmental variables, and input streams
    • Support team in developing applications that can log and handle errors, exceptions, and application faults and logging
    • Participates in building the program using the appropriate languages and/or applicable development methods
    • Design coding countermeasures and mitigations against potential exploitations of programming language weaknesses and vulnerabilities in system and elements
    • Correct programming errors by making appropriate changes and rechecking the program to ensure that the desired results are produced
    • Apply coding and testing standards, apply security testing tools including static-analysis code scanning tools, and conduct code reviews
  • Supports testing and debugging; participates in integration and deployment
    • Participates in recognizing concepts to determine Continuous Integration (CI)/Continuous Delivery (CD) configuration, supports building and applying CI/CD integrations for manual and/or automated functionalities
    • Supports close monitoring to identify issues and reports them in a clear and concise way to senior team members
    • Assists team in performing root cause analysis, if applicable
    • Perform or direct revision, repair, or expansion of existing software programs to increase operating efficiency or adapt to new requirements
    • Evaluate team code to ensure that it is valid, is properly structured, meets industry standards, and functional requirements
    • After issue is reported, clearly tracks and works with team to fix, and re-test until quality standards are met
    • Makes extensive, detailed notes when any changes are made and/or to clarify why a function must remain the same in a clear way for other team members
    • Write or contribute to updating of instructions or manuals to guide end users
    • Supports integration and test phase, properly notes progress relevant to project success using best practices
    • Participates in ongoing monitoring of platform, software, or application under project requirements, and supports with providing maintenance, troubleshooting assistance, and applies problem solving capabilities as applicable, under supervision
calendar.svg
Get on our calendar
Not sure if WorkHands is right for you? Chat with our team today
sendEmail.svg
Send us an email
We'll get back to you shortly