Back to Full Curriculum
IX202Semester 46 (0-0-6)Innovation Lab

Innovation Lab III

Focuses on moving beyond the stateless HTTP request-response cycle. Students will use WebSockets and Server-Sent Events (SSE) to build a "Live Collaborative Whiteboard" (similar to Miro/Figma). They will learn the con...

01

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 1: Real-Time Protocols & Bidirectional Communication

Focuses on moving beyond the stateless HTTP request-response cycle. Students will use WebSockets and Server-Sent Events (SSE) to build a "Live Collaborative Whiteboard" (similar to Miro/Figma). They will learn the concepts of persistent TCP connections, broadcast mechanisms, socket rooms, and handling connection drops in real-time environments.

02

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 2: Graph-Based API Design (GraphQL)

Focuses on declarative data fetching and solving REST bottlenecks. Students will transition from REST to GraphQL to build a "Customizable Analytics Dashboard." They will learn to mitigate Over-fetching and Under-fetching, write Resolvers, and understand the Abstract Syntax Tree (AST) of a query, allowing the View to dictate exactly what data the Controller should return.

03

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 3: Event-Driven Architecture & Message Brokers

Focuses on decoupling backend services for scalability. Students will implement a message broker (RabbitMQ or Apache Kafka) to engineer an "Asynchronous Order Processing Pipeline." They will learn the Publisher/Subscriber pattern, event streaming, message durability, and how to prevent system failure by buffering sudden spikes in traffic through queues.

04

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 4: Microservices & API Gateways

Focuses on breaking down monolithic architectures. Students will split a backend into separate, independent services (e.g., Auth Service, Inventory Service). They will configure an API Gateway (like NGINX or Kong) to act as a reverse proxy for a "Modular E-Commerce Backend." They will learn about service discovery, request routing, and cross-origin resource sharing (CORS) across multiple domains.

05

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 5: High-Performance Binary Protocols (gRPC)

Focuses on efficient inter-service communication. Students will replace JSON payloads with Protocol Buffers (Protobuf). They will engineer a "High-Throughput Logging Service" where microservices communicate via gRPC. They will learn about payload serialization, strong typing in network contracts, and why binary transmission outperforms text-based JSON in microservice clusters.

06

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 6: Object Storage & Content Delivery Networks (CDNs)

Focuses on handling massive media assets globally. Students will integrate AWS S3 (or equivalent) to build a "Video Hosting Platform." They will implement Multipart Uploads for large files, generate Pre-signed URLs for secure direct-to-cloud uploads, and configure a CDN (CloudFront) to cache assets at edge locations, drastically reducing latency for global users.

07

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 7: Serverless Compute & Edge Functions

Focuses on dynamic execution without server management. Students will deploy code to AWS Lambda or Cloudflare Workers. They will build a "Dynamic Image Resizer" that intercepts image requests and resizes them on the fly at the Edge. They will learn the concepts of "Cold Starts," stateless execution environments, and cost-optimization in serverless architectures.

08

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 8: Distributed Search Engines

Focuses on rapid retrieval of unstructured data. Students will integrate a full-text search engine (Elasticsearch, Algolia, or Meilisearch). They will build a "Faceted Search Interface" capable of typo-tolerance and complex filtering. They will learn about inverted indexes, tokenization, and how search databases differ fundamentally from relational databases.

09

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 9: System Observability & Telemetry

Focuses on understanding system health in a distributed environment. Students will instrument their microservices using OpenTelemetry. They will build a "System Health Dashboard" integrating Prometheus (for metrics) and Grafana (for visualization). They will learn the three pillars of observability: Logs, Metrics, and Distributed Tracing (tracking a single request across multiple microservices).

10

Track A: Web Development (Distributed Systems & Cloud Architecture) · Task 10: Infrastructure as Code (IaC)

Focuses on automating cloud environments. Students will use Terraform or AWS CDK to programmatically define their entire infrastructure. They will deploy an "Automated Cloud Provisioning" script that spins up databases, VPCs, load balancers, and compute instances. They will learn the philosophy of Immutable Infrastructure, treating servers as "cattle, not pets," readying them for enterprise DevOps roles.

Top skills

C++Data StructuresComputer NetworksMachine LearningCloud ComputingDevOpsDatabasesRoboticsEmbedded SystemsBlockchain

Structure

Semester4
Credits6 (0-0-6)
CategoryInnovation Lab