SQKO

university project turned into startup

January 2019 — March 2025

Highlights

Digital Student Service Center

SQKO streamlined administrative processes, enabling students to apply for services, receive updates, and access digital documents, while empowering officers to efficiently review, update and e-sign applications.

End results

The project had a significant impact on university operations. By automating and digitizing key processes, the solution was able to:

  • Process over 30,000 applications, reducing office costs by 80%
  • Generate over 2,500 digital documents without the need for manual printing
  • Make visiting the office of Student Service Center obsolete

First-hand insights

The entrepreneurial journey provided a number of critical lessons, both strategic and operational:

  • Timing is essential: going all-in during the pandemic would probably have yielded better chances of raising capital and scaling the product to market
  • Sales over development: building a mobile app or introducing cool secondary features were not justified in retrospect over focusing on sales and revenue
  • Team accelerates velocity: founding a startup demands an immense workload, making a strong team crucial for maintaining development speed and delegation
  • A single client is a death sentence: relying on one client creates an existential risk, highlighting the importance of extending the client base from the very beginning
  • Scaling and funding are vital: securing funding is key for achieving product-market fit ASAP
  • Build for yourself: the more personal the problem is, the more driven you are to achieve success

Technical evolution

The platform’s architecture evolved from a simpler client-server setup to a microservice-based system, driven by continuous technical modernization.

Transformations included:

  • Migrating from Bootstrap to custom components to MUI, from class to functional components, and upgrading to TypeScript
  • Replacing dynamic PDF generation on the front end with a dedicated microservice responsible for document generation and storage
  • Splitting a single SPA into multiple specialized applications to improve code clarity and maintainability

Throughout iterations, by retiring features like the Application Time Machine and shutting down the mobile app development, I learned to not overcomplicate the product and to focus on key features.

History

University project

In January 2019, after transferring to Karaganda University of Kazpotrebsoyuz, I was asked to develop a website for the university’s Student Service Center (SSC). The goal was to expand on their recently launched live queueing system by allowing students to apply for services online. Although I was working on a personal project at the time, I prioritized this initiative, seeing it as a unique opportunity to observe the effects of my work on the daily operations at the university.

While juggling my studies, I built a functional prototype in 40 days. The first version of the website launched 40 days later becoming my first project with active users.

v1

Startup transition

The week of the initial launch, I formalized the arrangement by registering an LLP and successfully negotiating the first contract directly with the university's rector. The revenue from this contract was sufficient to sustain the project's ongoing development.

For years, I treated the project as a side venture, using it as a sandbox to continuously learn new technologies, refactor its architecture, and add new features. I even worked on it full-time between jobs. However, I focused solely on the product while heavily neglecting the revenue component.

Ultimately, to validate the market and raise the product's pricing, I decided to leave the job and try turning the project into a startup.

Failure

At times, I brought on a co-founder and an apprentice developer with the goal of shifting my focus to business development. Despite these efforts, I remained heavily involved in the technical day-to-day operations.

Still, I achieved significant milestones, including:

  • Tripling the contract value in 2024
  • Partnering with third-party providers
  • Building a scalable information system

However, the intense demands of the business and the inability to fully delegate led to an unsustainable workload. The constant 70-to-95-hour workweeks and increased stress ultimately resulted in burnout.

Career Pivot

Despite leaving a high-paying job, I'm glad I pursued entrepreneurship. The experience pushed my limits and gave me a deeper understanding of my strengths and weaknesses. The journey also taught me many skills and allowed me to positively impact the daily lives of university officers and the entire student body.

As a person who thrives on focusing on a single project, I knew I had to make a choice: either persist with the company amidst growing competition or sunset the project to focus on a career. I chose the latter, and I'm now committed to becoming a world-class expert in my areas of interest over the next decade.

Architecture

Core components

  • SQKO Student: a client for students for applying and receiving university services
  • SQKO Officer: a client for officers to review applications, e-sign documents, verify payments and manage dormitory check-ins, reservations, and leave services
  • SQKO Admin: an internal tool for managing officers and configuring services via a GUI
  • SQKO Qujat: a public-facing client for verifying the authenticity of issued digital documents
  • SQKO Server: a GraphQL backend with resolvers namespaced by a dedicated client (e.g., officerGetApplication, studentGetApplication)
  • SQKO Document Factory: a microservice responsible for generating PDF documents and uploading them to the cloud
  • SQKO Qoima: a secure S3 storage for generated and student-uploaded documents, with private and time-limited access
  • SQKO Scripts: a standalone scripts repository for utility, data seeding, and one-off scripts, with filenames matching JIRA tickets, allowed for controlled and trackable fixes

