The primary role of a software developer is to build and test simple, high-quality code across front end, logic and database layers. A developer will typically be working as part of a larger team; in which they will have responsibility for some of the straightforward elements of the overall project. The developer will need to be able to interpret design documentation and specifications. The customer requirements will typically be defined and agreed by more experienced or specialist members of the team, such as a business analyst or technical architect.
Typical Job Roles
Web Developer, Application Developer, Mobile App Developer, Games Developer, Software Developer.
Individual employers will set the selection criteria, but this is likely to include A levels; a level 3 apprenticeship or other relevant qualification; relevant experience and/or an aptitude test with a focus on functional maths.
How is the Software Developer standard structured?
The software developer standard is made up of technical competencies, technical knowledge and underpinning behaviours. Over the period of the apprenticeship it is expected that you are able to meet all of the standards within these three groups.
Logic: writes good quality code (logic) with sound syntax in at least one language
User interface: can develop effective user interfaces for at least one channel
Data: can effectively link code to the database/data sets
Test: can test code and analyse results to correct errors found using either V-model manual testing and/or using unit testing
Problem solving: can apply structured techniques to problem solving, can debug code and can understand the structure of programmes in order to identify and resolve issues
Design: can create simple data models and software designs to effectively communicate understanding of the program, following best practices and standards
Analysis: can understand and create basic analysis artefacts, such as user cases and/or user stories
Deployment: can understand and utilise skills to build, manage and deploy code into enterprise environments
Development lifecycle: can operate at all stages of the software development lifecycle, with increasing breadth and depth over time with initial focus on build and test.
Can apply good practice approaches according to the relevant paradigm (for example object oriented, event driven or procedural)
Can interpret and follow:
software designs and functional/technical specifications
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
Can respond to the business environment and business issues related to software development
Can operate effectively in their own business’s, their customers’ and the industry’s environments
Can apply the maths required to be a software developer (e.g. algorithms, logic and data structures)
Technical Knowledge and Understanding
Understands and operates at all stages of the software development lifecycle
Understands the similarities and differences (taking into account positives and negatives of both approaches) between agile and waterfall software development methodologies
Understands how teams work effectively to produce software and contributes appropriately
Understands and applies software design approaches and patterns and can interpret and implement a given design, compliant with security and maintainability requirements
Understands and responds to the business environment and business issues related to software development
Understands and applies the maths required to be a software developer (eg 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 productive, professional and secure working environment
City and Guilds Level 4 Diploma in Software Development Methodologies
City and Guilds Level 3 Diploma in ICT Systems and Principles
City and Guilds Level 3 Diploma in ICT Professional Competence
Cisco CCNA 1 and 2
Level 2 English and Mathematics (if not already achieved)