Full-stack developer — React, TypeScript, FastAPI, and Python.
I build full-stack web applications and small tools that solve real problems — from a multilingual school-management portal I designed for my own classroom to a React + FastAPI + PostgreSQL gradebook I shipped end-to-end. I care about clean code, good UX, and shipping things people actually use.
Currently: building with React, TypeScript, FastAPI, and Next.js. Most recent project deployed at gradebook.alekseilopatin.com.
Open to: Full-stack and back-end Software Engineer roles — remote or relocation.
- Mini-Gradebook (live) — Full-stack React + FastAPI + PostgreSQL rebuild of the School Portal API layer, deployed end-to-end. Vite + React + TypeScript frontend on Vercel; FastAPI + SQLAlchemy backend with managed Postgres on Railway, on a custom subdomain. The stack I most want to work in. Frontend · Backend
- School Portal — Multilingual school-management app I designed to close the gap between classroom performance and parent visibility. Teacher gradebook, news feed, and student art gallery with role-based access. Built with Next.js 16, TypeScript, Supabase, and Tailwind CSS. News posted in English auto-translates into Thai and Chinese on publish. Deployed at school.alekseilopatin.com.
- alekseilopatin.com — Personal portfolio site with 20+ projects, built from scratch in vanilla HTML / CSS / JavaScript. Deployed on GitHub Pages with a custom domain.
- Bookshelf — Django web app that turns an XLSX file into a searchable, browsable book library. Built around real-world data import and a clean Django model layer.
- D&D Critical Hit Bot — Discord bot that handles extended critical-hit rules for Dungeons & Dragons sessions. Live, async Python with a small but real user base.
I'm a serial language learner — currently working through English, Russian, Chinese, Thai, French, Japanese, and German at various levels. Languages and programming scratch the same itch: pattern-matching, structure, and finding the right word for the thing you mean.
📫 Reach me at aleshkalopatin@gmail.com or via my portfolio site.