Apprentices
- 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
- Role Suitability Form: Role Suitability form - HEE SD.pdf
Main contact: Luke Shaw - ls@firebrandtraining.co.uk
Enrolment Consultant - Keat Ng
Modules
- Microsoft Programming in HTML5 with JavaScript and CSS3
- OCA Java SE 8 Programmer
Both
- Software Testing Introduction to DevOps
- Microsoft Querying Data with Transact-SQL
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.
To achieve their Software Developer apprenticeship, apprentices must:
- Demonstrate competence against two knowledge modules: Software Development Methodologies and Software Language. These are assessed by examinations set by the British Computer Society and regulated by Ofqual. Apprentices must pass both modules.
- Submit a portfolio of evidence showing how they have applied the knowledge from these modules to projects and activities in their workplace.
- Complete their formal End Point Assessment, which comprises: a synoptic project to showcase knowledge and skills from across the apprenticeship; a review of their portfolio of evidence; and a final interview with an independent EPA assessor.
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 Team Coding standards
- HEE 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 to MySQL endpoints (Stored procedures) TIS
- 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 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)
Technical Knowledge and Understanding
Upon completion of their Network Engineer apprenticeship, individuals will understand:
- 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 (e.g. algorithms, logic and data structures)
Underpinning Skills, Attitudes and Behaviours
- logical and creative thinking skills
- analytical and problem-solving skills
- ability to work independently and to take responsibility
- can use own initiative
- a thorough and organised approach
- ability to work with a range of internal and external people
- ability to communicate effectively in a variety of situations
- maintain a productive, professional and secure working environment
Slack: https://hee-nhs-tis.slack.com/
Jira issues: https://hee-tis.atlassian.net/issues/?filter=14213