Gestori man
После неудачного переезда в деревню, я понял, что мне нужна полностью
удалённая работа, поскольку удалёнка в Спектре была скорее
комбинированным вариантом и подразумевала моё периодическое присутствие
на объектах - я получал задачи и сам решал их. Что-то дистанционно, но
большая часть требовала непосредственного выезда на место.
Так что я активно искал занятие, которое позволило бы мне иметь
постоянный заработок из дома, желательно без общения с обычными
пользователями. В идеале, чтобы задачи ставили программисты или админы
чётко понимающие какой результат они хотят получить.
Однажды меня, как специалиста по линуксу, попросили помочь знакомому
знакомого. Оказалось, что помощь требовалась программисту одной из крупнейших
торговых сетей Нижневартовска. Дело в том, что их торговая система Gestori
работала на линукс серверах, с которыми имелись определённые проблемы, но
решить их никто не мог, так как линуксоидов в те времена было действительно мало, а
проблем много.
На серверах стоял древний Slackware, в качестве файловой системы такой
же древний reiserfs с лимитами на размер файлов. Не было никакой
документации, ничего. Благо, что осуществлялось хоть какое-то резервное
копирование данных, но вот с развёртыванием копий определённо возникли
бы проблемы.
Передо мной стояла масштабная задача - привести все это дело в божеский
вид, подготовить документацию, обеспечить возможность переключения на
резервный сервер с минимальным временем простоя, организовать
прозрачную интеграцию с Active Directory, написать кучу скриптов для
загрузки, выгрузки и конвертации данных и ещё вагон различных мелочей
вроде настраиваемого ограничения числа пользовательских telnet сессий
(gestori работал через telnet).
Возможно сейчас это все покажется обыденным, но на тот момент это была
достаточно нетривиальная задача. Сколько крови попила мне интеграция с
Active Directory страшно вспомнить. Но в итоге я все успешно реализовал
Согласно рекомендациям производителя Gestori, была установлена
операционная система OpenSuse 11.1 с самбой 3.2 и likewise-open 5.2 для
интеграции с Active Directory. Больше не было ограничений на размер
файлов, управление пользователями и правами осуществлялось через Active
Directory, была написана вся требуемая документация (которая хранится у
меня по сей день), создан резервный сервер (зеркало с актуальными
данными для экстренных переключений в случае аварии). Словом из
наколенной поделки, система вышла на новый уровень, как и я сам.
Но это было лишь начало. Дело в том, что в Gestori формировались
многочисленные отчёты и документы, необходимые для деятельности
предприятия. А отчёты эти делались исключительно поставщиком системы и
конечно же не бесплатно. Руководство торговой сети очень хотело
сэкономить и мне предложили заняться созданием этих самых отчётов и
попутно выгрузкой различных данных.
Конечно я согласился. Загвоздка была лишь в том, как эти отчёты делать.
Gestori была закрытой системой, работавшей на базе СУБД Progress.
Отчёты которые делал поставщик писались на Progress 4GL (позже
переименованный в OpenEdge ABL), так что мне, помимо устройства этой
системы, пришлось изучить ещё один язык программирования.
Но даже это не было основной сложностью. Главная проблема с отчётами
заключалась в поиске данных и в точности подсчётов. Мои цифры должны
были соответствовать тем, что шли в отчётах "фирменных". Тут мне
пришлось задействовать все, от интуиции до астрологии, но лучшим
помощником в этом дела стала утилита strace и анализ текстовых строк с
заголовками таблиц.
Параллельно с дебагом пришлось подучить vba, так как данные из отчётов
подгружались в эксель, да и вообще освоить микрософтовские технологии
для работы с базами данных, с которыми, я, как линуксоид, был мало
знаком.
Все шло прекрасно, мои профессиональные навыки росли как на дрожжах и
мне казалось, что я успешно обеспечил себя удалённой работой на долгое
время и мы с семейством в конце концов решились на очередной переезд,
но к сожалению судьба распорядилась иначе.
В один прекрасный момент в компании сменилось руководство айти отдела
от которого мне прилетел новый заказ на отчёт с дедлайном в неделю, но
из-за сложности получения исходных данных я провозился 2. Если раньше
на это могли закрыть глаза, то сейчас мне просто не заплатили, хотя
работу я выполнил.
Чтож, подумал я, будем играть по новым правилам, но продолжения не
последовало. Больше я не получил ни одного заказа на отчёты. Как
выяснилось впоследствии, компанию выкупила торговая сеть Магнит,
которая использует свой стек технологий и в моих услугах больше
никто не нуждался.
Последней заявкой была просьба, по старой дружбе, перенести работающие
сервера с gestori в виртуальные машины, что я успешно выполнил,
закончив тем самым эпоху gestori и снова столкнувшись с необходимостью
поиска удалённой работы.