Tech
Case Study — Test Series Platform Built for 1 Lakh Students in 8 Weeks
Case Study — Test Series Platform Built for 1 Lakh Students in 8 Weeks
Discover how we built a high-performance test series platform for 100,000 students in just 8 weeks. Learn our strategies for microservices, load balancing, and rapid scaling.
Discover how we built a high-performance test series platform for 100,000 students in just 8 weeks. Learn our strategies for microservices, load balancing, and rapid scaling.
08 min read

In the modern landscape of competitive examinations, the ability to deliver high-fidelity assessment tools at scale is not just a technological challenge—it is a race against time. This case study details the rapid development, architecture, and deployment of a robust test series platform designed to support 100,000 concurrent students, delivered from inception to go-live in a hyper-compressed eight-week window.
1. The Strategic Mandate: Velocity and Stability
When faced with a requirement to support a massive user base in less than two months, the conventional "waterfall" approach to software development is immediately disqualified. We adopted a Lean-Agile hybrid methodology, prioritizing "Must-Have" features—secure authentication, real-time timer synchronization, auto-submission logic, and elastic database scaling.
The objective was clear: create a platform that maintains sub-200ms latency during peak traffic periods while ensuring 99.99% data integrity for exam submissions.
2. Architectural Blueprint: Designing for Elasticity
To handle 1 Lakh concurrent users, the architecture had to be horizontally scalable. We moved away from monolithic structures toward a Microservices Architecture deployed on a Kubernetes cluster.
Key Technical Pillars
Edge Caching: Using a Content Delivery Network (CDN) to serve static assets (HTML/CSS/JS) close to the user, reducing origin server load by 70%.
Message Queues: Implementing Apache Kafka for asynchronous processing of answer submissions. This prevents database bottlenecks when thousands of users click "Submit" simultaneously.
Database Sharding: Instead of one massive relational database, we sharded the student response data based on
student_idranges to distribute the I/O load.WebSocket Integration: For live leaderboard updates and real-time timer synchronization, WebSockets provided a persistent, low-overhead connection compared to traditional HTTP polling.
Infrastructure Strategy
Component | Technology Choice | Rationale |
Frontend | React.js + Tailwind CSS | Fast rendering and component reusability. |
Backend | Node.js / Express | Non-blocking I/O ideal for high-concurrency connections. |
Primary Database | PostgreSQL (Sharded) | ACID compliance for critical exam data. |
Cache Layer | Redis | Sub-millisecond latency for session and timer data. |
Infrastructure | AWS EKS (Kubernetes) | Auto-scaling groups to handle sudden traffic spikes. |
3. The 8-Week Execution Roadmap
The timeline was broken down into two-week "sprints," each focusing on a critical vertical of the product.
Weeks 1–2: Foundation and Core API
The initial focus was on the User Authentication Service and the Test Meta-Data Schema. Designing the schema was critical; we had to ensure that the "Question Bank" could serve complex media (images, diagrams, LaTeX equations) without degrading performance. We utilized a schema-less storage approach for question content while keeping user progress in a relational structure.
Weeks 3–4: The Assessment Engine
This was the most complex technical hurdle. The "Assessment Engine" needed to track:
State Management: If a user’s internet fluctuated, their progress had to remain cached locally and synced once reconnected.
Concurrency Control: Preventing race conditions where a student might attempt to submit the same test twice.
Weeks 5–6: Performance Stress Testing
Using tools like k6 and Locust, we simulated the 1 Lakh student load in a staging environment. We discovered that our Redis cache was a potential bottleneck during the "Start Test" event. By introducing Consistent Hashing in our cache layer, we achieved a more uniform load distribution across our Redis cluster.
Weeks 7–8: Optimization and Hardening
The final phase was dedicated to "Fail-Safe" engineering. We implemented circuit breakers (using Resilience4j patterns) to ensure that if the leaderboard service failed, the main exam engine would remain unaffected.
4. Technical Deep-Dive: Handling Concurrent Submissions
The most significant engineering challenge is the "Thundering Herd" problem, occurring when 100,000 students submit their exams at exactly the same time.
Implementation Logic
Submission Batching: Rather than writing to the database on every single answer change, we implemented a client-side buffer. The client sends updates every 30 seconds or on explicit "Save" actions.
Backpressure Handling: By using Kafka as a buffer, if the database write-latency spikes, the Kafka consumer group can throttle the ingestion rate, ensuring the database is never overwhelmed beyond its IOPS limits.
Performance Metric | Target | Achieved |
API Response Time (P99) | < 250ms | 185ms |
Concurrent Connections | 100,000 | 115,000 |
Database Write Throughput | 5,000 req/sec | 6,800 req/sec |
Deployment Downtime | Zero | Zero (Blue-Green Deployment) |
5. Security and Data Integrity
When dealing with competitive exams, security is paramount. We implemented End-to-End Encryption (E2EE) for the question delivery pipeline to prevent "Question Leakage." Furthermore, we utilized Browser Fingerprinting to detect and block automated bots or multiple login attempts from the same machine, ensuring a level playing field for all 1 lakh students.
The "Auto-Save" Reliability
To ensure no student loses progress, we used a three-tier sync strategy:
LocalStorage: Immediate backup on the user's browser.
Websocket Sync: Real-time stream to the server.
Periodic Polling: An "Emergency Backup" HTTP call every 60 seconds to ensure the server remains in sync even if WebSockets drop.
6. Reflections on Rapid Development
Building for scale in 8 weeks requires a "Feature-First" mindset coupled with extreme discipline in technical debt management. By keeping the core engine lightweight and isolating the reporting and analytics services, we were able to scale the exam-taking portion independently of the heavy-duty data analysis dashboard.
The success of this project serves as a template for future high-concurrency educational platforms: start with a solid, distributed architecture, automate the testing process, and use asynchronous communication channels to decouple heavy writes from user-facing read operations.
Final Technical Takeaways
Observability is non-negotiable: Without distributed tracing (like Jaeger or OpenTelemetry), diagnosing bottlenecks in a microservices environment is impossible.
Infrastructure as Code (IaC): Using Terraform allowed us to spin up identical production and staging environments in minutes, which was crucial for iterative testing.
Graceful Degradation: Designing for "partial failure" (e.g., showing the leaderboard as "Coming Soon" if the service goes down) keeps the user experience intact even when non-critical components fail.
This project proved that when engineering velocity meets a well-architected distributed system, massive scale can be achieved with reliability, providing a seamless experience for 1,00,000 students exactly when they need it most.
In the modern landscape of competitive examinations, the ability to deliver high-fidelity assessment tools at scale is not just a technological challenge—it is a race against time. This case study details the rapid development, architecture, and deployment of a robust test series platform designed to support 100,000 concurrent students, delivered from inception to go-live in a hyper-compressed eight-week window.
1. The Strategic Mandate: Velocity and Stability
When faced with a requirement to support a massive user base in less than two months, the conventional "waterfall" approach to software development is immediately disqualified. We adopted a Lean-Agile hybrid methodology, prioritizing "Must-Have" features—secure authentication, real-time timer synchronization, auto-submission logic, and elastic database scaling.
The objective was clear: create a platform that maintains sub-200ms latency during peak traffic periods while ensuring 99.99% data integrity for exam submissions.
2. Architectural Blueprint: Designing for Elasticity
To handle 1 Lakh concurrent users, the architecture had to be horizontally scalable. We moved away from monolithic structures toward a Microservices Architecture deployed on a Kubernetes cluster.
Key Technical Pillars
Edge Caching: Using a Content Delivery Network (CDN) to serve static assets (HTML/CSS/JS) close to the user, reducing origin server load by 70%.
Message Queues: Implementing Apache Kafka for asynchronous processing of answer submissions. This prevents database bottlenecks when thousands of users click "Submit" simultaneously.
Database Sharding: Instead of one massive relational database, we sharded the student response data based on
student_idranges to distribute the I/O load.WebSocket Integration: For live leaderboard updates and real-time timer synchronization, WebSockets provided a persistent, low-overhead connection compared to traditional HTTP polling.
Infrastructure Strategy
Component | Technology Choice | Rationale |
Frontend | React.js + Tailwind CSS | Fast rendering and component reusability. |
Backend | Node.js / Express | Non-blocking I/O ideal for high-concurrency connections. |
Primary Database | PostgreSQL (Sharded) | ACID compliance for critical exam data. |
Cache Layer | Redis | Sub-millisecond latency for session and timer data. |
Infrastructure | AWS EKS (Kubernetes) | Auto-scaling groups to handle sudden traffic spikes. |
3. The 8-Week Execution Roadmap
The timeline was broken down into two-week "sprints," each focusing on a critical vertical of the product.
Weeks 1–2: Foundation and Core API
The initial focus was on the User Authentication Service and the Test Meta-Data Schema. Designing the schema was critical; we had to ensure that the "Question Bank" could serve complex media (images, diagrams, LaTeX equations) without degrading performance. We utilized a schema-less storage approach for question content while keeping user progress in a relational structure.
Weeks 3–4: The Assessment Engine
This was the most complex technical hurdle. The "Assessment Engine" needed to track:
State Management: If a user’s internet fluctuated, their progress had to remain cached locally and synced once reconnected.
Concurrency Control: Preventing race conditions where a student might attempt to submit the same test twice.
Weeks 5–6: Performance Stress Testing
Using tools like k6 and Locust, we simulated the 1 Lakh student load in a staging environment. We discovered that our Redis cache was a potential bottleneck during the "Start Test" event. By introducing Consistent Hashing in our cache layer, we achieved a more uniform load distribution across our Redis cluster.
Weeks 7–8: Optimization and Hardening
The final phase was dedicated to "Fail-Safe" engineering. We implemented circuit breakers (using Resilience4j patterns) to ensure that if the leaderboard service failed, the main exam engine would remain unaffected.
4. Technical Deep-Dive: Handling Concurrent Submissions
The most significant engineering challenge is the "Thundering Herd" problem, occurring when 100,000 students submit their exams at exactly the same time.
Implementation Logic
Submission Batching: Rather than writing to the database on every single answer change, we implemented a client-side buffer. The client sends updates every 30 seconds or on explicit "Save" actions.
Backpressure Handling: By using Kafka as a buffer, if the database write-latency spikes, the Kafka consumer group can throttle the ingestion rate, ensuring the database is never overwhelmed beyond its IOPS limits.
Performance Metric | Target | Achieved |
API Response Time (P99) | < 250ms | 185ms |
Concurrent Connections | 100,000 | 115,000 |
Database Write Throughput | 5,000 req/sec | 6,800 req/sec |
Deployment Downtime | Zero | Zero (Blue-Green Deployment) |
5. Security and Data Integrity
When dealing with competitive exams, security is paramount. We implemented End-to-End Encryption (E2EE) for the question delivery pipeline to prevent "Question Leakage." Furthermore, we utilized Browser Fingerprinting to detect and block automated bots or multiple login attempts from the same machine, ensuring a level playing field for all 1 lakh students.
The "Auto-Save" Reliability
To ensure no student loses progress, we used a three-tier sync strategy:
LocalStorage: Immediate backup on the user's browser.
Websocket Sync: Real-time stream to the server.
Periodic Polling: An "Emergency Backup" HTTP call every 60 seconds to ensure the server remains in sync even if WebSockets drop.
6. Reflections on Rapid Development
Building for scale in 8 weeks requires a "Feature-First" mindset coupled with extreme discipline in technical debt management. By keeping the core engine lightweight and isolating the reporting and analytics services, we were able to scale the exam-taking portion independently of the heavy-duty data analysis dashboard.
The success of this project serves as a template for future high-concurrency educational platforms: start with a solid, distributed architecture, automate the testing process, and use asynchronous communication channels to decouple heavy writes from user-facing read operations.
Final Technical Takeaways
Observability is non-negotiable: Without distributed tracing (like Jaeger or OpenTelemetry), diagnosing bottlenecks in a microservices environment is impossible.
Infrastructure as Code (IaC): Using Terraform allowed us to spin up identical production and staging environments in minutes, which was crucial for iterative testing.
Graceful Degradation: Designing for "partial failure" (e.g., showing the leaderboard as "Coming Soon" if the service goes down) keeps the user experience intact even when non-critical components fail.
This project proved that when engineering velocity meets a well-architected distributed system, massive scale can be achieved with reliability, providing a seamless experience for 1,00,000 students exactly when they need it most.
FAQs
How did you manage to scale for 1 lakh students in only 8 weeks?
The key was a "Minimum Viable Scalability" approach. We prioritized critical path features and built a modular microservices architecture. By utilizing managed cloud services for auto-scaling and decoupling heavy processing tasks from user-facing services, we saved development time while ensuring the system could handle peak load from day one.
What was the biggest technical bottleneck you faced?
Database concurrency was our primary hurdle. When thousands of students submitted answers simultaneously, traditional locking mechanisms slowed down the system. We solved this by implementing an event-driven architecture using message queues, which allowed us to ingest submissions asynchronously without overloading the primary database.
Why did you choose microservices over a monolithic architecture?
A monolithic system would have been difficult to scale granularly. With microservices, we could isolate the "Testing Engine" from the "User Profile" and "Analytics" modules. This meant if one module reached its limit, we could scale just that specific service without needing to replicate the entire application.
How did you ensure 99.9% uptime during peak exam times?
We implemented multi-region load balancing and circuit-breaking patterns. If one instance or service experienced latency, the circuit breaker would trip, rerouting traffic to healthy nodes instantly. We also used extensive caching to serve static assets and frequently accessed data directly from memory.
What testing tools did you use to simulate 1 lakh users?
We utilized distributed load-testing tools that allowed us to spin up virtual users across different geographic locations. This helped us identify hardware limitations and optimize database query performance under stress, ensuring the platform didn't crash during actual high-traffic windows.
How do you handle real-time leaderboard updates for such a large crowd?
Calculating ranks for 1 lakh students in real-time is resource-intensive. We used an in-memory data store (Redis) to maintain sorted sets. This allowed us to provide near-instant ranking updates without hitting the main database, keeping the student experience fast and fluid.
Is this architecture portable for other large-scale educational platforms?
Absolutely. The architecture is highly agnostic to the specific subject matter. By using containerization (like Docker and Kubernetes), we’ve made the platform repeatable and deployable in any cloud environment, making it a robust template for any large-scale ed-tech assessment requirement.
insights
Explore more on AI, Design and Growth

SEO
Google AI & Local SEO: Rank in Both (2026 Guide)
Learn how to optimize content for Google AI search and local SEO simultaneously to rank in AI Overviews, maps, and organic search results.

SEO
Semantic Content Clusters for SEO & AEO (Templates)
Learn how to build semantic content clusters for SEO and AEO. Includes practical templates, internal linking structures, and examples for ranking in AI search.

SEO
How Google AI Search Works: RankBrain to Gemini (2026)
Discover how Google’s AI search evolved from RankBrain to Gemini and what it means for SEO, AI search results, and ranking strategies in 2026.

SEO
Google AI & Local SEO: Rank in Both (2026 Guide)
Learn how to optimize content for Google AI search and local SEO simultaneously to rank in AI Overviews, maps, and organic search results.

SEO
Semantic Content Clusters for SEO & AEO (Templates)
Learn how to build semantic content clusters for SEO and AEO. Includes practical templates, internal linking structures, and examples for ranking in AI search.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
