Module 4 Learning Goals

Skill Proficiencies

Academic success in B4 means that students demonstrate proficiency and comfort with the concepts below. The expected mastery level can be understood with the following scale:

  • Mastery: Student is able to explain and implement the concept independently or with light reference
  • Functional: Student recognizes when to use the concept and can implement it with the support of documentation and/or a collaborator
  • Familiarity: Student can recognize and describe the concept when needed/appropriate, but is not able to implement the technology/technique


Project Planning

  • Create detailed user stories from project acceptance requirements
  • Track project progress using an Agile board

Technical Communication

  • Document intent, set-up, and usage of their code for effective collaboration
  • Use pull requests to organize and effectively communicate updates and changes to code base
  • Explain intent and execution of code

JavaScript Fundamentals

  • Apply good development patterns (DRY, SRP, etc.) to JavaScript functions
  • Create and use functions with parameters
  • Apply and articulate differences between a function expression and a function declaration
  • Describe different variable declarations and scoping


  • Explain GraphQL and REST API standards


Technical Communication

  • Formulate questions by synthesizing what was expected versus what was observed
  • Apply feedback from a code review to improve quality


  • Write unit tests for JavaScript
  • Organize functions into classes and objects

JavaScript Tools & Libraries

  • Implement a stand-alone web service with Node and Express
  • Use the Node Package Manager to manage dependencies


  • Implement a Node and GraphQL API server

Technical Skills

  • Coordinate data and events across applications
  • Build applications that execute in multiple environments (development, test, continuous integration, and production)


JavaScript Fundamentals

  • Translate between JavaScript written in ES5 and ES6

JavaScript in the Browser

  • Read form content and manipulate DOM via JavaScript
  • Integrate outside data sources in the browser (Fetch)
  • Utilize event listeners to attach code to even-element combinations including document-ready and element-click