Internationalization

I found the manual process of updating translation.json files to be an incredibly draining task. To solve this, I pivoted to a database-driven internationalization (i18n) approach, using PostgreSQL to store translation labels as JSON arrays within the database models. This architectural shift simplified label management and the addition of new languages, requiring no-to-minimal server-side work. It also dramatically reduced the frontend boilerplate, with the final file for the SQKO Student app containing just over 100 lines.

Document factory

In the initial version of the app, documents were dynamically created on the frontend. I later streamlined this process by setting up a microservice that generated documents from templates and uploaded them directly to the cloud. The new architecture, built on a clear folder hierarchy of university-code/service-code/document-code/language-code/file, simplified template management and enabled easy previewing directly through Postman. As we received feedback and encountered issues with templates, we started suffixing ticket numbers to the files, which resulted in the creation of a clear versioning and bug-tracking system.

Postman Workspace

Business logic constructor

Even with a single client, the platform required managing multiple services, each with unique signers, documents, and business logic. Adding flexibility alone was insufficient; updating the elements of the application lifecycle became a scripting nightmare. I solved this by building a custom WYSIWYG business logic constructor.

Certificate of Enrollment Lifecycle

This single-panel tool allowed for the complete configuration of every element, from stages and transitions to documents, signers, labels, modals, and button styles. It proved particularly useful when we needed to deploy an incomplete service, which enabled students to apply for a dormitory prematurely.

Premature Dorm Application Deployment

Dynamic forms

Initially, form implementations were hardcoded on the frontend, requiring manual updates for every change or new file creations for a new service. Recognizing the need for flexibility and scalability, I designed and implemented a dynamic form engine decoupling form logic from the frontend.

The solution leverages a server-driven JSON schema to define form fields, validation rules, conditional logic, and default values. On the frontend, React Hook Form efficiently manages state and validation, dynamically rendering forms based on the backend configuration.

Key Benefits & Features:

  • Agility & Maintainability: forms can be updated or created via database changes, eliminating frontend code deployments
  • Consistent Validation: centralizes validation in a single backend model, eliminating redundant logic and ensuring data integrity for both the frontend and Document Factory
  • Conditional Rendering: supports dynamic field display based on user inputs or business logic
  • Consistency & Reusability: powers all critical forms (student, officer, document, and application forms) under a unified architecture

This approach significantly reduced development overhead while improving adaptability, allowing rapid iteration to meet evolving business needs.

Application Form

