Я проработал в этой компании около полугода, но проекты, которые я выполнил были достаточно сложные и интересные. У компании были очень крупные заказчики, сообщаю только о тех с которыми я работал:

  • Эльдорадо/М-Видео
  • Билайн
  • Альфа-Банк (Казахстан)
    были еше небольшие проекты у довольно серьезных заказчиков, но эти три наиболее интересны. Я не могу дать ссылки на сайты или страницы, все проекты были внутренними, в подробном описании я не привожу скриншотов и развернутой информации в силу понятных причин.
    Компания работала только с технологией WebSoft, это система управления персоналом, более подробно о ней можно узнать здесь.
    В своих проектах мне приходилось использовать API WebSoft, я делал backend и frontend на Vue, также создавал внутрениие модули системы и новые сущности. В технологию были встроены XAML и ExtJS, которыми я владею и поэтому приходилось делать сложные вещи на сервере и клиенте.

    Ответ на вопрос, почему я проработал так недолго в компании: обратите внимание на время, начало 2022 года, для крупынх заказчиков с которыми работала наша компания наступил небольшой шок и количество заказов по работе с персоналом резко сократилось. Обычно у меня в работе было не менее двух проектов, когда наступила пауза и проектов не было вообще, я сразу начал искать другую работу и нашел ее очень быстро. Кроме этого технология Websoft не очень мне нравилась в силу своей ограниченности.

    На frontend-е Websoft использует ExtJS, уже в 2016 году я работал с ExtJS 6, в 2021 в Websoft был установлен ExtJS 5, но он был достаточно функционален. Разметка для основного интерфейса была сделана на XAML, даже консоль администратора можно было запустить в браузере IE или EDGE. На backend работал JScript, он довольно убогий по возможностям и я все время пытался как-то подключить к Websoft язык C#, но не преуспел. У Websoft есть API, которое работает с чем угодно, для проекта М-Видео он использовался в связке с Vue.

    М-Видео

    Один из самых моих интересных проектов, хотя небольшой. Его можно назвать неудачным. Я сделал его полностью и он работал, но Заказчик решил изменить конфигурацию и перенести часть функций в web-сервис. Совесть моя чиста, с самого начала было обсуждение об использовании web-сервиса, как предлагал наш архитектор, но Заказчик выбрал решение с интеграцией функций в общий проект, архитектор не настоял на своем требовании и сначала я сделал версию для интеграции модуля в общий проект, что потребовало дополнитеьных усилий.

    Для сертификации и обучения персонала М-Видео на момент выполнения проекта использовала Websoft в качестве backend и собственную разработку портала на Vue. В мою задачу входило создать на backend приложение, которое бы собирало сведения о сертификации сотрудников компании и формировало бы файлы сертификатов в формате PDF. Кроме этого нужно было создать на портале страницу, на которой сотрудники могли бы посмотреть и скачать свои сертификаты, страница должна была быть адаптивной для всех устройств.
    Работа разделилась на две части.

  • Требовался шаблон для сертификата, его было решено сделать в HTML-верстке и потом экспортировать в PDF.
    Дело усложнялось тем, что шаблон содержал ряд графических элементов, таких как логотип компании, печать, подпись-факсимиле и т.д. Я принял решение, что HTML-файл сертификата должен быть самодостаточным, то есть содержать в себе все элементы, изображения должны быть вставлены в ссылки на них в виде бинарных строк.

  • Нужно было сделать страницу на frontend на VUE, которая бы отображала сертификаты сотрудника и давала возможность их скачать. До начала проекта я ничего не знал про VUE и изучил его на ходу. В нашей команде работал дизайнер и все шаблоны были в Figma. На начальном этапе оказалось, что набор компонентов для VUE ограничен и нужную разметку не получить. Мне пришлось модифицировать несколько компонентов, то есть я создал новые компоненты и добавил их в проект.

    Backend

    Для работы с сертификатами в базе данных проекта я создал дополнительные таблицы. В этих таблицах размещались шаблоны сертификатов для различных курсов, графические объекты сертификатов, сведения о серфтификатах работников.
    Для создания сертификата я написал DLL на .NET CORE (язык C#) и подключил ее к ядру Websoft на IIS. Разметка сертификатов выполнялась в HTML, графические элементы внедрялись в страницу через ссылки со строками в бинарном виде. Для настройки внешнего вида сертификатов я написал также десктопное приложение на WinForms к которому подключил dll, это позволило быстро проверять внешний вид сертификата, который выдавала dll. Для работы с PDF я использовал библиотеку iText.
    Моими коллегами по проекту были созданы модули тестирования персонала и данные сохранялись в таблицу результатов. На стороне MS SQL Server я создал JOB, который периодически запускался, просматривал таблицу на наличие новых результатов тестирования без сертификатов, собирал файлы PDF и иконки сертификатов для frontend-приложения и выкладывал их в папку проекта к которой уже в дальнейшем обращалась программа на VUE и показывала сертификаты работника.

    Frontend

    Портал обучения был написан на VUE 2.5, веб-портал из поставки WebSoft не использовался. Был создан специальный API-сервер, который обслуживал запросы со стороны VUE. Так как все окружение было создано до меня, то я использовал уже готовые решения. Для работы с сертификатами была создана страница на портале с которой я работал. Верстка была адаптивной, все шаблоны располагались в Figma, дизайнер в команде был очень креативный и мне пришлось немного улучшить визуальные компоненты, в основном это коснулось слайдера сертификатов и вывода заголовков, помню, что потребовались еще дополнительные усилия для организации скачивания файлов сертификатов в формате PDF.

    Beeline

    Этот проект был значительно проще предыдущего. Использовался веб-портал из поставки Websoft, к нему была подключена страница для работы с курсами. Данные я получал через AJAX, мне готовил их на backend-е коллега, и я к серверной части практически не прикасался.
    Был создан макет в Figma довольно изрядной сложности, с множеством мелких элементов: линий, теней, иконок и от меня требовалось полностью его повторить для PC-версии и мобильной. Была обычная верстка HTML/CSS и для работы с данными использовался формат JSON, данные я обрабатывал обычным javascript и динамически строил страницы.
    Проект заполнился именно своей трудоемкостью верстки.

    Альфа-банк (Казахстан)

    В этом проекте на стороне Заказчика был развернут полноценный портал, с клиентской и административной частью. Данные о персонале я получал от API 1C, объем был довольно болшой и на первых порах JScript не справлялся с XML-документом огромных размеров.
    В остальном Заказчик использовал стандартные возможности Websoft и в мою задачу входило делать небольшие правки на стороне frontend и backend как и для клиентской части, так и для административной. Здесь использовался XAML и ExtJS. Были небольшие проблемы с кэшированием, кэш не хотел чиститься и обновляться.
    Спокойный и линейный проект без особых проблем.

  • Добавить комментарий