← Back to work
classrate
honest takes. better classes. NYU

NYU · Academic Tool Design · 2026

The course intel NYU students actually need

A verified, student-only platform for browsing syllabi, rating professors, and getting AI-powered answers about any NYU course - before you ever enroll.

ClassRate NYU cover

Duration

12 weeks

Role

Lead UX/UI

Platform

iOS

Tested with

20 students

01 · Problem

Three real problems, zero good solutions

Before designing anything, I mapped the exact friction points NYU students face during course registration.

🔒

Syllabi are locked

NYU releases syllabi only after enrollment closes. Students commit blind - no workload, exam structure, or required texts.

"I dropped a class in week two - that's a wasted tuition credit."
- 3rd year, Stern
🌐

Rate My Professor is unverified

Anyone can rate any professor. NYU professors get reviews from people who never attended NYU, creating misleading scores.

"My professor has 2.1 on RMP but she's incredible."
- 2nd year, Gallatin
🗂️

No centralized intel

Students cobble information from Reddit, GroupMe and older students. No single trusted source of NYU-specific intel exists.

"I spent 3 hours DMing people on NYU Reddit."
- 1st year, CAS

02 · Research

Listening before designing

14 user interviews and an 89-response survey across CAS, Stern, Gallatin, Tisch and Tandon.

89%
felt underprepared for course difficulty at enrollment
76%
don't trust Rate My Professor for NYU specifically
94%
would share a syllabus if it helped other students
3.2h
average time researching a single course before enrolling

Verification matters most. In every interview, the #1 concern with existing tools was 'I don't know if the reviewer is even an NYU student.' Trust is the core UX problem.

Workload is the most-requested data. Students want weekly time commitment more than grade distribution or professor personality.

Students will contribute if it's frictionless. 94% said they'd upload a syllabus - the barrier is effort. Drag-and-drop is the threshold.

Prospective students are completely locked out. Admitted-but-not-enrolled students have zero access to Albert, Brightspace, or any official materials.

03 · Competitive Audit

The gap on a 2×2

I mapped every tool NYU students actually use against two axes that emerged from interviews: verification of reviewer and depth of course intel.

↑ High verification
↓ Anonymous
← Shallow
Deep intel →
Rate My Professor
Reddit r/NYU
Coursicle
Albert
ClassRate

The top-right quadrant - verified reviewers + deep intel - was empty. RMP has scale but no verification; Reddit has anecdote but no structure; Albert has authority but is locked behind enrollment. ClassRate's wedge is the intersection.

Rate My Professor

Gap: Anyone can rate anyone. No syllabi. Personality > workload. SEO-optimized noise.

Strength: Massive scale and brand recognition.

Reddit r/NYU

Gap: Search is broken. Threads decay. Karma rewards spice over signal.

Strength: Verified anecdote when you find it.

Coursicle

Gap: Scheduling tool first. No reviews, no syllabi. Notification-driven, not intel-driven.

Strength: Best-in-class course-section UX.

How Might We

"How might we give NYU students Albert-grade course intel before they enroll - without compromising reviewer anonymity or inviting harassment?"

From an interview

"If I knew this professor's weekly workload, I would have made a different choice. That one decision cost me a 3.4 GPA."

- Junior, CAS, double major

04 · Personas

Three students, three real needs

Interview clustering and affinity mapping produced three primary archetypes.

📚

Sofia, 19

Freshman · CAS · Undeclared

Overwhelmed by the catalog. No older students, no GroupMe. Relies on vague official descriptions.

Goal: Understand what a course actually feels like before committing

Marcus, 21

Junior · Stern · Finance

Heavy load + internship recruiting. Needs precise schedules - certain professors spike in weeks 10–14.

Goal: Optimize schedule around real workload curves
🎯

Priya, 22

Admitted · Tandon · Incoming grad

Has NYU email but no Albert access. Planning first semester before arriving on campus.

Goal: Plan a semester before classes start

05 · Information Architecture

Structure before screens

Two rounds of card sorting with 12 participants determined how students naturally group course information.

