👋 Стартовала третья неделя марафона, посвящённая мотивации и отношениям в команде! Со Skyeng и IVI обсудим, как дружить с коллегами на удалёнке и находить в себе силы на работу и общение. Регистрируйтесь на страничке марафона и присоединяйтесь!
uragunuragun

Иван Фролов

Front-End · Фронтенд · Разработка ПО · Ведущий (Lead)
От 200 000 ₽ · Не ищу работу
Возраст: 29 лет
Опыт работы: 6 лет и 6 месяцев
Регистрация: 09.06.2014
Последний визит: 2 месяца назад
Профессиональные навыки: Angular · JavaScript · CSS · HTML · Node.js · Git · MySQL · Ajax
Войдите, чтобы посмотреть контакты пользователя

Опыт работы

  • IT
    Санкт-Петербург · От 10 до 100 сотрудников
    Senior Frontend Developer
    Апрель 2018 — По настоящее время (2 года и 8 месяцев)

    Разработка и поддержка логистического продукта на AngularJS 1.7+ и Angular 8. Сборка релизов, планирование задач с командой, обсуждение архитектурных решений, проверка кода, привлечение новых специалистов.

    Некоторые большие задачи, которые я выполнил:

    1) Наше приложение должно быть локализовано. Сначала мы решили использовать встроенный в ANgular механизм локализации. Но проблема заключалась в том, что он не мог легко изменить локализацию без перезагрузки страницы, поэтому я решил использовать пакет ngx-translate npm. Это было сложно из-за очень не простого процесса миграции.

    2) Когда кодовая база приложения начала быстро расти, я понял, что приложение должно быть разделено на множество lazy-loading модулей, поэтому я сделал это, и этот шаг значительно увеличил скорость загрузки страницы.

    3) Я реализовал собственную стратегию предварительной загрузки модулей, при которой выборочно загружал все важные модули при запуске

    4) Следующим шагом для оптимизации стал рендеринг на стороне сервера. Это было очень важно для нас, потому что интернет был довольно медленным в регионе, где люди используют наше приложение. Это было действительно очень сложно, потому что мне пришлось провести довольно обширный рефакторинг, чтобы он работал правильно с SSR.

    5) Создал часть UI-kit. Некоторые компоненты должны были реализовать CONTROL_VALUE_ACCESSOR для правильной работы в управляемых шаблонами и реактивных формах.

    6) Начата миграция нашего приложения AngularJS на Angular 2+. Я решил использовать ng-metadata.

    7) Настройка sentry для отлова ошибок

  • Yumasoft
    Санкт-Петербург
    Middle full-stack developer
    Июнь 2014 — Апрель 2018 (3 года и 11 месяцев)

    Разработка и поддержка стека приложений для сбора пожертвований для американских компаний, таких как PBS, ASPCA. В стек входят: приложение для колл-центра, написанное на flex (Action Script3), интернет-магазин подарков за пожертвований, написанный на angularjs, Android-приложение для добровольцев, собирающих пожертвования. API приложений, написанные на Coldfusion. Самый большой вклад был сделан в написании приложения angularjs, так как его разработка началась с нуля после того, как я туда попал. В данный момент готовится переход на Angular 2, и поэтому приложение переписывается с использованием компонентов (angular 1.5)

    Также я написал с нуля приложение для планирования работы сотрудников колл-центра и управления временем. Он был написан в Angular 2. Приложение состоит из таблицы с временными интервалами. В нем сотрудник может выбрать себе рабочие смены. Одна из самых больших проблем, с которой я столкнулся, - это сопоставить выбранный диапазон с серией наиболее прибыльных смен (прибыльность смены заключалась в агрегировании 6 или 7 различных параметров). Это был первый раз, когда я создал приложение с использованием системы управления состояниями, подобной redux. Это был NGRX.