Содержание

Работы в хронологическом порядке

Этот список отличается от того, что приведен в резюме.
В резюме в разделе «опыт» акцент сделан на организациях, работы и проекты упоминаются мало, а навыки профильтрованы в контексте целевой должности.

Тут же акцент сделан на задачах и проектах, которые приводятся единым списком в хронологическом порядке, без фильтрации от контекста должности, на которую составлялось резюме.

2010г, ноя. "AnyKiosk" / Linux : утилита настройки режима ограниченной функциональности (kiosk-mode)

Описание проекта: утилита призванная упростить настройку различных программ в режим киоска (режим с заблокированными от изменения настройками и урезанной функциональностью).

Основная проблема которую призвана решать утилита - «школьный вандализм» - когда настройки пользовательского окружения «ломаются» (убираются панели инструментов, меняются настройки браузера и т.п.), и в итоге в данном «поломанном» окружении уже нельзя провести занятие.

Идея создания утилиты возникла в ходе обсуждения вариантов оказания помощи учителям при переходе на Linux в рамках государственной программы.
В ходе обсуждения, удалось выявить некоторые из имеющихся проблем, привлечь к ним внимание форумного сообщества и создать утилиту решающую некоторые из обозначенных задач (участие в создании кода приняло 3 человека включая меня).
В итоге программа была замечена представителем Alt-Linux, и была включена в дистрибутив «Alt Linux Школьный 5.0.2» (дата релиза - 15 дек 2010г)

Утилита представляет из себя интерфейсный каркас с пополняемым набором плагинов, каждый из которых предоставляет возможность настройки той или иной программы.
Написана на Python с использованием Qt-интерфейса (PyQT).

Моё участие в создании программы (помимо организации обсуждения и выявления проблем):

Результаты:

2010г, окт. "Система Успех" / Linux : разработка библиотеки расчета жд-тарифов для нефтегрузов под RHEL5

Описание проекта: необходимо было обеспечить перенос и запуск алгоритмов расчета тарифов на перевозку для нефтегрузов на платформу Linux. Форма реализации - внешняя динамически-подключаемая библиотека (.so); для работы библиотеки был необходим доступ к СУБД MySQL, потому дополнительно был проведен выбор компонент доступа к MySQL, лицензия которых допускает использование в закрытой разработке (выбрана MySQL++); был создан каркас библиотеки, интерфейс для работы с БД; проведена отладка алгоритмов предоставленных заказчиком.

Для выполнения работ была проведена установка RHEL5 x64 на виртуальную машину; для удобства разработки была установлена IDE QtCreator и использован стандартный для Qt инструментарий сборки проекта (.pro→qmake→.make→make), хотя в самой разрабатываемой библиотеке Qt-компоненты не использовались (только в системе тестовой загрузки и проверки библиотеки). Перед поставкой заказчику сгенерированные .make-файлы очищались от qt-зависимостей для удобства пересборки при необходимости.

2010г, сент. "ABG": предпроектное обследование

Было проведено мини-предпроектное обследование для целей формализации потребностей заказчика.
Было проведено несколько собеседования с экспертами заказчика, составлен черновик функциональных требований с описанием прецедентов использования (UseCases) требуемой им инф. системы.
На момент проведения обследования, у заказчика ведется учет с использованием электронных таблиц Excell, и есть понимание того, что требуется от инф. системы; потому можно было приступить к постановке требований к ПО.

Работы проводились как подготовительный этап к договору на предпроектное обследование; от выходных документов требовалось только сформировать грубое представление об объемах работ.

2010г, янв-ноя. АС "Оценка проекта": методика и ПО для оценки трудоемкости разработки ИС

Описание проекта: на начало проекта, в Сбербанке оценка модификации различных АБС проводилась экспертным методом, что не обеспечивало точности оценок, и не позволяло проводить планирование и реализацию работ с необходимыми допусками. В задачи проекта входило создание методики оценки трудоемкости разработки/модификации АБС, создание программной поддержки для автоматизации процесса оценки, внедрение методики в заданном подразделении.

2010г, июль-сент; QDdroid:QDRTestMaster : компонента автоматического тестирования GUI для Qt-приложений

