Designed to simulate real-world engineering interviews with structured evaluation pipelines, role-based workflows, analytics dashboards, and scalable backend architecture.
Smart Interview Simulator (SIS) is a full-stack interview preparation platform engineered to replicate the workflow and pressure of modern technical interviews.
Unlike traditional coding platforms that only validate correctness, SIS focuses on the complete interview lifecycle — from interview scheduling and role-based access control to AI-assisted evaluation and performance analytics.
The platform is built with production-oriented architecture principles including:
- Modular service-driven backend architecture
- Deterministic interview session lifecycle management
- JWT authentication + RBAC authorization
- Real-time session orchestration
- Scalable Prisma ORM data layer
- Analytics-driven evaluation pipelines
- Clean separation of business logic and infrastructure layers
Most interview preparation platforms suffer from major limitations:
- Static question repositories
- No structured evaluation system
- Lack of interview workflow simulation
- Minimal analytics and feedback loops
- Weak scalability and architecture design
SIS solves these gaps by creating a system that behaves closer to real hiring pipelines used in engineering organizations.
Use the following credentials to explore the platform:
--> FOR ADMIN LOGIN
Email: admin@example.com
Password: Admin@123
--> FOR STUDENT LOGIN
Email: student1@test.com
Password: password1234
- Technical interview simulation environment
- Interview scheduling and session management
- AI-assisted feedback generation
- Google OAuth 2.0 Integration: Secure social login for streamlined onboarding.
- Premium Analytics Dashboard: Advanced data visualization using Recharts and Framer Motion.
- Cloud & DevOps Engineering Track: Specialized simulations for infrastructure professionals.
- Real-time coding and discussion workflows
- Structured evaluation reports
- Dynamic question bank management
- Interview orchestration and monitoring
- Student analytics and scoring insights
- Session moderation tools
- Access control and user management
- Interview report generation
- Ban / unban capability for interview access
┌──────────────────────────────┐
│ React Frontend │
│ React 19 + TypeScript + UI │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Express API Layer │
│ Authentication + Routing │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Service Layer │
│ Interview Engine + Logic │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ Prisma ORM │
│ Database Abstraction │
└──────────────┬───────────────┘
│
▼
┌──────────────────────────────┐
│ PostgreSQL DB │
└──────────────────────────────┘
The interview engine follows a deterministic state-driven workflow.
IDLE
↓
SCHEDULED
↓
ACTIVE
↓
EVALUATION
↓
FEEDBACK_DELIVERED
This architecture enables:
- Predictable session transitions
- Better observability
- Easier debugging
- Cleaner scalability patterns
- Controlled evaluation orchestration
SIS uses a modular scoring architecture to evaluate interview performance.
- Keyword coverage analysis
- Conceptual relevance scoring
- Communication clarity assessment
- Code structure evaluation
- Weighted score aggregation
- Feedback synthesis generation
Evaluation logic is isolated from controllers through dedicated service abstractions.
| Technology | Purpose |
|---|---|
| React 19 | UI rendering |
| TypeScript | Type safety |
| Vite | Build tooling |
| Tailwind CSS v4 | Styling system |
| Framer Motion | Animations |
| Recharts | Analytics visualization |
| Monaco Editor | Code editor integration |
| React Router v7 | Routing |
| Socket.IO Client | Real-time communication |
| Technology | Purpose |
|---|---|
| Node.js | Runtime environment |
| Express.js | API framework |
| TypeScript | Scalable backend development |
| Prisma ORM | Database abstraction |
| PostgreSQL | Relational database |
| JWT | Authentication |
| BullMQ | Background job queues |
| Redis | Queue + caching layer |
| Socket.IO | Real-time communication |
| Google Generative AI SDK | AI evaluation support |
- Layered clean architecture
- Service-driven backend organization
- Repository-style database interaction patterns
- Modular evaluation engine
- Secure JWT-based authentication
- Role-Based Access Control (RBAC)
- Real-time communication support
- Scalable Prisma schema design
- Queue-ready infrastructure using BullMQ + Redis
- Strong TypeScript typing across frontend and backend
Smart_Interview_Simulator/
│
├── frontend/
│ ├── src/
│ ├── components/
│ ├── pages/
│ ├── hooks/
│ └── services/
│
├── backend/
│ ├── prisma/
│ ├── src/
│ │ ├── controllers/
│ │ ├── routes/
│ │ ├── middleware/
│ │ ├── services/
│ │ ├── utils/
│ │ └── config/
│
├── docker-compose.yml
├── render.yaml
└── README.mdEnsure the following tools are installed:
- Node.js >= 18
- MySQL Server
- Redis (optional but recommended)
- npm or pnpm
cd backend
npm installCreate a .env file inside the backend directory.
Example:
DATABASE_URL="postgresql://USER:PASSWORD@localhost:5432/sis"
JWT_SECRET="your_secret"
PORT=5001npx prisma generate
npx prisma migrate devnpm run devBackend runs on:
http://localhost:5001
cd frontend
npm install
npm run devFrontend runs on:
http://localhost:5173
- JWT token authentication
- Protected route middleware
- RBAC authorization flows
- Session persistence
- Socket.IO powered communication
- Live session synchronization
- Real-time interview event handling
- BullMQ integration support
- Redis-backed task orchestration
- Scalable async processing model
- Full LLM-powered interview evaluation
- Voice-based mock interviews
- WebRTC live interview simulation
- AI interviewer personas
- Advanced analytics dashboards
- Multi-organization support
- Event-driven microservice migration
- Kubernetes deployment support
- Distributed evaluation workers
The repository already includes:
docker-compose.ymlrender.yaml
This enables easier local containerization and cloud deployment workflows.
The system architecture is intentionally designed with scalability in mind.
- Stateless API design
- Service isolation
- Queue-compatible processing
- ORM abstraction layer
- Centralized authentication flow
- Real-time infrastructure support
These design decisions make SIS suitable for future horizontal scaling and distributed workloads.
- JWT authentication
- Password hashing using bcrypt
- Protected backend middleware
- Role-based authorization
- API request validation
- Rate limiting support
Full-Stack Developer focused on:
- Backend Architecture
- System Design
- Scalable Web Infrastructure
- AI-Integrated Applications
- Production-Oriented Engineering
This project is intended for:
- Educational use
- Portfolio showcase
- System design learning
- Technical interview preparation