Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. Details of the Software Developer Apprenticeship: https://firebrand.training/uk/apprenticeships/programmes/higher-level-4/software-developer?utm_campaign=website&utm_source=Goldmine&utm_medium=email#curriculum
  2. Role Suitability Form: Role Suitability form - HEE SD.pdf

...

Main contact: Luke Shaw - ls@firebrandtraining.co.uk

Enrolment Consultant - Keat Ng

Software Developer Overview

Software Developer apprentices are taught how to build and test simple, high-quality code across front end, logic and database layers. They'll be able to interpret design documentation and specifications.

...

Successful Software Developer apprentices go on into roles such as a Web Developer, Application Developer, Mobile App Developer, Games Developer and Software Developer.

Technical Competencies

Upon completion of their Software Developer apprenticeship, individuals will be able to:

  • write good quality code (logic) with sound syntax in at least one language
    • HEE Tis TIS Team Coding standards
    • HEE GITHub GitHub repo and associated standards
  • develop effective user interfaces for at least one channel
    • Use of HEE TIS UX/I standards and templates
    • Use of agreed libraries
    • Supervised development with HEE UI/X Lead
  • effectively link code to the database/data sets
    • Data management will be carried out in the following environments
    • JAVA Java to MySQL endpoints (Stored procedures) TIS
    • Jave Java to MySQL endpoints (ETL) - TIS - NDW
    • MySQL - DBA
    • Tableau
  • test code and analyse results to correct errors found using either V-model manual testing and/or using unit testing
    • Use HEE TIS Continous Continuous Integration Testing
    • Unit Testing
  • apply structured techniques to problem-solving, can debug code and can understand the structure of programmes in order to identify and resolve issues
    • Whilst debug tools are a useful aid, we will be working with apprentices to ensure they develop logic, structured approaches to problem-solving
  • create simple data models and software designs to effectively communicate an understanding of the program, following best practices and standards
    • We will expect apprentices to produce UML model notation and are able to reconcile models to designs
  • understand and create basic analysis artefacts, such as use cases and/or user stories
    • The TIS mode of operation uses use cases and user stories as a key element of the software development process
  • understand and utilise skills to build, manage and deploy code into enterprise environments
    • Apprentices can develop appropriate user documentation, planning for user training and data migration
  • operate at all stages of the software development lifecycle, with increasing breadth and depth over time with an initial focus on build and test.
  • apply good practice approaches according to the relevant paradigm (for example object-oriented, event-driven or procedural)
  • interpret and follow:
    • software designs and functional/technical specifications
    • the company defined coding standards or industry good practice for coding
    • testing frameworks and methodologies
    • company, team or client approaches to continuous integration, version and source control
  • respond to the business environment and business issues related to software development
  • operate effectively in their own business', their customers' and the industry's environments
  • apply the maths required to be a software developer (e.g. algorithms, logic and data structures)

...

  • and operate at all stages of the software development lifecycle
  • the similarities and differences (taking into account positives and negatives of both approaches) between agile and waterfall software development methodologies
  • how teams work effectively to produce software and contributes appropriately
  • and apply software design approaches and patterns and can interpret and implement a given design, compliant with security and maintainability requirements
  • and respond to the business environment and business issues related to software development
  • and apply the maths required to be a software developer (eg e.g. algorithms, logic and data structures)

...