Anubha Kanwar · EVA 2.0
Platform product · Emversity · 2024–25

EVA 2.0 —
One platform,
two very different jobs.

EVA screened who gets in. EVA 2.0 runs everything after — a placement operating system for the admin team, and a self-serve career hub for the student. Same data model, same cycle, two interfaces that don't pretend to be the same product.

My Role
AI Product Intern (E2E)
Users
Admin team + Students
Platform
eva2.emversity.com
Cycle
Placements 2024–25
01 The problem

Placements ran on scattered Google Sheets and WhatsApp, so no one could confirm the real placement rate.

02 What I did

I designed both an admin command centre and a student career hub, shipping the management side first.

03 The outcome

The dashboard now tracks 76 enrolled students, 8 active jobs, and 3 offers in one live view.

01 · The problem

Placements were running on Google Sheets and WhatsApp.

Once EVA started screening and admitting students at scale, Emversity had a new bottleneck. There was no structured system to actually run placements — just spreadsheets, shared inboxes, and broadcast messages, each one slightly out of sync with the others.

Nobody could answer "what's our placement rate right now" without opening four different sheets and hoping they agreed with each other.
Admin side

Chaos in the back office

Student lists, company contacts, job openings, application statuses, drive schedules — all manually updated across disconnected sheets. Students got missed. No single source of truth.

Student side

No self-serve, no visibility

Students heard about companies through WhatsApp or email. They didn't know their own eligibility, couldn't track applications, and had nowhere to prep for the interview ahead.

The question wasn't "can we digitise the sheet." It was whether we could build a proper placement operating system — one interface that gives the admin team control and visibility, and an entirely different interface that gives the student agency over their own journey.


02 · My role

I owned both sides, end to end — but built them in sequence, not parallel.

I defined what each side needed, designed the full feature set for both, and worked with engineering to ship it. The management side came first — the admin team's chaos was the more acute, more upstream problem. The student side followed, once the data underneath it could be trusted.


03 · The product — management side

A command centre with eight modules, built for one job: replace the sheet.

76
Students enrolled, active cycle
8
Active job profiles live
3
Tiers — Normal / Dream / Super Dream
4
Funnel stages, tracked end to end
EVA 2.0 admin dashboard
Dashboard76 students · 8 active jobs · 3 offers · 4% placement rate [NEEDS INPUT: how far into the active cycle this snapshot was taken, and the cycle's typical total length]

The dashboard is the command centre — a live snapshot of the active cycle, quick actions for the placement team's most frequent tasks, and the recent job profiles table at a glance.

01
Students
Full directory with filters by department, program, category. CGPA and backlog data feeds eligibility logic directly — ineligible students are auto-filtered on the student side.
02
Jobs
Job profile management — company, role, tier, CTC, mode, deadline, publish status. Placement team sets eligibility criteria and publishes when ready.
03
Employer CRM
8 companies tracked with tier, industry, contact, and outreach status. "Not contacted" left visible on purpose — see decision 03 below.
04
Placement Cycles
Everything — students, jobs, drives, reports — scoped to a cycle, so historical data across graduating batches stays clean.
05
Communications
Multi-channel announcements — Email + In-App — with delivery logs per message. Replaces the WhatsApp broadcast entirely.
06
Schedule
Drive management — company, date, venue, status, slot count. List or calendar view.
07
Reports
The analytics layer — placement funnel, offers by tier, department-wise breakdown. The number that matters most to leadership lives here.
08
Policies
Per-cycle eligibility rule configuration — CGPA thresholds, backlog limits — that drives what students see on the other side of the platform.

04 · The product — student side

The same eligibility data, rebuilt as something a student actually wants to open.

Where the admin side reads like an operator's console, the student side reads like a product a placed student would open on their own — gamified progress, streaks, a resume builder, and an application tracker that removes the anxiety of "did they even see my application."

A guided, step-gated resume builder; an AI mock interview reusing EVA's original screening engine; eligibility-aware company listings; and a funnel — Applied → Shortlisted → Screening Test → HR Interview → Offer → Decision — with real offer letters attached as documents. Even the decline flow is rate-limited to 3 per student, which quietly discourages offer-hopping past companies that showed up for the drive.


05 · Key decisions

The choices that mattered more than any individual screen.

Admin first, student second — even though the student side was more fun to design.
The admin chaos was creating downstream problems for students anyway. If the placement team didn't have clean eligibility data, no amount of student-side polish would fix a broken experience underneath it. Trade-off: slower time to a visible, gamified UI
Company tiers — Normal / Dream / Super Dream — as a first-class field, not a label.
It drove student aspiration filtering and gave the placement team internal shorthand for which companies to prioritise for outreach. One field, two audiences. Trade-off: needed a tiering rubric before any job could be created
Leaving "Eligible: 0%" visible on the reports page at cycle launch, instead of hiding it.
The funnel showed 76 enrolled but 0 eligible, because eligibility criteria hadn't been configured yet. Showing the honest zero surfaced the real operational gap immediately, instead of a placement team discovering it three weeks in. Trade-off: an uncomfortable-looking dashboard on day one
Reusing EVA's AI interview engine for student mock prep, instead of building a new one.
The infrastructure already existed from the screening product. Wiring it into the student side's "Prepare" tab took a fraction of the engineering effort a bespoke tool would have. Trade-off: mock interview UX inherited EVA's original constraints

06 · Before / after

What actually changed for each side.

Before EVA 2.0After EVA 2.0
Student data in Google Sheets, manually updatedLive directory with CGPA, backlogs, offers tracked centrally
Companies emailed to a shared inbox, no CRMEmployer CRM with tier, contact, and outreach status
Students found out about drives via WhatsAppMulti-channel announcements with delivery logs
No one knew the actual placement rateReal-time funnel and department-wise breakdown
Students applied manually, status unknownSelf-serve applications, eligibility filtering, live status
No interview prep beyond what a senior batch sharedAI mock interviews calibrated to the target role

07 · What I'd do differently

Two things I'd fix if I rebuilt this cycle.

Build the eligibility engine before launching the cycle.

Showing "Eligible: 0%" was the right transparency call, but it meant the admin team had to configure eligibility criteria after students were already enrolled. I'd put an eligibility step inside the cycle-creation flow itself — you shouldn't be able to open a cycle without setting the criteria first.

Add employer outreach tracking from day one.

The Employer CRM showed "Not contacted" across all 8 companies — the gap was visible, but there was no workflow to close it. No reminders, no next-action field, no follow-up prompts. The data existed; the action layer didn't.