Module 3 Assessment Information

For this assessment you will be complete a 3 hour independent challenge.

In this assessment you will:

  • Consume multiple third party APIs
  • Expose an API endpoint
  • Build well tested features
  • Demonstrate mastery of all parts of the Rails stack
  • Demonstrate mastery of Ruby
  • Commit every 15 minutes to track your progress (details below)

Areas of Knowledge

The intent of this assessment is to demonstrate a solid working understanding of the following:

  • Consuming an API
  • Exposing an API
  • Writing tests that adequately test business value
  • Core concepts covered in the previous two Modules
  • Demonstrate good code quality using encapsulation and abstraction

In addition, we expect you to:

  • Be able to explain all lines of code in your project
  • Be able to interpret and implement user stories in a Rails project
  • Be able to use external resources in the problem solving process (ie: Google, Docs etc)


  • As you work, you should:
    • Commit your code every 15 minutes.
    • Reference external public resources (ie: Google, Ruby API, etc)
  • As you work, you should not:
    • Push your code until the end of the assessment
    • Copy code snippets
    • Review old projects for code implementations
    • Seek live support from individuals other than facilitators

Note about the commit expectation:

To better follow your progress over the 3 hours we expect that you commit every 15 minutes regardless of where you’re at. Be sure to commit anything you may want to talk about later. For example: You get the first implementation working but want to refactor. If you don’t commit the first implementation and don’t finish the refactor there is no record of your initial solution.

Evaluation Criteria

Students will be evaluated on 3 main criteria: feature completion, testing, and code quality. The scale is as follows.

  1. Below Expectations
  2. Approaching Expectations
  3. Meets Expectations
  4. Above Expectations

Feature Completion

  1. Incomplete/Not Functional
  2. Functional, but does not match the expected return exactly
  3. Functions as expected
  4. Any additional above-and-beyond work which includes other aspects of the project, such as user auth


  1. No testing / TDD OR significant portions of untested code
  2. Testing, but is not robust to cover expected functionality OR has failing tests
  3. Robust testing to cover happy path functionality
  4. Tests include sad path coverage

Code Quality

  1. Completes less than 3 checkboxes outlined below
  2. Completes 3-4 checkboxes outlined below
  3. Completes all checkboxes outlined below
  4. Completes all checkboxes outlined below and implements inheritance or polymorphism
  • API keys are not hardcoded
  • Student demonstrates understanding of MVC principles
  • Student demonstrates understanding of SRP
  • Student demonstrates understanding of encapsulation
  • Student demonstrates understanding of abstraction

Lesson Search Results

Showing top 10 results