bootcamper bootcamper SetUp Docs Reps Blog
bootcamper bootcamper

Final Project Requirements

From Trevor:

When it comes to the final project, I’m really just looking for:

  • Is it full-stack? (Front end browser client, back end & database in this context)
  • Does it have between 3-5 screens (and 2ish CRUDs)
  • In addition to the User table that is required for registration, need to have at least 2 more tables with full CRUD.
  • Is it a little bit original (i.e. NOT a To-do app)
  • Needs to use Spring Security - Login, Registration, protected pages.
  • Deploys to localhost as Spring Application

From Pete (more optional):

  • Scratch an itch - something you feel strongly about can make a big difference
  • Make it pretty - [remember assignment 1?] as in copy the look and feel of your favorite app or site
  • Have imaginary conversations with prospective employers ‘See how I did this feature? I’m proud of that because …’
  • Ideally one table does a lookup to another. Such as, if you have a pizza table, it's toppings can be looked up in a toppings table.

Documentation:

Before you start, you will want to describe your plans in a simple (like 1 page?) outline that covers your plans.

This is mostly to protect you from your own self - see below.

Plans We Reject

Generally we're pretty enthusiastic about supporting your flexibility in this project, so you would think we don't reject many ideas. And you would also be right.

Except we almost always reject initial plans. Why? Because 9 out of 10 final project plans are too ambitious as initially written. Trevor and I know what time budgets look like, and often bootcamp students propose a final project that would take 10 full time coders a couple years to complete.

Every once in a while someone will propose a project that is too easy - but that is rare.

What to do if your plans are too ambitious?

  • Keep cutting away desired features. (Sigh.)
  • Think about which features don't have as many dependencies.
  • Focus on features that make you look strong to a prospective employer.
  • Leave enough time to polish your app. A well polished app makes a better impression to a prospective employer, especially compared to having too many features - where some are rough.