MERN Full Stack Developer Intern Assignment
Objective
Build and deploy a small AI Task Processing Platform using MERN stack, Python worker, Docker,
Kubernetes (k3s allowed), Argo CD (GitOps), and CI/CD. This assignment evaluates your ability
to build production-ready applications and deploy them properly.
What You Need to Build
User registration and login (JWT authentication).
•
Create AI tasks (title, input text, operation).
•
Run tasks asynchronously in background.
•
Track task status (pending, running, success, failed).
•
View task logs and results.
•
Deploy entire system to Kubernetes using Argo CD.
•
Required Services
Frontend: React or [Link]
•
Backend API: [Link] + Express
•
Worker Service: Python (background job processor)
•
Database: MongoDB
•
Queue: Redis
•
Task Processing Requirements
Supported operations: uppercase, lowercase, reverse string, word count.
• •
When user clicks Run: create task record with status 'pending'.
Push job to Redis queue.
•
Worker processes job and updates status to 'running'.
•
Save result and logs.
•
Final status must be success or failed.
•
Docker Requirements
Separate Dockerfile for frontend, backend, and worker.
• •
Use multi-stage builds.
Use non-root user in containers.
•
Provide docker-compose for local development.
•
Kubernetes Requirements
Use namespace for the project.
•
Deployment and Service for each component.
• •
Ingress configuration.
ConfigMaps and Secrets.
•
Resource limits and requests.
•
Liveness and Readiness probes.
•
Worker should support scaling to multiple replicas.
•
GitOps with Argo CD
Create a separate infrastructure repository.
• •
Store Kubernetes manifests in infra repository.
•
Install and configure Argo CD.
Enable auto-sync on repository changes.
• •
Provide screenshot of Argo CD dashboard.
CI/CD Requirements
Run lint checks.
•
Build Docker images.
•
Push images to Docker Hub or container registry.
• •
Update image tag in infra repository automatically.
Security Requirements
Password hashing using bcrypt.
•
JWT-based authentication.
•
Helmet middleware.
•
Rate limiting.
•
No hardcoded secrets in repository.
•
Architecture Document (Required)
Explain worker scaling strategy.
•
Explain how system handles high task volume (100k tasks/day).
• •
Database indexing strategy.
Handling Redis failure.
•
How to deploy staging and production environments.
•
Submission Requirements
Application repository.
•
Infrastructure repository.
•
Live deployed URL (if possible).
•
Argo CD screenshot.
•
Architecture document (2–4 pages).
•
README with setup instructions.
•