Специалисты
Навыки:
Более 30 лет в области разработок прикладных и системных программ и 35 лет в профессии.
Разработка приложений на C++ под Linux, кроссплатформенных приложений (windows/linux) на Qt.
Большая практика в написании ПО для Windows, DOS, Solaris с использованием С, C++, C#, Java, JavaScript.
Практика низкоуровневого программирования аппаратных средств.
Навыки работы с cmake и autotools. Опыт разработки WEB приложений с использованием AJAX-технологий.
Опыт разработки архитектурного дизайна программных проектов.
Понимание и практический опыт сопровождения программного продукта на всем жизненном цикле.
Опыт командной разработки, ревью кода, менторство.
Опыт разработки по гибким (agile) методологиям.
Ответственный подход к чистоте кода, соблюдение принципов SOLID, DRY, KISS.
Опыт полного решения (от разработки до сопровождения) поставленных задач.
Понимаю и знаю принципы администрирования серверов на базе ОС Linux.
Разбираюсь в сетях, знаю основные протоколы передачи данных, читаю rfc.
Образование:
1) Апрель 2023 - настоящее время . Университет Искусственного Интеллекта
Курсы: "Питон-разработчик" и "Data Science, нейронные сети, машинное обучение и искусственный интеллект" (полная программа)
2) Январь 1989 - Март 1989. Центральный институт повышения квалификации, Москва
Курс "Автоматизированные системы геометрического моделирования поверхностей агрегатов планера"
3) Сентябрь 1980 - Февраль 1986. Казанский авиационный институт
Специальность: "Инженер-механик авиационных двигателей"
Специализация: "САПР газотурбинных двигателей"
Компания системный интегратор
Роль: Программист разработчик Поддержка и развитие текущих проектов компании. Работа с графикой. Разработка программного обеспечения.
С++, Qt, Qml, QWidgets
Апрель 2023 – н.в. месяцев
Проекты на Qt5
Роль: Инженер-программист
Qt5, QML
Апрель 2019— по н.в. месяцев
ПО для cервисов нефтедобывающих компаний
Роль: Инженер-программист Продукты: – дизайнер и генератор отчетов; шаблоны базируются на HTML, выходной формат - PDF (рабочее описание в формате doc). – приложение для поиска, проверки, загрузки и установки на компьютер клиента новых версий корпоративных приложений. Приложения для демонстрации возможностей коммуникации центрального сервера с внешними клиентами на QML (включая версии для Android) на различных технологиях (XmlHttpRequest и WebSocket). - Набор скриптов, позволяющий пользователю автоматически создавать инсталлятор (Inno Setup) с новыми версиями корпоративных справочников и доставлять его на центральный сервер. – библиотека виджетов (оформленных как плагины QtCreator) для визуализации работы с данными "локальной" базы предприятия. – библиотека, обеспечивающая доступ к данным (чтение и запись) "локальной" версии корпоративной базы (Sqlite). Наряду с поддержкой традиционных SQL запросов, обеспечивался доступ через JSON команды. – приложение, помогающее организовать демонстрацию движения различных флюидов внутри и снаружи скважины. – программа составления процедур исследования скважин - разработка концепции и первых версий. - плагин, предназначенный для автоматизации и контроля процесса ввода геофизических данных в проект LogViz, а также формирования полевых и интерпретационных отчетов и заключений.
HTML QML Android XmlHttpRequest WebSocket QtCreator Sqlite SQL JSON
Июнь 2010 — Декабрь 2018 месяцев
ПО для телефонных компаний
Роль: Ведущий инженер-программист Продукты: - cервер выдачи рекламных сообщений и веб-консоль для управления сервером. - MMS шлюз (транслятор команд между протоколами MM1, MM4, MM7). - RIA модули (Dojo, JSON) биллинговой системы: "administration" (автоматизация работы с пользователями: создание подразделений, групп, ролей...) и "radius" (ведение учета трафика radius-серверов). Разработка: - Серверной части веб-приложения для бюджетирования ABS Planner. - USSD-сервисов для платформы Application Gateway - хранилища быстрого доступа. - класса-обработчика логов, утилит выборки данных, очистки cтатистики, отписки абонентов от рекламы. - многопоточного "клиента приема запросов"; обеспечивающего буферизацию и обслуживание синхронных и/или асинхроннных запросов к серверу выдачи банеров. (реализация на С++) - GUI "стенда" для тестирования работы связки клиент-сервер. GTK, Solaris. Адаптация скриптов DTrace Toolkit под Java 5 и библиотеки LorisSoft. Локализация и внедрение генератора отчетов BIRT. Создание и сопровождение отчетов.
Solaris 10, Windows. IDE: SunStidio 11, Eclipse
Октябрь 2006 — май 2010 месяцев
Программирование драйверов для фискальных регистраторов
Роль: Инженер - программист Регистраторы используются в программно-аппаратном комплексе обслуживания автозаправочных станций.
Сентябрь 2001 — сентябрь 2006 месяцев
Почтовая программа
Роль: Инженер - программист Внедрение почтовой программы T-Mail, разработка утилит, обеспечивающих процесс "прозрачного" обмена файлами между центральным офисом и удаленными станциями. Написание диспетчера управления файловым обменом для центрального офиса - мультипроцессовая Win32 программа. Может работать как под управлением оператора, так и в режиме самостоятельного "сервера" - включая функции автоматической очистки журнала и перезапуска при обнаружении новой версии "самой себя". Настройка модемов как для проводной, так и беспроводной телефонии (в частности, стандарт сотовой связи NMT-450). Разработка почтовой программы для приема-передачи файлов по протоколам SMTP и POP3. При этом: - Почту можно обрабатывать как "вручную", так и автоматически. Периодичность рассылок/опроса для авто режима настраивается. - Имеется возможность подключения любых внешних обработчиков как при приеме, так и перед отправкой файлов. - Отсылаемые файлы могут архивироваться (zip-формат), архив может быть защищен паролем. - Имеется возможность использования одного почтового ящика для нескольких абонентов: при этом в заголовок письма добавляется уникальный для каждого абонента ключ. - При отображении полученных HTML-файлов имеется возможность отключать закачку банеров и прочего рекламного мусора (сами ссылки при этом остаются и, при желании и соответствующей настройке, ими можно будет воспользоваться). - Имеется возможность просмотреть состояние почтового ящика, т.е. просмотреть только заголовки хранящихся там писем (без непосредственного чтения содержимого самих писем). При этом письма можно удалить не читая их содержимого, либо наоборот - считать немедленно - Настройка модемных соединений и возможность автоматического дозвона. - Ведение подробных журналов (запись времени и количества отосланных/принятых байтов и т.п.)
Win32 NMT-450 SMTP POP3 HTML
Сентябрь 2001 — сентябрь 2006 месяцев
Продукты для АЗС
Роль: Инженер - программист Разработка библиотеки интерфейсных примитивов (включая такие как ProgressBar, CheckListBox и т.д.) для DOS. Разработка программы АРМ АЗС на базе этой библиотеки. Разработка классов, обеспечивающих форматирование и вывод текстовых файлов на матричные и "PJL-type" принтеры из DOS приложений. Разработка классов, реализующих абстракции "Record", "Fields" для "собственного" формата БД, используемого в фирме. Разработка настраиваемых баз данных (состав таблиц и их полей хранится в редактируемых настроечных файлах). Разработка dll для доступа к базе данных предприятия, демонстрационных программ использования библиотеки на С++ и C#. Разработка Win32 программ, обеспечивающих отображение/редактирование данных АЗС, экспорт их в различные форматы (в частности, в FireBird), генерацию различных отчетов.
ProgressBar, CheckListBox
Сентябрь 2001 — сентябрь 2006 месяцев
Проекты по разработке технологических программ и сервера
Роль: Программист-консультант Участие в проекте по разработке программ технологически оптимального раскроя и учета движения листового металла на промышленном предприятии. Разработка COM-сервера графической визуализации результатов раскроя.
Июнь 2001 — Август 2001 месяц
Программы для специалистов медицинской клиники
Роль: Программист – Ведущий программист – Главный специалист по информационным системам Разработка Win32 программ для обеспечения работы специалистов медицинской клиники. Программы по организации учета движения клиентов, материалов и документов, расчета стоимости лечения для “всех и в отдельности”. Разработка WEB-сайта организации. Эксперименты с Java. Автоматизированное рабочее место"Диетпитание" для DOS. (Работал ежедневно почти 17 лет - до октября 2009) Программа учета профзаболеваний (Win32). Работает в РЦПП до сих пор (с 2000). Программы получения разнообразных специализированных отчетов. Для DOS и Win32. Организация, развертывание и администрирование сети (Novell Personal Netware). Написание сетевых программ (выход на БД через функции библиотеки Borland Paradox Engine, использование NWLib). Написание viewer-ов для Paradox файлов (включая версии 4.x) для DOS и Windows 3.1
Win32 DOS Borland Paradox Engine NWLib Windows
Октябрь 1992 — Май 2001 месяц
Проект по разработке программ
Роль: Программист Разработка программ для автоматизации контроля над системами технологических процессов и диагностики оборудования (как на “верхнем”, так и на “нижнем” уровнях). Программа, обеспечивающая обмен файлами между IBM PC и PDP-11 через интерфейс RS-232. Резидентная программа печати содержимого графического экрана на матричный принтер. Печатался каждый пиксель изображения, цветовое распределение обеспечивалось количеством ударов иголок печатающей головки, количество (от 0 – не печатать) мог настраивать пользователь. Программа “верхнего” уровня, обеспечивающего полный показ состояния процессора и управление его работой (вплоть до точек останова) программно-аппаратного эмулятора микропроцессора MK-51. Графическая игра “Кубики” (для EGA-режима). Русификация программ "PCAD 4.0".
CAMAC, PDP-11, IBM PC XT/AT, DOS, BGI, Assembler, C, C++
Январь 1990 — Сентябрь 1992 месяца
Организация непрерывных вычислительных процессов
Роль: Начальник смены вычислительного центра Работы по организации непрерывных вычислительных процессов на машинах серии IBM 360/370.
IBM 360/370
Июнь 1989 — Декабрь 1989 месяцев
Программы для проектирования турбин
Роль: Инженер-расчетчик Замена математической модели турбины в программном комплексе GROT (части комплекса GRAD) на “местную” и дальнейшее использование этого комплекса при проектировании турбин различных двигателей . Разработка программы определения облика турбины - за считанные минуты (в диалоговом режиме) позволяла определить основные характеристики и облик турбины.
IBM 360/370, Virtual Computer System, Fortran
Апрель 1986 — Май 1989 месяцев