Team (including me): 1 Frontend, 1 Backend, 1 QA, 1 PM
Process: Lightweight Easy-Agile (no retrospectives). Tasks tracked in Notion and Excel.
ERP / CRM system for an engineering & design company (Avalon, avln.ru) — a leading regional engineering firm delivering design and BIM-based digital modeling for large real estate developers.
Designed and developed a corporate SPA from scratch to automate key business processes of an engineering company.
The system includes project management (with BIM models), HR management, vacation planning, and document workflow within a single interface, replacing fragmented Excel files and legacy tools.
The solution became a centralized digital hub used by 400+ specialists, directly improving operational efficiency and project transparency.
Tech Stack: TypeScript, Vue 3 (Composition API), WebSocket, Storybook, Quasar Framework, Pinia, Naive UI, Tailwind CSS, Docker, ESLint
- Led the full system lifecycle from business process analysis (BIM project management, vacation planning, document flow) to frontend architecture and implementation.
- Designed and maintained a custom design system (UI Kit) with 100+ reusable components, based on Naive UI and custom Tailwind CSS components.
- Introduced and maintained Feature-Sliced Design (FSD) architecture, forming a scalable and maintainable codebase with 20+ functional modules.
- Developed HR planning and task management modules, including high-performance custom Gantt charts for visualizing vacations and project stages, optimized for interactivity and large datasets.
- Built a private headless UI npm package for a custom Gantt chart component, saving the client approximately €700/year by replacing third-party solutions.
- Automated CI/CD and developer workflow (CI pipelines, pre-commit hooks, Commitizen), eliminating critical errors in the main branch and ensuring stable deployments.
Online door construction cost calculator with commercial offer generation
https://calc.psk-ural.ru/
Developed and maintained a commercial SPA calculator embedded as an iframe widget into a Bitrix-based website.
The system calculated prices for complex constructions across 150+ product variations and automatically generated technical-commercial proposals.
Tech Stack: JavaScript, Sass, Vue 2.7, Nuxt 2, Vuetify 2, Bitrix
- Developed and supported complex calculator business logic, including product configuration, option dependencies, and dynamic pricing.
- Refactored and stabilized the application by fixing broken Vue 2 reactivity and optimizing rendering of heavy configuration forms.
- Implemented a document workflow module for generating and exporting commercial proposals in multiple formats with print-ready layouts.
- Refactored reactive calculation chains, eliminating critical pricing bugs.
- Implemented a print-ready mode for commercial proposals, removing UI elements, adapting layouts for physical printing, and controlling output via the Print API.
- Improved configurator performance by introducing lazy rendering and memoized calculations, reducing UI response time by ~40%.
Team: 1 Frontend, 1 Backend, 1 QA, 1 Tech Lead
Marketplace platform for real estate listings and services
Migrated a legacy monolithic system (PHP + Vue Blade templates) to a Nuxt 2 stack with full client-side SSR and an admin panel for managing listings related to real estate sales, searches, services, and goods.
Tech Stack:
JavaScript, Vue 2.7, Nuxt 2, PHP 7, Vuetify 2, Yandex Maps API v2, DaData, Express.js, Sequelize ORM, Docker, Docker Swarm / Docker Compose, PostgreSQL / PostGIS, Nginx
- Led full migration and refactoring from a legacy PHP + Vue Blade architecture to Nuxt 2 (Vue 2.7).
- Full-stack development: client-side features (listings, search, maps, filters), admin panel, and backend modules (REST APIs, database operations).
- Worked extensively with geospatial data: integration and customization of Yandex Maps API and implementation of complex geo-based logic.
- Developed a high-performance map module using Vue and Yandex Maps API with custom clustering logic, virtualization, and lazy tile loading, smoothly rendering 1000+ objects.
- Implemented advanced map-based filters using Yandex Maps and PostGIS, including interactive client-side selection (“lasso”) and accurate server-side querying.
- Integrated smart address suggestions (DaData) with debouncing and predictive search, significantly reducing user input errors.