ClassRate AppNYU SSO LoginVerified Profile
🔍 Discover
Course Search
Browse Dept.
Trending
📄 Syllabi
Browse Vault
Version Diff ✦
Upload
⭐ Ratings
Prof. Profile
Write Review
Course Ratings
🤖 AI Guide
Ask Anything
Schedule DNA ✦
Course Compare
🤝 Matcher ✦
Opt-in
Match Reveal
Intro Thread

✦ New signature features

06 · Design System

Brand-led, trust-first

The ClassRate logo set the palette - every component decision flows from logo purple #7B4FE8, near-black ink, and a single gold accent reserved for ratings.

Color palette

Purple
Deep
Mist
Surface
Ink
Gold

Gold is reserved exclusively for star ratings - users learn to scan for it as a quality signal.

Components

✓ NYU Verified★ Top Rated✦ Syllabus Available
Overall rating
★★★★☆

07 · Core Screens

Moments that matter

High-fidelity mockups for the core flows - course detail, syllabus diff, and study matcher.

▶ Live prototype walkthrough

Course Detail

Verified ratings + workload at a glance

Syllabus Diff

What changed since last semester

Study Matcher

Verified peers, 7-day intro window

08 · Signature Features

Three features that go further

Beyond the core - three designs that showcase systems thinking, AI UX, and equity-aware product decisions.

🧬

Schedule DNA

A 5-question learning style quiz generates a personal profile - morning/evening, solo/collaborative, goal-driven. Every course gets a compatibility score against your DNA.

AI Personalization
📜

Syllabus Version Diff

Every semester a new syllabus is diffed against the previous version - grade weight changes, new group projects, dropped finals, color-coded by type of change.

Trust Infrastructure
🤝

Study Group Matcher

Match with 2–3 verified NYU students per course. A 7-day expiring intro thread handles the cold start, then steps back. No social feed, no ongoing DMs.

Community Without the Risk

Schedule DNA

Personalized compatibility, explained

09 · Usability Testing

Iteration with receipts

Two rounds of moderated testing (n=5 each) plus an unmoderated Maze round (n=12). Every change below shipped because a test told us to.

Issue

Upload buried in profile

v1
62% discovery
v2
100% discovery

Moved 'Upload syllabus' to the home CTA with a one-line value prop and a thank-you toast.

Issue

DNA quiz felt like a quiz

v1
51% completion
v2
89% completion

Cut 10 questions to 5, swapped radio buttons for tap-tiles, showed a live preview of the resulting DNA.

Issue

Verification was invisible

v1
3.2 / 5 trust
v2
4.6 / 5 trust

Added a persistent 'Verified by NYU email' badge under every reviewer, plus an explainer modal on first view.

Test protocol

7 core tasks per session, recorded via Lookback. Mixed-method: time-on-task + SEQ (Single Ease Question) + post-test SUS. Recruited via NYU student listservs, $20 Amazon incentive, IRB-style consent script.

10 · Edge Cases & States

The screens nobody screenshots

Loading, empty, error, permission-denied, and offline. Most case studies skip these - they're where real product work lives.

Empty

No reviews yet

Friendly nudge with a 1-tap 'Be the first reviewer' CTA. Shows expected workload from syllabus instead of a void.

Empty

Course not found

Search suggestions from the catalog + 'Request this course' fallback so we capture demand.

Pending

Verification pending

Read-only mode for first 30 min after signup. Banner explains why, with progress and an estimated time.

Error

Upload failed

Preserves the file locally, surfaces the exact reason (size/format/network), one-tap retry. Never silent.

Permission

Non-NYU email

Polite block with explanation, waitlist signup, and link to FAQs. No dead-end.

Offline

No connection

Cached last-viewed course persists. Submit queue holds reviews until reconnect, with a clear pending pill.

11 · Responsive

One system, three viewports

Designed mobile-first, then scaled. Same tokens, same components, different density.

Mobile · 375

Single column. Bottom-tab nav. Thumb-reach CTA.

Tablet · 834

Split-pane. Course list + detail in 38/62 ratio.

Desktop · 1440

Sidebar nav + 12-col grid. Keyboard shortcuts surface.

12 · Accessibility

WCAG AA, not as an afterthought

Audited every screen against WCAG 2.1 AA. The verification badge and rating gold were the two riskiest tokens - both passed after one round of adjustment.

Color contrast

