Module 4 Success

Graduation Requirements

In order to graduate from Module 4, students must successfully complete each of the following:

Final Assessment

Students must pass each part of the final assessment. The final assessment is composed of three sections:

Assessment requirements will be provided during the first week of the module.

Independent Work

Expected: Students will build their Capstone project.

Expected: Students will complete and submit weekly Checks for Understanding questions (weeks 1-4).

Group Work

Expected: Students, as a pair, complete the Quantified Self project.

Expected: Students, as a project team, are responsible for passing their House of Vars (Open Source) project and submitting an individual blog post summarizing the experience.

Career Development

The Career Development segment is made up of several pieces:

  • The 30-day post-grad job search action plan (submitted in markdown for presentation and via DM to your coach)
  • Prepare a lightning talk of their Turing story to present during the final week of the module (see the Turing Story Presentation section below)

Feedback & Community

As stewards of the larger Turing community, Module 4 students are expected to facilitate a Gear-up session that they’ve designed with other Mod 4 students.

When documenting your community contribution, say a few words about the facilitation experience.

Presentation & Portfolio

To reflect on the work you’ve done during this module, you will prepare a 10 minute presentation outlined here. You will present this to one of your current instructors, another staff member, and a community member/alum. A PR submitting the associated markdown is due at 9 am the day of presentations.

Turing Story Presentation

On Thursday of Week 6, you’ll present the story of your journey at Turing to your classmates and staff.

Your presentation…

  • should be about 4 minutes
  • should include the time leading up to Turing
  • should include your time at Turing
  • should include the trajectory you’re on as you start your new career
  • should include thoughtful reflection and describe how you’ve grown and changed
  • can include a slide deck, or any other visual aids you’d like

After you present, instructors will ask you a couple questions, mostly to dig into things we found interesting about your story. There’s not specific answers we’ll be looking for.

If you’re unsure how to cover your time at Turing, a common pattern is to simply talk about each module. Talk about your favorite project, or what the biggest takeaway was for you, or just a fun story from that module.

You’re required to present, but there’s no grade. As long as you get up and speak, you’ve met the requirement.

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

Each of the following skills is covered in the curriculum, and most are covered by an assessment or project rubric.

Professional Skills

Agile Processes

  • Students use an agile process to turn acceptance requirements into deployed software (mastery)
  • Students estimate complexity of user stories (functional)
  • Students translate acceptance requirements into user stories that are ready for work (mastery)
  • Students verify acceptance requirements using automated testing (mastery)

Technical Communication

  • Students formulate questions by synthesizing what was expected vs what was observed (mastery)
  • Students explain intent and execution of their code (mastery)
  • Students document intent and usage of their code for effective collaboration (functional)
  • Students use pull requests to organize discussion about features (functional)
  • Students implement feedback from a code review to improve quality (functional)
  • Students provide feedback in the form of a code review to improve quality and share knowledge (familiarity)

Core Technical Skills

Architecting for Scalability

  • Students divide applications into components and domains of responsibilities to facilitate multi-developer teams (functional)
  • Students abstract external dependencies and services to provide flexibility (familiarity)
  • Students integrate outside data sources (Files, APIs, databases) (functional)
  • Students coordinate data and events across applications (functional)
  • Students build applications that execute in development, test, CI and production environments (functional)
  • Students securely apply authentication and authorization patterns (functional)
  • Students apply cacheing patterns to improve application performance (familiarity)

JavaScript Essentials

  • Students apply knowledge of Ruby collections to JavaScript arrays (mastery)
  • Students create and use functions with parameters (mastery)
  • Students apply good development patterns, like DRY and separation of concerns, to JavaScript functions (mastery)
  • Students organize functions into classes and objects (functional)
  • Students make effective use of this in multiple contexts (functional)
  • Students differentiate between JavaScript written in ES5 and ES6 (mastery)
  • Students translate between JavaScript written in ES5 and ES6 (familiarity)
  • Students unit test JavaScript (functional)

JavaScript in the Browser

  • Students use event listeners to attach code to event-element combinations including document-ready and element-click (functional)
  • Students write precise CSS-style selectors in multiple contexts like DOM manipulation and integration testing (functional)
  • Students read form content and manipulate DOM via JavaScript (functional)
  • Students integrate outside data sources in the browser (Fetch, local storage) (functional)
  • Students use integration testing to verify JavaScript functionality (functional)

JavaScript Tools and Libraries

  • Students implement a stand-alone web service with Node and Express (functional)
  • Students use the Node Package Manager to manage dependencies (functional)
  • Students use WebPack as a build tool for organizing their code into modules (functional)

PostgreSQL & SQL

  • Students write basic SQL statements without the assistance of an ORM (functional)
  • Students use the CLI to understand the structure and data of their database (ex: list databases, tables, table structure) (familiarity)