Back to listings

Software developer

Reference: ST0116
Version: 1.1
View on Institute for Apprenticeships
Apprenticeship Standards available with Tresl

Interested in a simple Skills Scan and Learning Progress Tracker tool for the Software developer standard?

Knowledge

  • K1: all stages of the software development life-cycle (what each stage contains, including the inputs and outputs)
  • K2: roles and responsibilities within the software development lifecycle (who is responsible for what)
  • K3: the roles and responsibilities of the project life-cycle within your organisation, and your role
  • K4: how best to communicate using the different communication methods and how to adapt appropriately to different audiences
  • K5: the similarities and differences between different software development methodologies, such as agile and waterfall.
  • K6: how teams work effectively to produce software and how to contribute appropriately
  • K7: software design approaches and patterns, to identify reusable solutions to commonly occurring problems
  • K8: organisational policies and procedures relating to the tasks being undertaken, and when to follow them. For example the storage and treatment of GDPR sensitive data.
  • K9: algorithms, logic and data structures relevant to software development for example:- arrays- stacks- queues- linked lists- trees- graphs- hash tables- sorting algorithms- searching algorithms- critical sections and race conditions
  • K10: principles and uses of relational and non-relational databases
  • K11: software designs and functional or technical specifications
  • K12: software testing frameworks and methodologies

Skills

  • S1: create logical and maintainable code
  • S2: develop effective user interfaces
  • S3: link code to data sets
  • S4: test code and analyse results to correct errors found using unit testing
  • S5: conduct a range of test types, such as Integration, System, User Acceptance, Non-Functional, Performance and Security testing.
  • S6: identify and create test scenarios
  • S7: apply structured techniques to problem solving, debug code and understand the structure of programmes in order to identify and resolve issues
  • S8: create simple software designs to effectively communicate understanding of the program
  • S9: create analysis artefacts, such as use cases and/or user stories
  • S10: build, manage and deploy code into the relevant environment
  • S11: apply an appropriate software development approach according to the relevant paradigm (for example object oriented, event driven or procedural)
  • S12: follow software designs and functional or technical specifications
  • S13: follow testing frameworks and methodologies
  • S14: follow company, team or client approaches to continuous integration, version and source control
  • S15: communicate software solutions and ideas to technical and non-technical stakeholders
  • S16: apply algorithms, logic and data structures
  • S17: interpret and implement a given design whist remaining compliant with security and maintainability requirements

Behaviours

  • B1: Works independently and takes responsibility. For example, has a disciplined and responsible approach to risk and stays motivated and committed when facing challenges
  • B2: Applies logical thinking. For example, uses clear and valid reasoning when making decisions related to undertaking work instructions
  • B3: Maintains a productive, professional and secure working environment
  • B4: Works collaboratively with a wide range of people in different roles, internally and externally, with a positive attitude to inclusion & diversity
  • B5: Acts with integrity with respect to ethical, legal and regulatory ensuring the protection of personal data, safety and security.
  • B6: Shows initiative and takes responsibility for solving problems within their own remit, being resourceful when faced with a problem to solve.
  • B7: Communicates effectively in a variety of situations to both a technical and non-technical audience.
  • B8: Shows curiosity to the business context in which the solution will be used, displaying an inquisitive approach to solving the problem. This includes the curiosity to explore new opportunities, techniques and the tenacity to improve methods and maximise performance of the solution and creativity in their approach to solutions.
  • B9: Committed to continued professional development.

Duty 1

  • DUTY: Take and interpret given software development requirements to estimate effort to deliver the work product to enable accurate costs to be established.
    • K1
    • K2
    • K3
    • K6
    • K7
    • S7
    • S11
    • S17
    • B1
    • B2
    • B8

Duty 2

  • DUTY: Break software development activities down into logical units of work to enable sequencing and ensure the best possible structuring of activities to deliver a high quality product right first time.
    • K1
    • K3
    • K6
    • K7
    • K9
    • S1
    • S7
    • S8
    • S16
    • S17
    • B1
    • B2

Duty 3

  • DUTY: Report progress accurately throughout the development life-cycle stages to ensure adequate audit trails of key worksteps such that the organisation can demonstrate how the product has been created for quality and commercial purposes.
    • K1
    • K2
    • K3
    • K4
    • K6
    • K8
    • S15
    • B4

Duty 4

  • DUTY: Identify and report any impediments to software development activities and propose practical solutions.
    • K7
    • K10
    • S7
    • S9
    • B1
    • B5
    • B6
    • B7
    • B8