Компонента для QDroid, предоставляющая функциональность автоматического тестирования GUI.
Компонента задумывалась как функциональный конкурирует Rational Robot и Froglogic
В настоящее время в состоянии доработки.

2010г, QD4ORM : ORM-фреймворк для Qt4

ORM-Фреймворк для Qt4.(Object-relational mapping, «Объектно-реляционное отображение») Среда решает не только вопросы сохранения/выборки объектов в/из БД, но и предоставляет графические классы и механизмы для работы с документами. документов.

Интегрируется со скриптовым фреймворком QDroid и позволяет определять как бизнес-логику работы приложения, так и расширять функциональность c помощью скриптового языка.

Проект создавался на базе имеющихся наработок и использован в работах над АС «Оценка проекта» в 2010г для нужд СберБанка.

2009г, авг-сент. "Новые технологические формы"

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

2009г, июль. ВК 1С для фискального регистратора Felix

Описание проекта: Для фискального регистратора Felix компания производитель выпускает бесплатный драйвер-библиотеку (.dll), но для 1С выпускается только платная внешняя компонента.
В рамках данной разработки было необходимо создать на базе бесплатной библиотеки оболочку-внешнюю-компоненту 1С и таким образом получить возможность работы с фискальным регистратором из 1С не оплачивая дополнительных лицензионных отчислений.

2009г, фев-авг. Описание процессов "Технологические операции станции"

Полная актуальная модель технологических операций и оформления документов в технологических процессах ЖД на момент начала проекта фактически отсутствовала. Основная проблема состоит в том, что правила перевозок и заполняемые формы определяют различные регламентирующие документы, но они часто носят характер указаний о «том что должно быть оформлено и проведено», а вопросы о том, «как и в какой последовательности» это должно происходить - практически нигде не разъясняются.

В итоге целостная картина и последовательность операций известна только отдельным экспертам. специалистам на местах известны последовательности только по их участку работ.
Задачей проекта ставилось создание общей модели грузовых технологических операций, в том числе и по оформлению документов, от момента подачи заявки на перевозку, до передачи груза получателю.

2009г. SSH+ClearCase: публикация "Удаленный доступ к репозиторию файлов"

В статье описывает вариант решения удаленного доступа к репозиторию ClearCase
с помощью открытых технологий, проводится анализ альтернативных решений и технологий
и обоснование выбора и структуры предложенного решения.

Вступление к статье:
Масштабность задач, решаемых разработчиками систем автоматиза-
ции ОАО РЖД, требует координации усилий многих людей. Для органи-
зации их совместной работы необходим специальный инструментарий.
Однако коммерчески доступные инструменты версионного контроля,
кроме неоспоримых преимуществ, имеют и ряд ограничений, которые
приходится преодолевать при выполнении проектов по автоматизации
сложных объектов.

2008г, дек. QDroid : скриптовый фреймворк

Скриптовый фреймворк был изначально создан как утилита с расширяемой функциональностью для автоматизации ряда специфических технологических операций. В определенный момент работ над КСР возникла необходимость периодической синхронизации рабочих документов с удаленным репозиторием ClearCase.
В связи с технологическими ограничениями ClearCase, подключиться к репозиторию развернутом в другом windows-домене не представлялось возможным.

Кроме того, некоторые операции были специфическими (например взаимодействие с клиентом ClearCase, работа с удаленной консолью через SSH)
и с помощью имеющихся в наличии скриптовых средств не автматизировались - было необхоимо средство позволяющее интегрировать создаваемые на С++ механизмы в скриптовую среду.
Для автоматизации ряда операций связанных с обновлением и сравнением локальных копий файлов и среза репозитория и был создан QDroid.
Выбор пал на Qt4 и имеющий в поставке скриптовый движок QtScriptEngine.

Бесплатное использовнаие Qt в 2009 г. обязывало использовать лицензию GNU GPL, что в последствии позволило развить данные утилиты в самостоятельный программный комплекс.

2008-2009г, июнь-фев. КСР("Коллективная среда разработки") адаптация RUP под нужды РЖД

Описание проекта: целью проекта ставилось создание под нужды РЖД новых регламентов разработки программного обеспечения, соответствующих современным методам и подходам в области разработки ПО; с целью обеспечения условий для повышения качества АС создаваемых для РЖД.

2008-2010 гг, База знаний МО ПКТБ ЦКИ

Описание работ: на момент 2008 г. инфромация о проделанной работе накапливалась на общих файловых ресурсах в виде файлов. Мною была развернута Wiki на базе MediaWiki и начато накопление информации в формате базы знаний. Сервис был сначала развернут на локальной машине (под WAMP-сервером), а в 2010 г. по указанию руководства, был осуществлен перенос накопленной информации и самой базы знаний на виртуальный сервер, на базе офисного сервера виртуализации.

На виртуальном сервере была развернута ОС Open Suse Linux 11.3, и сервисы MySQL, Apache, PHP, на который был установлен движок MediaWiki. Был собран и установлен поисковый сервис DataParkSearch, настроено монтирование локальных файловых smb-ресурсов в пространство каталогов web-сервера, что позволило единым образом индексировать как

В настоящее время планируется установить на поисковый сервер парсеры документов (doc, xls, pdf) для того, что бы проводилась так же и индексация содержимого файлов, а не только их имен.

2007г., Оценка трудоемкости автоматизации пункта приема металлолома

На момент составления документа, компания-заказчик была заинтересована в переводе имеющихся информационных систем
с платформы «1С:Предприятие 7.7» на «1С:Предприятие 8.0».

Для этого компании было необходимо выбрать одно предложение из нескольких поданных разными компаниями.

Т.к. я достаточно давно работал с данным заказчиком, мне были известны как их технологии,
так и требования предъявляемые к ИС, мною был подготовлен документ о переводе ключевых функций
на новую платформу, с оценкой трудоемкости и сроков проведения работ.

Данный документ обосновывает критический для функционирования компании объем работ по автоматизации.
Так же делается оценка продолжительности данных работ.

2007г, окт. OTPD : Открытые драйвера принтеров чеков

Когда в 2007г. во время работы в компании «Астор» я столкнулся с ситуацией утери исходников компоненты для печати на принтерах этикеток,
и как следствие невозможностью решить проблемы заказчика с использованием данной компоненты,
возникла идея создания опенсорсной подсистемы печати на промышленных принтерах.
Исходный код компоненты, будучи опубликованным на общедоступных серверах, не затеряется
и таким образом уменьшится вероятность невозможности решить трудности заказчиков из-за внутренних проблем в компании.

В ходе проработки принципов и подходов, возникла идея использовать язык гипер-разметки для описания задания на печать,
и в качестве первой вехи были выбраны принтеры чеков (reciept|ticket printers).

Историю развития проекта можно отследить на форуме: http://unixforum.org/index.php?showtopic=43060
Фактически система родилась в ходе сотрудничесива с компанией "IT-Center" (1C-франчайзи, гор. Сочи) в период дек,2007-июнь200.

^_^ В 2009 г. проекту было присуждено третье место на всероссийском конкурсе опенсорсных проектов
в номинации «Лучший индивидуальный проект» - http://www.linuxformat.ru/free-projects/otpd.phtml

В настоящее время работы приостановлены по причине отсутствия доступа к оборудованию.

2006г, ноя. Установка SuSe Linux 10.2 на домашнюю машину (используется по настоящее время)

28 ноября 2006 г. на домашний сервер (он же домашний компьютер) была установлена используемая в настоящее время инсталляция SuSe Linux 10.2. В настоящее время компьютер играет роль домашнего сервера, и сервера доступного из интернет (подключен реальный IP-адрес).

На протяжении уже 4 лет, система обеспечивает следующие сервисы:

Набор данных сервисов позволяет мне обеспечивать заказчикам и партнерам удобные способы взаимодействия,
позволяет мне не носить с собой десяток флеш-дисков, а иметь полный доступ к своим домашним и рабочим файлам.

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

2005-2006г, RUP+1C (методичка "Применение элементов RUP в разработке малых ИС на базе 1С:Предприятие.")

Описание: В ходе практической деятельности по реализации проектов для заказчиков компании «Лига», был выработан устойчивый процесс разработки ПО, обеспечивающий своевременное достижение целей проекта и удовлетворение нужд заказчиков.

Процесс использует основные элементы, принципы и подходы RUP в разработке программного обеспечения: итеративность, постановку требований в виде UseCase, визуальное моделирование (в основном UML). Даются рекомендации к рабочему документообороту. Процесс ориентирован на «монопольную» разработку и проекты трудоемкостью до 150-200 человеко-часов.

Методика успешно применялась автором для разработки ИС вплоть до 2008 г (в период работы с заказчиками на проектах использующих 1С:Предприятие)

2005-2006г, AHSE - web-фреймворк для построения сайтов с CMS

Описание: для обеспечения работ связанных с созданием сайтов, был разработан ORM-фреймворк на PHP4 - AHSE - «Ant Hill Site Engine». Название символизирует врутреннюю структуру системы - ядро(«королева-матка») и набор «плагинов-муравьев», выполняющих свою задачу.

Фреймворк обеспечивал контроль целостности и модификацию структуры БД в соответствии со структурой метаданных классов (полей и их типов); так же обеспечивалась навигация, отображение и редактирование объектов.

Фреймворк реализовывал идею «командной строки» - все обращения к системе велись через единственный исполняемый файл, у которого в параметрах указывалось к какому объекту мы хотим обратиться, и с какой целью, можно было так-же указать какие шаблоны отображения использовать и т.п. Страница фактически состояла из ответа объекта на данный запрос, «обрамленная шкуркой сайта». Такой подход, в частности облегчал интеграцию с другими системами - импорт/модификацию данных модно было проводить формируя запросы-команды, а экспорт - путем модификации шаблона отображения, который использовался при выводе полей объекта. Был, в частности, реализован проект интернет-витрины, которая получала список товаров из 1С.

За 2 года было создано и запущено около десятка сайтов, в том числе сайт компании.
В настоящее время не развивается, в связи с необходимостью перевода на новые версии PHP и потерей актуальности (я не работаю более в данной области).

В настоящее время, на базе идей AHSE

2005, Liga`s local Linux Server

В компании Liga был установлен и настроен локальный офисный сервер на базе SuSe Linux 9.
В задачи сервера входила организация общего доступа в интернет (NAT), и поддержка общего файлового ресурса.

Сервер успешно работал без технической поддержки или обновлений вплоть до 2008-2009гг и выбыл из строя по причине отказа оборудования. (точную хронологию событий описать не могу т.к. я не работал на тот момент в компании Liga; данные события мне стали известны после встреч «за кружкой чая» - мы продолжали поддерживать сотрудничество после окончания трудоустройства).

2005, июль. "BIK setup". Утилита,программа-визитка компании

В целях повышения популярности компании было решено разработать программу-визитку с «полезной для бухгалтера» функциональностью, применимой к 1С:Предприятие.
Объем программы должен был быть не более одной дискеты, не требовать установки.

Была разработана программа «BIK setup» которая позволяла в автоматическом режиме установить/обновить банковские классификаторы в установленные на данном рабочем месте информационные базы 1С.
При запуске, программа просматривала реестр Windows на предмет записей об установленных базах 1С, отображала список баз в меню программы, и предлагала установить в низ банковские классификаторы которые в заархивированном виде поставлялись в комплекте программы.

2005, апрель. ShrederLang1C. Обсфукатор кода 1С

Был разработан модуль обсфукации исходного текста скрипта 1С:Предприятие 7.7
Основная задача которую поддерживал данный модуль - сокрытие и защита механизмов защиты от неуплаты, встраиваемых в конфигурацию 1С - для того что бы их было затруднительно было обнаружить, а обнаружив - затруднительно извлечь, сохранив работоспособность конфигурации.

(????) 2004,июль-окт, SafeBox

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

В связи со сменой места работы и ряда обстоятельств работы было решено не продолжать.

Позже, идеи проверенные в данном проекте были частично использованы при создании фреймворка QDroid.

2004, июнь-август. "Мир Посуды". Автоматизация магазина

Автоматизация оптово розничного-магазина построенного по принципу «супермаркета» с торговым залом. Мною был разработан АРМ кассира обладающий дополнительной функциональностью - покупатель мог оформить купленные товары как через розничную покупку, так и через оптовую, если он является юридическим лицом. Кассир после набора списка товаров, оформлял по требованию покупателя тот или иной набор документов (чек, или товарнуюб накладную+счет-фактуру)

АРМ поддерживает работу с торговым оборудованием (ФР, денежный ящик, сканер штрихкодов, дисплей покупателя, пос-клавиатура). Для задач контроля пос-клавиатуры и рапознования комбинаций клавиш была создана специализированная ВК.
АРМ является обработкой, запускаемой в составе рабочего места в сетевой конфигурации «Торговля и склад»; оформленные покупки сразу-же оформлялись как обычные документы в БД.
В составе магазина было запущено 3 АРМ.

2004, янв - май. "К-16". Автоматизация ночного клуба

В клубе внедрялось 4 рабочих места на пос-терминалах для официантов (с принтерами чеков и картридерами - 2 бара, чиллаут, ресторан), 1 рабочее место кассира (ФР и картридер) совмещенное с панелью управления освещением над бильярдными столами, 2 рабочих места бек-офиса (администратор и бухгалтер), 1 кухонный принтер без выделенного рабочего места. Заказ создаваемый официантом на пос-терминале рассылался по местам приготовления (2 бара, ресторан, кухня) и отчет печатался на месте создания заказа.

Одна из особенностей данного проекта - это создание внутренней платежной системы клуба - гости внутри клуба расплачиваются с помощью магнитных карт клуба, которые получают в обмен на аванс вносимый кассе клуба. Это требовало дополнительных операций связанных с печатью «пречеков» по каждой операции - баланс «до», состав заказа с ценами, баланс «после».

В мои обязанности входило создание подсистемы печати для принтеров Штрих-400. Для данных принтеров нет виндоус-драйверов, на момент проведения работ производитель поставлял только компоненты 1С для работы с локальным принтером. Была создана специализированная конфигурация 1С:Предприятие - «сервер печати», которая автоматически запускалась при старте АРМ (дополнительно к АРМ официанта) и принимала задания на печать в доступном по сети каталоге, и с помощью файлов-флагов отчитывалась о результате каждой операции и своем состоянии. Для управления кухонным принтером сервер печати запускался на рабочем месте администратора клуба.

Для поддержки сервера печати были внесены модификации в подсистему печати и справочник направлений печати в основной конфигурации.

Требования к подсистеме печати в виде отдельного документа не описывались; многие архитектурные и технические решения согласовывались устно внутри команды.

1995-1996, "Учебные игровые программы для класса дошкольного развития"

В период с 1993 по 1995 (примерно) в составе Варданской ДМШ (Вардане - поселок под г.Сочи) работал класс дошкольного развития.
В качестве преподавателя информатики (не верите? возьмите меня на работу и посмотрите первую запись в трудовой книжке), я создавал детские игровые обучающие программы для класса дошкольного развития. Целью применения программ ставилось закрепление у детей знаний о цветах в радуге, сопоставленных 7 нотам музыкальной октавы и складам Зайцева («складовой» метод раннего обучения чтению).

Пример сценария игровой програмы: дождь смыл цвета радуги на поляну. Надо закрасить радугу в правильном порядке - красный, оранжевый, желтый …. Цвета надо найти на поляне под радугой, обмакнуть в найденный цвет волшебную кисточку и закрасить полоску на радуге.

Создавались сии творения на Quick Basic под DOS 5.0 и требовало EGA-адаптера.
К сожалению исходники утеряны, если смогу найти - обязательно предоставлю.
Но запустить вы возможно все равно не сможете по ряду технических приин. Объяснения - см в описании Клад2024 (Клад2024 - програма создаваемая мною в тот же период на той же технике).

1993-1996 гг, Клад2024: Игровая програма

Даже не знаю, насколько необходимо это приводить в списке работ, но для статистики… и в качестве отправной точки.. думаю надо.

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