Systems Developer Apprentice (University of Cambridge)
Software Development:
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 Identify and report any impediments to software development activities and propose practical solutions Identify and select the most appropriate technical solution, taking into consideration coding best practice and appropriate quality standards Write logical and maintainable software solutions to meet the design and organisational coding standards (Software Development Lifecycle -Implementation and Build phase) Support delivery of one or more software deployment phases, such as trials and final release, to ensure that software developer outcomes are deployed correctlySoftware Requirements:
Convert customer requirements into technical requirements, both functional and non-functional to ensure that customers' expectations are accurately reflected in the software products developedCommunication:
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 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 adjustedSecurity and recovery:
Consider security implications of proposed design to ensure that security considerations are built in from inception and throughout the development process Apply security best practice to the software solution throughout the software development life cycle Apply appropriate recovery techniques to ensure the software solution being developed is not lost (Software Development Lifecycle -Implementation and Build phase)Documentation:
Create and maintain appropriate project documentation to explain the development process and resources used Deliver a suitably documented deployable solution to the customer for their use (Software Development Lifecycle -Deploy phase)Change Control:
Implement appropriate change control to ensure that software development changes may be tracked, and quality risks managedUnit Testing:
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) Perform testing of the software solution to ensure a high-quality output (Software Development Lifecycle -Test phase)Software Maintenance:
Apply suitable 'bug fix', appropriate to the severity and priority of the software development issue identifiedProfessional Development:
Practice continuous self-learning to keep up to date with technological developments to enhance relevant skills and take responsibility for own professional developmentTraining:
Firebrand’s sector leading Software Developer (L4SD) Apprenticeship Programme develops apprentices to become competent software developers, working across the front-end, logic and data layers.
Apprentices develop a deeper understanding of key software development processes and practices allowing operation at all stages of the software development lifecycle, including design, development, testing, deployment, and maintenance.
The apprentice will learn advanced programming skills, including object-oriented concepts, use of automated testing tools and secure development principles and practices in order to develop high-quality and secure software.
Firebrands course is delivered either Online (online live instructor led), or face to face in the classroom environment (your choice). Our Subject Matter Experts (SMEs), Learning Mentors (LMs) and world-leading trainers prepare apprentices to work across multiple sectors.
Completion of this apprenticeship will provide learners with the following world class vendor certifications in addition to the Software Developer apprenticeship:
BCS Level 4 Diploma in Software Development Methodologies CertNexus Cyber Secure Coder Industry recognised certification in one of Java or PythonKey areas covered are:
Software Development Lifecycles Effective Team Working Problem Solving Logic and data structures Sorting and searching algorithms Critical sections and race conditions Relational and non-relational databases Software designs and functional or technical specifications Software testing frameworks and methodologiesTraining Outcome:
The role may offer a permanent role upon completion of the apprenticeship depending on performance.
Employer Description:
The University has more than 20,000 students and 12,000 staff from all walks of life and all corners of the world. No two days are ever the same at the University of Cambridge. The University is a confederation of Schools, Faculties, Departments and Colleges. The 31 Colleges are governed by their own statutes and regulations but are integral to the make-up of the University. The Apprentice Systems Developer sits within the Software Development team within the Institute of Continuing Education (ICE), reporting to the Head of IT and Systems and supported/managed by the Senior Systems Developer. The Institute’s activities primarily take place at Madingley Hall (a residential Grade I listed building), which provides facilities for conferences and events, and a full hotel service. Madingley Hall has 13 meeting rooms, 62 ensuite bedrooms, a bar and lounge, set in 8 acres of grounds (including Capability Brown designed gardens).
Working Hours :
Shifts to be confirmed. Flexible hybrid working, allowing for off the job hours.
Skills:
Communication skills,Problem solving skills,Team working,Prioritise own workload,Able to work independently,Databases and web technologies,APIs and interfaces,Programming skills,Written communication skills