Shervin Babaei
Full-Stack Developer
Vancouver, BC(604) 499-5673shervinb22@gmail.comPortfolioGitHubLinkedIn
Summary
Full-stack developer and BCIT student who follows a request past the API: Redis rate limiting, async calls to a local language model, and Express routes behind JWT auth. Top 6 of 36 teams at Hack the Break 2026.
Education
Diploma in Full-Stack Web Development
Relevant coursework: OOP, Database Systems, Agile Development, UX/UI Design, Web Application Development
Skills
- Languages
- JavaScript (ES6+), TypeScript, Python, SQL
- Front end
- React, Vite, Tailwind CSS, HTML, CSS
- Back end & data
- Node.js, Express, MongoDB (Mongoose), Redis (Upstash), SQLite
- Auth & APIs
- REST APIs, JWT, Auth0 (GitHub OAuth), WebSockets
- Tools & testing
- Git, GitHub, Vercel, Figma, pytest, Playwright
Projects
React, TypeScript, Express, MongoDB, JWT, Vercel
Role: Backend & DevOps Lead (3-person team), top committer (114 of ~245 commits)
- Built the attend, review, and host-a-workshop flows end to end, from React screens to JWT-protected Express routes.
- Reduced first-load time by preloading key routes, splitting React and UI libraries into separately cached chunks, and keeping MongoDB Atlas warm with a five-minute keepalive ping.
- Added capacity feedback that blocks full workshops, and replaced browser alerts with toast notifications.
React, TypeScript, Chakra UI, Auth0, FastAPI, OpenAI
Role: UI/UX Lead & Front-End Developer
- Built the sign-in, navigation, and profile screens from the team’s Figma designs during a 24-hour sprint.
- Removed a step from sign-in by sending users straight to GitHub through Auth0’s GitHub connection.
- Contributed to an AI tool that compares two file versions and suggests a commit message; placed top 6 of 36.
MongoDB, Express, React, Node.js, Redis (Upstash), Tailwind CSS
- Protected the API with Upstash Redis sliding-window rate limiting (50 requests per 60 seconds), returning HTTP 429 with a dedicated rate-limited screen in the UI.
- Built full CRUD for notes, with required fields enforced in both the form and the Mongoose schema.
- Gave every create, edit, and delete clear feedback with toast notifications, without a page refresh.
Python, discord.py, LM Studio, REST API, asyncio
- Connected a Discord bot to a locally hosted Qwen 3.5 9B model through LM Studio’s OpenAI-compatible API.
- Kept the bot responsive during generation by moving the blocking HTTP call into a worker thread with asyncio.to_thread().
- Reported connection, HTTP, and malformed-response failures as plain messages in the channel instead of failing silently.