10152108Serverless Cloud with React
Course Information
Description
This class introduces students to Serverless cloud computing from a front-end web developer’s point of view. Learn React basics and gain experience with popular AWS Serverless cloud offerings including, authentication & authorization, API Gateway, Lambda, DynamoDB, and others. Awareness and experience with cloud native solution architectures are essential as your career progresses toward full-stack software development.
Total Credits
3

Course Competencies
  1. Set up and use AWS Amplify and related tools
    Assessment Strategies
    Individual Project, Skill Demonstration in Lab
    Criteria
    Set up the Amplify CLI
    Initialize JS projects with Amplify resources
    Add authorization (Amazon Cognito), storage (DynamoDB), API (AWS Lambda & API Gateway) and various other serverless offerings to a JS project
    Customize serverless assets with custom JS
    Create GraphQL schemas and consume GraphQL queries, mutations, and subscriptions
    Troubleshoot and deploy Amplify serverless assets

  2. Create a variety of ReactJS apps
    Assessment Strategies
    Individual Project, Skill Demonstration in Lab
    Criteria
    Use the create-react-app
    Add and use various npm modules
    Create and modify React functional components
    Write JSX syntax
    Use React props including various forms of JS destructuring
    Use React hooks effectively including useState(), useEffect() and useReducer()
    Exchange data between application state and HTML forms in React

  3. Input provided code and reformat and/or review with diligence for practice with a variety of coding techniques and habits
    Assessment Strategies
    Individual Project, Skill Demonstration in Lab
    Criteria
    Rewrite with various best practices and/or different approaches to enforce concepts
    Draw whiteboard architecture diagrams explaining pertinent concepts presented in text
    Independently troubleshoot and debug errors encountered
    Extend sample applications in various ways to practice the intended skills, develop deeper understanding, and expand knowledge into related areas