Duty 5

  • DUTY: Convert customer requirements into technical requirements, both functional and non-functional to ensure that customers' expectations are accurately reflected in the software products developed.
    • K1
    • K2
    • K3
    • S2
    • S9
    • S11
    • S12
    • S14
    • S17
    • B1
    • B2
    • B3
    • B4
    • B6
    • B7
    • B8

Duty 6

  • DUTY: Identify and select the most appropriate technical solution, taking into consideration coding best practice and appropriate quality standards.
    • K7
    • K9
    • K10
    • K11
    • S1
    • S8
    • S9
    • S11
    • S12
    • S16
    • S17
    • B5
    • B6
    • B8
    • B9

Duty 7

  • DUTY: Communicate software development solutions to a range of internal or external stakeholders to ensure clear understanding of requirements and how they have been met or adjusted.
    • K1
    • K2
    • K3
    • K4
    • K6
    • S15
    • B1
    • B4
    • B6
    • B7

Duty 8

  • DUTY: Consider security implications of proposed design to ensure that security considerations are built in from inception and throughout the development process.
    • K7
    • K8
    • K11
    • S1
    • S2
    • S3
    • S8
    • S11
    • S17
    • B5
    • B8

Duty 9

  • DUTY: Write logical and maintainable software solutions to meet the design and organisational coding standards (Software Development Lifecycle -Implementation and Build phase).
    • K9
    • K11
    • S1
    • S2
    • S3
    • S8
    • S10
    • S11
    • S12
    • S16
    • B2
    • B3

Duty 10

  • DUTY: Apply security best practice to the software solution throughout the software development life-cycle.
    • K7
    • K8
    • S8
    • S11
    • S12
    • B5

Duty 11

  • DUTY: Create and maintain appropriate project documentation to explain the development process and resources used.
    • K1
    • K3
    • K5
    • K8
    • S9
    • B2
    • B3

Duty 12

  • DUTY: Apply appropriate recovery techniques to ensure the software solution being developed is not lost (Software Development Lifecycle -Implementation and Build phase).
    • K7
    • B1
    • B9

Duty 13

  • DUTY: Implement appropriate change control to ensure that software development changes may be tracked and quality risks managed.
    • K1
    • K2
    • K3
    • K5
    • K6
    • K8
    • B2

Duty 14

  • DUTY: Undertake unit testing of solutions, with appropriate levels of test code coverage, to identify and, where necessary, resolve issues (Software Development Lifecycle -Implementation and Build phase).
    • K9
    • K11
    • K12
    • S4
    • S5
    • S6
    • S7
    • S13
    • B6

Duty 15

  • DUTY: Perfom testing of the software solution to ensure a high quality output (Software Development Lifecycle -Test phase).
    • K9
    • K11
    • K12
    • S4
    • S5
    • S6
    • S13
    • B3
    • B8
    • B9

Duty 16

  • DUTY: Deliver a suitably documented deployable solution to the customer for their use (Software Development Lifecycle -Deploy phase).
    • K1
    • K2
    • K3
    • K5
    • S2
    • S8
    • S9
    • S10
    • S15
    • B3

Duty 17

  • DUTY: Support delivery of one or more software deployment phases, such as trials and final release, to ensure that software developer outcomes are deployed correctly.
    • K2
    • K5
    • K6
    • K8
    • S5
    • S6
    • S10
    • B1
    • B4
    • B7

Duty 18

  • DUTY: Provide support during software trials and after final release to ensure that customers understand and can correctly apply the product, and risks are mitigated.
    • K2
    • K5
    • B4
    • B9

Duty 19

  • DUTY: Respond appropriately to given Service Level Agreements (SLAs) to ensure that time and resources invested in software development activity are allocated appropriately to deliver good customer service.
    • K1
    • K2
    • K3
    • K5
    • K6
    • K7
    • K8
    • S14
    • B1
    • B6
    • B8
    • B9

Duty 20

  • DUTY: Apply suitable 'bug fix', appropriate to the severity and priority of the software development issue identified.
    • K12
    • S4
    • S7
    • S13
    • B6

Duty 21

  • DUTY: Practice continuous self learning to keep up to date with technological developments to enhance relevant skills and take responsibility for own professional development.
    • B1
    • B3
    • B8
    • B9

Interested in a simple Skills Scan and Learning Progress Tracker tool for the Software developer standard?

© Tresl Education Ltd 2024