All text ≥ 4.5:1. Gold rating tested on white (5.8:1) and ink (8.2:1).

Keyboard nav

Full app traversable without a touchscreen. Visible focus ring uses purple at 3px.

Screen reader

VoiceOver pass on iOS. Star ratings announce as '4 out of 5 stars' not '★★★★☆'.

Motion

Respects prefers-reduced-motion - animations swap to opacity fades, no parallax.

Tap targets

All interactive elements ≥ 44×44 pt. Spacing between adjacent targets ≥ 8 pt.

Form labels

Every input has a visible label + aria-describedby for help text and errors.

13 · Metrics

How we know it's working

Measurable success criteria defined before building - evaluated across two rounds of usability testing.

SUS
84.5

System Usability - Excellent range. Target ≥ 80.

NPS
+52

Net Promoter - Target ≥ 40.

TTI
−68%

Time to find course info vs RMP baseline (42s vs 131s).

CRR
71%

Contribution rate - syllabus upload or review written.

Task completion rates

12 participants · 7 core tasks · unmoderated via Maze

Find a course syllabus100%
Read professor reviews100%
Ask AI a course question92%
Use Schedule DNA88%
Read syllabus diff85%
Write a review83%
Join a study group match79%
SUS - Round comparison
84.5
Round 2
67.2
Round 1

+17.3 point improvement. Three design changes between rounds: syllabus upload moved to home CTA (discovery 62% → 100%), "Verified by NYU email" label added (trust 3.2 → 4.6 / 5), DNA quiz reduced from 10 to 5 questions (completion 51% → 89%).

14 · Handoff

Designed to ship

The artifacts engineering actually used - tokens, specs, and tickets.

Design tokens
--cr-purple: #7B4FE8;
--cr-deep:   #3D1FA8;
--cr-ink:    #1A1A1A;
--cr-gold:   #F2A900;
--radius-md: 8px;
--shadow-1:  0 10px 30px -10px
  rgba(123,79,232,.25);

Exported via Figma Variables → Style Dictionary → JSON/CSS. Engineering consumed the same source of truth.

Motion spec

Star fill on submit:
duration 320ms · ease cubic-bezier(0.2, 0.8, 0.2, 1) · scale 0.9 → 1.05 → 1 · gold fill staggered 40ms per star.

Page transitions: 220ms opacity + 8px Y slide. Respects reduced-motion.

Sample ticket
CR-148 · Verified badge

AC: Badge renders on every review row. Tooltip explains NYU SSO verification. Token: --cr-purple. A11y label: "Verified NYU student."

Done when: Storybook story + unit test + Lighthouse a11y ≥ 95.

Validation

"The spec was so tight we didn't open Figma during the build - we worked from tokens and the ticket. Saved us a full sprint."

- Lead iOS engineer, ClassRate

15 · Roadmap

Where ClassRate goes next

Validated features ready for the next development cycle - prioritized by student need and engineering feasibility.

1

Phase 1 - Now

  • Android parity & cross-platform design system sync
  • Syllabus OCR ingestion - auto-structured data from PDF upload
  • Course alert subscriptions - notify when a new syllabus or review is added
2

Phase 2 - Next semester

  • Grade distribution visualization - anonymized, department-level histograms
  • Professor trend lines - rating trajectory over multiple semesters
  • Export schedule to Google/Apple Calendar with course blocks
3

Phase 3 - Scale

  • Multi-campus expansion - pilot at 3 additional universities
  • Verified alumni reviews - weighted ratings from graduates
  • API for student government & academic advisors (read-only)

16 · Reflection

What I learned

This project taught me that good UX is really about designing for trust - and that trust is earned at every interaction, not stated once.

🔐

Trust is a design system

Verification badges, the NYU email gate, the post-submit confirmation - these are the mechanism by which users learn to trust the platform.

🧬

Personalization needs to be explainable

A '92% match' with no reasoning felt like a black box. One plain-language sentence below every score made comprehension jump.

📜

Diffs are a design primitive

'What changed' is often more valuable than 'what is.' The diff pattern translates beautifully from dev tools to consumer contexts.

🤝

Social without the social graph

The 7-day expiring thread is the product's most important constraint. Restraint - knowing what not to build - is harder than adding features.