Course grading is based only completion and sophistication of the course project.
Points are earned through building the systems required to support the class project. You will work as a team, however the points you earn as an individual are determined by the product of the points for the work x your understanding of the work. Points for the work and your understanding for the work will be judged in an in-person interview taking ~20 mins during finals week, by class staff.
There are 4 buckets you can earn points in, based on the sophistication, quality and your understanding of the work.
The buckets are:
- Mobile Client
- API
- Database
- DevOps
You can earn a number of points per bucket per project based on your accomplishments in that domain.
- +1 point for having a mobile app than makes API calls
- +1 point for a realistic worklflow that encompases all reasonable app features
- +1 point for stunning UX with animated transitions or fantastic mapping features
- +1 point for completion of BOTH driver and hailer sides of app (these can be one app with a bifurcated UX based on user-type)
- +1 point for running server application
- +1 point for database logic
- +1 point for Swagger.io (or similar) self-generating API docs
- +1 point for 3rd party API integration (e.g. sending SMS messages or Push Notifications)
- +1 point for having a database with a reasonable schema
- +1 point for 2 or more collections or tables
- +1 point for driver / user selfie images, captured on device + stored in the cloud
- +1 point for material tests and working CI
- +1 point for automated deployment by the CI tool if tests pass
13 pts - A+
9-12 pts - A
7-8 pts - A-
6 pts - B+
5 pts - B
4 pts - B-
3 pts - C
1-2 pts - D