10+ years building production web apps end to end, the last 4+ at SchooLinks (ed-tech SaaS used by 1,000+ school districts and 6M+ students in the US).
Owned BulkActionDrawer end to end: designed the Prisma data model and schema API, then built the shared React component, now in 2 core product modules.
Built the back end for bulk student actions (endpoints and the queries behind them) and optimized the API queries behind the Course Planner module.
Built the shared component library every product module depends on: rich text editor on draft.js, drag-and-drop uploader, virtualized data table and reusable filters, plus the Storybook library around it.
Drove the JavaScript-to-TypeScript migration and led the React 16 to 18 upgrade.
At OpenNode, built a health monitoring service for Waldur microservices in NestJS over PostgreSQL, and migrated a legacy AngularJS app to React/Redux with TypeScript.
On Upwork, built REST APIs in Node.js / Express.js over MongoDB and PostgreSQL, owning full-stack architecture on solo and small-team projects.
Led teams on citizen-facing government projects at Tbilisi City Hall (Tbilisi Taxi, Build, EV Charging now serving 300+ free chargers), owning the Angular front ends and the NestJS / Express.js APIs. Promoted from intern to senior over 4+ years.
Ran technical interviews and improved the engineering interview rubric.
Use Claude Code and LLMs daily to break down complex tasks and speed up refactors and migrations.
Remote Senior Software Engineerat
SchooLinks
Current2021
-
Now
Stack: React, Next.js, TypeScript, Redux, React Query, MUI & MUI X, Prisma, Storybook, Jest, Playwright, Claude Code
Series B college and career readiness SaaS platform used by 1,000+ school districts and 6M+ students across the US.
4+ years owning core parts of the platform end to end, from the React front end to the API and data model behind it.
- Owned BulkActionDrawer end to end: designed the Prisma data model and schema API, then built the shared React component, now in 2 core product modules
- Built the back end for bulk student actions: API endpoints and the queries behind them, so a district can act on a large set of student records in one request
- Optimized the API queries behind the Course Planner module, making it load and respond much faster
- Built the shared component library every module depends on: RichTextEditor, Uploader, DataTable (virtualized), VerticalFilterV2, BulkActionDrawer, plus the Storybook library around it
- Drove the JavaScript-to-TypeScript migration and led the React 16 to React 18 upgrade across the codebase
- Wrote unit tests in Jest and e2e tests in Playwright, plus internal style guides for Storybook, Jest and react-query
- Wrote technical proposals and module planning docs in Notion before shipping major features
- Ran technical interviews and live coding sessions, improved the engineering interview rubric
- Use Claude Code and LLMs daily to break down unclear tasks and speed up refactors, wrote the team's AI workflow guidance
Stack: React, Redux, TypeScript, NestJS, PostgreSQL, React-Bootstrap, Jest, Cypress
OpenNode builds open-source infrastructure management software and implements cloud systems. It provides private and hybrid cloud solution consultancy services together with additional tooling for integration and automation.
My work on Waldur HomePort, the open-source web-based platform for managing private & public clouds, and HPC centres:
- Built the health monitoring service for Waldur microservices in NestJS. It polled each service's status endpoint, stored the results in PostgreSQL, and exposed an API the web client used to show live system health.
- Migrated legacy AngularJS code of Waldur HomePort to React/Redux with TypeScript.
- Designed and implemented a new UI design system. Introduced new reusable components used across the application.
- Integrated React-Bootstrap components library into the application.
- Refactored and recreated the FullCalendar module for managing bookings.
- Contributed to many production-critical tasks, including global state management migration.
- Covered components and code fragments with unit tests using Jest and Cypress.
- Contributed to writing and updating the documentation.
Freelance Full-stack Web Developerat
Upwork
2019
-
2019
Stack: React, Redux, Next.js, Angular, Angular Material, RxJS, Node.js, Express.js, NestJS, PostgreSQL, MongoDB, Supabase, Firebase, AWS S3, ECharts
Part-time freelance work building React, Angular, and full-stack web applications for international clients across multiple industries.
- Engineered RESTful APIs in Node.js / Express.js, backed by MongoDB and PostgreSQL data layers, for full-stack delivery on multiple projects.
- Owned full-stack architecture on solo and small-team engagements, from the data model and API design to component patterns and deployment, building with Next.js.
- Used serverless services: Supabase and Firebase for hosted databases, AWS S3 for file storage.
- Built 2 React/Redux web applications providing different types of data analytics visualizations using ECharts. Both shipped to production and used by many of the client's customers.
- Built and maintained Angular (2+) applications using Angular Material, RxJS-based reactive state, and form-heavy admin dashboards, backed by NestJS APIs over PostgreSQL.
- Implemented authentication and authorization flows, including JWT, OAuth, and role-based access control.
- Used Next.js for server-side rendering and SEO optimization on customer-facing marketing sites.
- Designed reusable component libraries (forms, tables, modals, charts) to speed up delivery across recurring engagements.
- Wrote unit tests with Jest and end-to-end tests with Cypress to keep regression rates low on production features.
- Collaborated across distributed teams in Agile / Scrum workflows to meet tight deadlines, reviewed pull requests and validated cross-browser and cross-device compatibility.
Stack: Angular, Angular Material, RxJS, TypeScript, JavaScript, Node.js, Express.js, NestJS, MongoDB
Built and led multiple Tbilisi City Hall and Government of Georgia digital projects, delivering citizen-facing web applications used across municipalities of Georgia. Angular on the front end, NestJS and Express.js on the back end.
Owned them end to end, from the Angular front end to the NestJS and Express.js APIs and the MongoDB data layer.
Started as an intern and was promoted through junior, middle and senior levels over 4+ years. Onboarded new hires, mentored interns and juniors, and led teams on multiple production projects.
Government projects I contributed to or led:
- Tbilisi Zone Parking (parking.tbilisi.gov.ge) - public platform for Tbilisi's paid-zone parking reform, launched in 2017-2018.
- Business Parking (bp.tbilisi.gov.ge) - companion platform for the Business Parking reform, 2017-2018.
- Tbilisi Taxi (taxi.tbilisi.gov.ge) - led the developers team for the taxi reform.
- EV Charging (chargers.tbilisi.gov.ge) - built the public app for Tbilisi's EV charging, today serving 300+ free chargers across the city.
- Idea (idea.municipal.gov.ge) - built the platform where citizens submit ideas to improve their municipality.
- Build (build.municipal.gov.ge) - led the team building the platform that publishes active infrastructure projects across municipalities.
- My Tbilisi (my.tbilisi.gov.ge) - citizen portal with Smart Map (construction and infrastructure data), Fix Tbilisi (issue reporting), and online services.
- Municipal Services (ms.gov.ge) - platform for accessing municipal services online across Georgia.
Also contributed to internal software systems used across different government institutions.