{
  "id": "c4374a12-156b-4d20-bd94-a22f821ed8e4",
  "name": "Справка с места учебы",
  "inputs": [
    {
      "name": "academicYear",
      "label": "Академический год",
      "type": "Select",
      "position": 0,
      "params": {
        "defaultValue": "2024-2025",
        "renderIf": null,
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": [
          {
            "value": "2023-2024",
            "label": "2023-2024",
            "disabled": true,
            "__typename": "InputOption"
          },
          {
            "value": "2024-2025",
            "label": "2024-2025",
            "disabled": false,
            "__typename": "InputOption"
          }
        ],
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": {
          "message": "Обязательное поле",
          "value": true,
          "__typename": "InputRuleBoolean"
        },
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "applicationDocumentLanguage",
      "label": "Язык справки",
      "type": "Radio",
      "position": 1,
      "params": {
        "defaultValue": "",
        "renderIf": null,
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": [
          {
            "value": "KK",
            "label": "Казахский",
            "disabled": null,
            "__typename": "InputOption"
          },
          {
            "value": "RU",
            "label": "Русский",
            "disabled": null,
            "__typename": "InputOption"
          }
        ],
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": {
          "message": "Обязательное поле",
          "value": true,
          "__typename": "InputRuleBoolean"
        },
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "includeAddressee",
      "label": "Указать место предоставления",
      "type": "Checkbox",
      "position": 2,
      "params": {
        "defaultValue": true,
        "renderIf": null,
        "renderIfPresent": "applicationDocumentLanguage",
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": null,
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "addressee_KK",
      "label": "Место предоставления (KK)",
      "type": "Text",
      "position": 3,
      "params": {
        "defaultValue": "",
        "renderIf": [
          {
            "name": "includeAddressee",
            "value": true,
            "__typename": "InputRenderIf"
          },
          {
            "name": "applicationDocumentLanguage",
            "value": "KK",
            "__typename": "InputRenderIf"
          }
        ],
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": true,
        "helperText": "Введите полное наименование организации на казахском языке",
        "placeholder": "Например: "COMPANY" ЖШС, "Банк" АҚ, "№1 жалпы білім беретін мектебі" КММ",
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": {
          "message": "Обязательное поле",
          "value": true,
          "__typename": "InputRuleBoolean"
        },
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "addressee_RU",
      "label": "Место предоставления (RU)",
      "type": "Text",
      "position": 3,
      "params": {
        "defaultValue": "",
        "renderIf": [
          {
            "name": "includeAddressee",
            "value": true,
            "__typename": "InputRenderIf"
          },
          {
            "name": "applicationDocumentLanguage",
            "value": "RU",
            "__typename": "InputRenderIf"
          }
        ],
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": true,
        "helperText": "Введите полное наименование организации на русском языке",
        "placeholder": "Например: ТОО "COMPANY", АО "Банк", КГУ "Общеобразовательная школа №1"",
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": {
          "message": "Обязательное поле",
          "value": true,
          "__typename": "InputRuleBoolean"
        },
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "includeStudyPeriod",
      "label": "Указать длительность обучения",
      "type": "Checkbox",
      "position": 4,
      "params": {
        "defaultValue": false,
        "renderIf": null,
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": null,
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "tuitionCostMention",
      "label": "Указать стоимость обучения",
      "type": "Checkbox",
      "position": 5,
      "params": {
        "defaultValue": false,
        "renderIf": null,
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": null,
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "paidByLegalEntity",
      "label": "Обучение оплачивается юридическим лицом, указанном в поле "Место предоставления (KK/RU)"",
      "type": "Checkbox",
      "position": 6,
      "params": {
        "defaultValue": false,
        "renderIf": [
          {
            "name": "academicYear",
            "value": "2024-2025",
            "__typename": "InputRenderIf"
          },
          {
            "name": "includeAddressee",
            "value": true,
            "__typename": "InputRenderIf"
          },
          {
            "name": "tuitionCostMention",
            "value": true,
            "__typename": "InputRenderIf"
          }
        ],
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": null,
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "scholarshipHolderMention",
      "label": "Указать информацию о наличии/отсутствии стипендии",
      "type": "Checkbox",
      "position": 7,
      "params": {
        "defaultValue": false,
        "renderIf": [
          {
            "name": "tuitionCostMention",
            "value": true,
            "__typename": "InputRenderIf"
          }
        ],
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": null,
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": null,
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    {
      "name": "scholarshipHolder",
      "label": "Стипендиат",
      "type": "Radio",
      "position": 8,
      "params": {
        "defaultValue": "",
        "renderIf": [
          {
            "name": "scholarshipHolderMention",
            "value": true,
            "__typename": "InputRenderIf"
          }
        ],
        "renderIfPresent": null,
        "resetOnChange": null,
        "options": [
          {
            "value": "true",
            "label": "Да",
            "disabled": null,
            "__typename": "InputOption"
          },
          {
            "value": "false",
            "label": "Нет",
            "disabled": null,
            "__typename": "InputOption"
          }
        ],
        "minDate": null,
        "maxDate": null,
        "autoFocus": null,
        "helperText": null,
        "placeholder": null,
        "__typename": "InputParams"
      },
      "rules": {
        "max": null,
        "maxLength": null,
        "min": null,
        "minLength": null,
        "pattern": null,
        "required": {
          "message": "Обязательное поле",
          "value": true,
          "__typename": "InputRuleBoolean"
        },
        "__typename": "InputRules"
      },
      "__typename": "Input"
    },
    "isActive": true,
    "__typename": "Service"
  ]
}

Student Form

{
  "id": "ac975586-775b-4436-83c2-f707df7cd6b3",
  "data": {
    "gender": "MALE",
    "university": {
      "id": "6167746f-8419-45ae-8412-bb696062fe57",
      "name": "Карагандинский университет Казпотребсоюза",
      "code": "KARUK",
      "__typename": "StudentDataUniversity"
    },
    "program": {
      "id": "f898f306-4d0d-4112-a81b-0efc260f4787",
      "name": "Докторантура",
      "degree": "DOCTORATE",
      "__typename": "StudentDataProgram"
    },
    "studyLanguage": "RU",
    "faculty": {
      "id": "d23ce32d-0d18-4c6f-8244-b433ce17f5a5",
      "name": "Факультет экономики, управления и предпринимательства",
      "shortName": "ФЭУП",
      "__typename": "StudentDataFaculty"
    },
    "speciality": {
      "id": "9d581e68-f227-40af-92ed-723f102e9357",
      "name": "Оценка",
      "__typename": "StudentDataSpeciality"
    },
    "groupName": "О-22",
    "courseYear": "2",
    "BACHELOR": null,
    "MASTER": null,
    "__typename": "StudentData"
  },
  "__typename": "Student",
  "university": {
    "id": "6167746f-8419-45ae-8412-bb696062fe57",
    "name": "Карагандинский университет Казпотребсоюза",
    "code": "KARUK",
    "studentInputs": [
      {
        "name": "gender",
        "label": "Пол",
        "type": "Radio",
        "position": 8,
        "params": {
          "defaultValue": "",
          "renderIf": null,
          "renderIfPresent": "university",
          "resetOnChange": null,
          "options": [
            {
              "value": "MALE",
              "label": "Мужской",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "FEMALE",
              "label": "Женский",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "program",
        "label": "Программа",
        "type": "Program",
        "position": 0,
        "params": {
          "defaultValue": null,
          "renderIf": [
            {
              "name": "university.code",
              "value": "KARUK",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": [
            {
              "name": "studyLanguage",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "courseYear",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "faculty",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "BACHELOR",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "MASTER",
              "value": null,
              "__typename": "InputResetOnChange"
            }
          ],
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "studyLanguage",
        "label": "Язык обучения",
        "type": "Radio",
        "position": 5,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": null,
          "options": [
            {
              "value": "KK",
              "label": "Казахский",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "RU",
              "label": "Русский",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "EN",
              "label": "Английский",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "studyLanguage",
        "label": "Язык обучения",
        "type": "Radio",
        "position": 5,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "MASTER",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": null,
          "options": [
            {
              "value": "KK",
              "label": "Казахский",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "RU",
              "label": "Русский",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "studyLanguage",
        "label": "Язык обучения",
        "type": "Radio",
        "position": 5,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "DOCTORATE",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": null,
          "options": [
            {
              "value": "RU",
              "label": "Русский",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "MASTER.specialityType",
        "label": "Направление",
        "type": "Radio",
        "position": 3,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "MASTER",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "SCIENTIFIC",
              "label": "Научно-педагогическое",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "SPECIALIZED",
              "label": "Профильное",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "BACHELOR.studyForm",
        "label": "Форма обучения",
        "type": "Radio",
        "position": 3,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "BACHELOR.studyDuration",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "courseYear",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "faculty",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            },
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "FULL_TIME",
              "label": "Очная",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "FULL_TIME_DLT",
              "label": "Очная с приминением ДОТ",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "BACHELOR.studyDuration",
        "label": "Длительность обучения",
        "type": "Radio",
        "position": 4,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": [
            {
              "name": "courseYear",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "HIGH_SCHOOL",
              "label": "Полная",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "COLLEGE",
              "label": "Сокращенная",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "HIGHER_EDUCATION",
              "label": "На базе высшего образования",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "BACHELOR.studyDuration",
        "label": "Длительность обучения",
        "type": "Radio",
        "position": 4,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME_DLT",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": null,
          "resetOnChange": [
            {
              "name": "courseYear",
              "value": "",
              "__typename": "InputResetOnChange"
            },
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "HIGHER_EDUCATION",
              "label": "На базе высшего образования",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "COLLEGE",
              "label": "Сокращенная",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyDuration",
              "value": "HIGH_SCHOOL",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "3",
              "label": "3",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "4",
              "label": "4",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyDuration",
              "value": "COLLEGE",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "3",
              "label": "3",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyDuration",
              "value": "HIGHER_EDUCATION",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME_DLT",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyDuration",
              "value": "HIGHER_EDUCATION",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyForm",
              "value": "FULL_TIME_DLT",
              "__typename": "InputRenderIf"
            },
            {
              "name": "BACHELOR.studyDuration",
              "value": "COLLEGE",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "3",
              "label": "3",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "4",
              "label": "4",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "MASTER",
              "__typename": "InputRenderIf"
            },
            {
              "name": "MASTER.specialityType",
              "value": "SCIENTIFIC",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "MASTER",
              "__typename": "InputRenderIf"
            },
            {
              "name": "MASTER.specialityType",
              "value": "SPECIALIZED",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "courseYear",
        "label": "Курс",
        "type": "Radio",
        "position": 6,
        "params": {
          "defaultValue": "",
          "renderIf": [
            {
              "name": "program.degree",
              "value": "DOCTORATE",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": [
            {
              "value": "1",
              "label": "1",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "2",
              "label": "2",
              "disabled": null,
              "__typename": "InputOption"
            },
            {
              "value": "3",
              "label": "3",
              "disabled": null,
              "__typename": "InputOption"
            }
          ],
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "faculty",
        "label": "Факультет",
        "type": "Faculty",
        "position": 1,
        "params": {
          "defaultValue": null,
          "renderIf": [
            {
              "name": "program.degree",
              "value": "BACHELOR",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "BACHELOR.studyDuration",
          "resetOnChange": [
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            }
          ],
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "faculty",
        "label": "Факультет",
        "type": "Faculty",
        "position": 1,
        "params": {
          "defaultValue": null,
          "renderIf": [
            {
              "name": "program.degree",
              "value": "MASTER",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "MASTER.specialityType",
          "resetOnChange": [
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            }
          ],
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "faculty",
        "label": "Факультет",
        "type": "Faculty",
        "position": 1,
        "params": {
          "defaultValue": null,
          "renderIf": [
            {
              "name": "program.degree",
              "value": "DOCTORATE",
              "__typename": "InputRenderIf"
            }
          ],
          "renderIfPresent": "studyLanguage",
          "resetOnChange": [
            {
              "name": "speciality",
              "value": null,
              "__typename": "InputResetOnChange"
            }
          ],
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "speciality",
        "label": "Специальность",
        "type": "Speciality",
        "position": 2,
        "params": {
          "defaultValue": null,
          "renderIf": null,
          "renderIfPresent": "faculty",
          "resetOnChange": [
            {
              "name": "groupName",
              "value": "",
              "__typename": "InputResetOnChange"
            }
          ],
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      },
      {
        "name": "groupName",
        "label": "Группа",
        "type": "Text",
        "position": 7,
        "params": {
          "defaultValue": "",
          "renderIf": null,
          "renderIfPresent": "speciality",
          "resetOnChange": null,
          "options": null,
          "minDate": null,
          "maxDate": null,
          "autoFocus": null,
          "helperText": null,
          "placeholder": null,
          "__typename": "InputParams"
        },
        "rules": {
          "max": null,
          "maxLength": null,
          "min": null,
          "minLength": null,
          "pattern": null,
          "required": {
            "message": "Обязательное поле",
            "value": true,
            "__typename": "InputRuleBoolean"
          },
          "__typename": "InputRules"
        },
        "__typename": "Input"
      }
    ],
    "__typename": "University"
  }
}

Digital documents

Upon final signature, the system automatically generated a verifiable, finalized digital document.

Misc

Stack

Backend

Action CableGraphQL YogaJavaScriptJSONBMongoDBNode.jsPostgreSQLPothosPrismaRedisRubyRuby on RailsTypeScript

Frontend

Apollo ClientBootstrapCSS3EmotionHTML5i18nextJavaScriptNext.jsPropTypesReactSCSSstyled-componentsTypeScriptVite

JS Libraries

@progress/kendo-react-excel-export@progress/kendo-react-pdf@react-pdf/renderer@xyflow/reactaxiosbcryptdate-fnsesbuildi18n-iso-countrieslodashqrcodereact-content-loaderreact-cookiereact-datepickerreact-hook-formreact-international-phonereact-mediareact-routerreact-selectreact-virtualized-auto-sizerreact-windowreact-window-infinite-loaderuse-react-router-breadcrumbsuuid

DevOps

Amazon (API Gateway, CloudFront, Cognito, EC2, RDS, Route 53, S3, SES, SNS, SQS, VPC)AWS (Amplify, Elastic Beanstalk, IAM, Lambda, Organizations, SDK)BitbucketCloudflareDockerElastic Load BalancingGitGitHubHerokuNetlifyNginxPostman

ThirdParty

Auth0NCALayerSIGEXTwilio

Protocols

GraphQLRESTSSEWebSockets

DevDependencies

@babel@commitlint/config-conventionaltsc-watch@graphql-codegeneslinthuskyjestprettier

Design

AtlaskitBootstrapFigmaMUI

Analytics

Google AnalyticsHotjarMixpanelSentry

Project Management

ConfluenceGoogle WorkspaceSmart CommitsSlackJira (@, Product Discovery, Service Management)

Skills

Product ManagementProject ManagementUser InterviewsMarket ResearchMVPNegotiotionContract ManagementAccountingTax FilingCustomer SupportSystem DesignCloud InfrastructureWeb AnalyticsSEOProduct AnalyticsHiringTraining

Programs

AWS Fundamentals: Going Cloud-Native by AWS (2019)Tech Central Asia Pre-Acceleration Program by NURIS (2019)Startup School by Y Combinator (2020)Business Unit Analysis in 15 days by Product University (2020)Terricon Valley Incubator (2022)Terricon Valley Accelerator (2024)Strong Junior Product Manager by Product Masters (2024)

Thank you for reading!