Automation

Last reviewed 25 September 2020 by Alex Seymour

Description

This lesson is structured around what automation is and has an introduction to tools that can be used to automate parts of a process or tools that will help a developer be more efficient.

Why this is important

Explain why learning this is useful in the working environment.

Outcomes

At the end of this training you will be able to:

  1. Understand this concept
  2. Have knowledge of a few tools available the could start using immediately

Learner Requirements

Before starting this session you will need:

  1. A computer with access to terminal (windows machine will require putty)
  2. A development environment on their computer.

Outline

An overview of the session should mirror slide deck

  1. Intro to topic
  2. Examples of automation
  3. Explainations of each type of automation
  4. Practical tasks to show each student how the tools work.

Tasks

To be completed as part of this training session

  1. https://www.npmjs.com/ - NPM, basic tutorial
  2. https://getcomposer.org/ - Composer, basic tutorial
  3. https://reactjs.org/tutorial/tutorial.html - Creating a react app with NPM
  4. https://gulpjs.com/ - Adding gulp compiler to your dev environment
  5. https://wppb.me/ - Online tool that creates a class wordpress plugin from a template
  6. https://github.com/ahmadawais/create-guten-block - NPX tool that creates a gutenberg wordpress component

Resources / Reference

  1. Slides: Intro Slides on Google Drive

Skills, Knowledge, Behaviours and Values

Core Skills

This workshop is designed to develop the following from our core skills directive

  • Estimation
  • Prioritisation
  • Presentation
  • Communication
  • Teamwork
  • Empathy

Apprenticeship Standard

This workshop will encourage the development of the following from the Software Developer Level 4 Standard

COMPETENCIES (Skills)

  • C1 - Logic: writes good quality code (logic) with sound syntax in at least one language.
  • C5 - 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.
  • C8 - Deployment: can understand and utilise skills to build, manage and deploy code into enterprise environments.
  • C9 - 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..
  • C12 - Can respond to the business environment and business issues related to software development.

BEHAVIOURS

  • B1 - Logical and creative thinking skills.
  • B2 - Analytical and problem-solving skills.
  • B3 - Ability to work independently and to take responsibility.
  • B7 - Ability to communicate effectively in a variety of situations.
  • B8 - Maintain productive, professional and secure working environment.

Knowledge

  • K1 - Understands and operates at all stages of the software development lifecycle.
  • K3 - Understands how teams work effectively to produce software and contributes appropriately.
  • K4 - Understands and applies software design approaches and patterns and can interpret and implement a given design, compliant with security and maintainability requirements.
  • K5 - Understands and responds to the business environment and business issues related to software development.