Skip to content

Instantly share code, notes, and snippets.

@heratyian
Last active December 4, 2023 21:57
Show Gist options
  • Save heratyian/61635890c55aa241905d2123b37f7c74 to your computer and use it in GitHub Desktop.
Save heratyian/61635890c55aa241905d2123b37f7c74 to your computer and use it in GitHub Desktop.
SDF - Final Project Rubric

Final Project Rubric

This is intended to be filled out by staff members of DPI Tech Apprenticeship program. If you do not feel qualified to score a section, feel free to leave it blank.

  • Date/Time
  • Trainee Name
  • Project Name
  • Reviewer Name

Technical (30 pts)

Documentation - Is the README up to date and clear?

  • Does the README.md give users a detailed description of the project?
  • May include title, description, install steps, contribution guidelines and anything else that might be helpful.
  • Should be formatted using Markdown
  • May include screenshots or diagrams if applicable

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Version Control - Is the project using version control?

  • Repository in GitHub (with name of your project)
  • Using git-flow (branching and pull requests)
  • Should have regular commits with clear, descriptive messages
  • Bonus for issue tracking connected to pull requests

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Code Hygiene - Is the code clean, readable, and maintainable?

  • Is there a significant amount of commented out code?
  • Are variables, classes, methods, etc. named appropriately? Descriptive?
  • Consistent casing? (especially variables)
  • Is the logic easy to follow?
  • Consistent indentation? (especially in view templates)
  • Could another developer easily/quickly ramp into this project? (eg has a sample_data rake task, follows standard CRUD pattern, etc.)

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Frontend - Is the frontend effective and accessible?

  • Uses semantic HTML (HTML elements clearly describe their meaning in a human- and machine-readable way)
  • Uses CSS and/or a library (eg Bootstrap)
  • Uses partial templates when appropriate (eg navbar, forms, cards, lists, etc.)
  • Bonus for mobile responsive design.
  • Bonus of accessibility (alt tags on images, aria tags, etc.)

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Backend - Is the backend functional, readable, secure and efficient?

  • Runs without major errors.
  • Is the data model clear and efficient?
  • Securely stores API keys
  • Usage of helpers such as link_to, button_to, form_with, etc.
  • Defines authorization policy using Pundit (or similar framework).
  • Bonus for using concerns, service objects, or jobs

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Deployment

  • Your app should be successfully deployed to a cloud hosting site such as Fly.io or Render.com
  • Bonus for using a custom domain name

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Business (15 pts)

Requirements - Does the app satisfy the functional requirements?

  • Should have a functional specification document with:
    • a description of the problem
    • proposed solution
    • user stories
    • possibly some sketches
  • Does the app satisfy these requirements?

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Landing Page - Does the landing page clearly articulate who the app is for and what problem it solves?

  • Should have a call to action (sign up, get started, etc.)
  • May have a video or how it works section.
  • Should have a professional/appealing look and feel

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Usefulness - Who is this for?

  • Is the target user clearly identified somewhere in the app?
  • Could you imagine someone using this?
  • Should have some evidence of market research or validation of the problem being solved.
  • Is this a compelling/exciting solution?

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Presentation (15 pts)

Slides - Is the deck clear and easily understood?

  • Deck should be easily understood by the general public
  • Deck may include screencasts
  • Text should be minimal
  • Bullet points should be concise

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Speaking - Is the narration easily understood?

  • Narration should be concise and consistent with the slides
  • Should adhere to the time limit
  • Speaking should be clear and have proper pacing

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Demo Video - Does the demo video go over the key features?

  • Should clearly explain how to use the app
  • Should jump straight into the unique parts of the app (ie don't bother including sign-up/sign-in steps)

[ ] No - (0 pts) [ ] Needs improvement - (1-4 pts) [ ] Yes - (5 pts)

Reviewer comments/suggestions:

Score:

Bonus (5 pts)

Some projects may excel in unique ways not captured by the rubric. Feel free to grant up to 5 points for exceptional creativity or problem solving.

Reviewer comments/suggestions:

Score:

Overall Score

  • Technical (/30):
  • Business (/15):
  • Presentation (/15):
  • Bonus

Overall: (/60)

Additional overall comments for the entire review may be added below:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment