iZumator

iZumator

О проекте

  • The client:

    iZum — a chain of mobile phone stores from Omsk

  • Start of the project:

    6 August 2020

  • About

    iZumator is a platform for online education where users can create and pass courses.

  • Killer feature

    Any student can become a mentor and teach others. iZum focuses on the result that students get, not on the process of studying — skills that students learn from courses can be put into practice right away.

Business goals

The client developed a thorough product strategy.
The platform is planned to go through 3 stages of development:

  • Creating the internal
    platform for education
    of the company’s employees.

  • Entering the market of educational
    services and offering the platform
    to other companies.

  • Developing a P2P platform,
    open for all users and courses.

First iteration

After the first development iteration, the platform can be used only by iZum’s employees, it works as a tool for onboarding newcomers. The client’s next step is to break into the market of online education and compete with other platforms — Coursera, Skillbox, and Udemy.

Hierarchy of roles
and cycled functionality

Users on the platform have 5 roles — student, mentor, assistant, admin, and supervisor. Our major challenge was the hierarchy of roles: admin has all rights, mentor has rights of students, and so on — every bigger role includes the rights of the smaller ones. Users can switch between the roles in account settings.

Hierarchy of roles and cycled functionality
  • Admin

    Sees all content
    on the pages
    but can’t edit

  • Supervisor

    Adds users, creates groups,
    edits information on the pages

  • Assistant

    Checks homework

  • Mentor

    Creates courses, adds
    events to students’
    calendars

  • Student

    Studies courses,
    does homework

hierarchy example
UI/UX design UI/UX design UI/UX design

UI/UX design

We dedicated a lot of time to wireframing: because of the role hierarchy, the platform’s functionality was supposed to encircle. To come up with the future product’s style, we created a mood board: gathered colors, fonts, references. After that, started working on the concept.

Julia Vakulenko

The client wanted us to get inspiration from Airbnb design. We chose a warm color scheme — in order to resonate with the reference but not duplicate it. The accent color is orange, elements are illuminated when active.

Julia Vakulenko,
leading UI/UX designer

Tech stack Tech stack

Tech stack

We used Nest.js for the backend, Redux and Next.js for the frontend. Next is good for services that need search engine indexing. Although at the first stage the platform was closed from the general public and didn’t need indexing, we knew that the project would soon become public — and chose instruments considering the client’s plans.

Konstantin Zemlyakov

Initially, we chose the REST architectural style, because the relationships between entities were simple. But because of the role hierarchy, the relationships become more complex — there were too many requests, we needed to create a separate endpoint for almost every page. With such a role system it would be better to use GraphQL since it allows you to get all data the app needs with a single request.

Konstantin Zemlyakov,
full-stack developer

Features

  • User communication

    The platform has a built-in forum and a support chat for close
    communication between users. When a student uploads
    homework, the app automatically creates a forum thread:
    users can ask questions, discuss problems, and rate tasks.

  • Calendar of courses and events

    Every user has a calendar — mentors can add events
    for course participants. For example, set a deadline
    for completing homework. Students can monitor
    their events in the iZumator calendar or import
    the data to Google Calendar.

    Calendar of courses and events
    Calendar of courses and events
Elena Farberova

The client wanted us to add the ability for admin to look through other users’ calendars and see their events. It would be difficult to implement such a feature and it wasn’t in the initial project scope, so we didn’t include it in the MVP.

Elena Farberova,
project manager

Challenges

  • Vast project — many roles
    and relationships between users
  • Tight deadline — the client wanted us to finish
    the project by the end of year 2020
  • COVID-19 — in the middle of the project
    development team with the manager caught covid

Results

  • Developed the first version of the platform — the client
    is now testing it within the company

  • Created a product that can be easily scaled without refactoring

  • Now we are fixing small post-release bugs, collecting
    feedback, and discussing the next iteration