Радислав Голубцов =============================================================================== ЦЕЛЬ: Получить должность Software Developer / Senior Software Developer Суммарный опыт работы в сфере ИТ - более 20 лет IT-мультилингвист =============================================================================== [ 01.07.2023 ] ====== РЕЗЮМЕ ================================================================= Вычислительные * Intel x86 (i686 / x86-64) платформы * HP PA-RISC * IBM PowerPC * Sun SPARCstation Операционные Юниксы и их производные (OpenBSD, FreeBSD, Arch Linux, Debian системы GNU/Linux, Ubuntu, Fedora, CentOS, Red Hat Enterprise Linux, Mac OS X, HP-UX, IBM AIX, Sun Solaris). Microsoft Windows Языки програм- Java, Clojure, Perl 5, Python, Bash Shell Script, JavaScript мирования (ES5-6/Node.js), C, Go, GNOME Vala/Genie, Lua, C++,Objective-C, Fortran 95, Erlang, Elixir, LFE (Lisp Flavoured Erlang) Технологии * Java SE / EE, Spring Boot, Spring Web MVC, Spring Security, Java Servlet, JavaServer Pages (JSP), JSP Standard Tag Library(JSTL), Java Portlet, Eclipse Vert.x, Play! Framework, Vaadin Framework, Apache Struts / Struts 2, JavaServer Faces (JSF), Java Database Connectivity (JDBC), JavaMail, Java Swing, Eclipse Standard Widget Toolkit (SWT), iText (Java-PDF Library), JNA (Java Native Access), SLF4J, Log4j, Syslog4j и др. * Clojure - диалект языка Lisp-1 для JVM, Clojure Standard Library, HTTP Kit (библиотека HTTP клиент-сервера для Clojure), Extensible Data Notation (edn) * Perl и связанные модули, библиотеки и фреймворки (DBI, CGI, LWP, Mojolicious, Text::Xslate, Asterisk::AGI, Net::DNS::Native, IO::Select и др.) * Python и связанные модули, библиотеки и фреймворки (Python Standard Library, Twisted Web, Klein, Falcon, Flask, Celery, Django REST framework, ReportLab PDF Toolkit и др.) * Node.js / Luvit, Harpjs.com, EJS, jQuery, HTML, CSS, XML, YAML, JSON, SQL, HTTP(S), (S)FTP, SSH, SCP, REST-микросервисы и др. * API ядра Linux, модули ядра Linux (драйвер блочного устройства) * IVR (интерактивные голосовые сервисы) на основе АТС Asterisk * GNU C Library (glibc), GNU C++ Library (libstdc++), GNU libmicrohttpd (C-библиотека для создания легковесного многопоточного HTTP-сервера), GNUstep / Cocoa API, GNOME libsoup * GTFS Realtime (General Transit Feed Specification), Google Text-To-Speech API * Erlang/OTP, ERTS (Erlang Run-Time System), Erlang Standard Library * Elixir, Elixir Standard Library, Cowboy (библиотека веб- сервера для Erlang/OTP) * LFE (Lisp Flavoured Erlang) - диалект Lisp-2+ для Erlang VM * CMS: WordPress, TYPO3, Joomla! Средства * Vim / vi, Eclipse Platform (Eclipse SDK), MyEclipse Blue разработки Edition, Oracle JDeveloper, IBM Rational Software Architect (RSA), IBM Rational Application Developer (RAD), IBM WebSphere Studio Application Developer (WSAD) * GNU Bash, GNU Screen, GNU Toolchain: GNU Make, GNU Compiler Collection (GCC): gcc, g++, gcc-objc, gfortran; GNU Binutils, GNU Debugger (GDB), GNUstep, sed и др. Clang (C / C++ / Objective-C LLVM compiler front end), TCC (Fabrice Bellard's Tiny C Compiler) * Apache Maven, Apache Ant, Leiningen, Rebar3 СУБД PostgreSQL, MySQL / MariaDB, Oracle Database, IBM DB2 Universal Database, SQLite, MongoDB, Redis Серверы * Netty, Undertow, Apache Tomcat, JBoss Application Server / приложений / WildFly, IBM WebSphere Application Server / Portal Server, веб-серверы Apache Pluto * HTTP Kit (веб-сервер для Clojure), Cowboy (веб-сервер для Erlang/OTP) * Серверы приложений, основанные на Perl: Twiggy, Hypnotoad, Mojo::Server::Daemon * uWSGI (Python/WSGI, Perl/PSGI), Gunicorn (Python/WSGI), Twisted Reactor * Node.js, Luvit (Lua), PHP-FPM (FastCGI Process Manager) * Nginx, Apache HTTP Server Приложения Git, GitHub, GitLab, Bitbucket, Perforce (P4), Subversion(SVN), промежуточного Concurrent Versions System (CVS), JIRA, Redmine, Trac, Trello, слоя / разные MediaWiki, Doxygen, Samba, Travis CI и Jenkins CI/CD, Docker (и Docker Compose), Cron, QEMU, Zabbix и др. ====== Языки ================================================================== Английский Уровень, достаточный для повседневной работы и общения: * чтение / письмо - свободное владение * разговорная речь - уровень Upper Intermediate (B1-B2) Русский Родной язык Итальянский Начальный уровень ====== Образование (в обратном хронологическом порядке) ======================= Май 2002 - Аспирант Гомельского государственного технического университета июль 2003 имени П. О. Сухого Окт. 2001 - Магистрант Международного центра теоретической физики имени май 2002 Абдуса Салама, Триест, Италия Нояб. 1999 - Аспирант Гомельского государственного технического университета окт. 2001 имени П. О. Сухого 1994-1999 Студент Гомельского государственного технического университета имени П. О. Сухого, Гомель, Беларусь (диплом "С отличием") ====== Профессиональный опыт (в обратном хронологическом порядке) ============= Июль 2022 - окт. 2022, работа в ОАО "Милкавита", Гомель (4 месяца) * Совершенствование и актуализация пакета политик информационной безопасности предприятия. * Администрирование, сопровождение и доработка (контент- менеджмент, веб-мастеринг, веб-дизайн) корпоративного веб-сайта. * Установка, настройка,администрирование и сопровождение системы управления проектами и задачами Redmine. * Установка, настройка,администрирование и сопровождение системы мониторинга ЛВС Zabbix. * Настройка, администрирование и сопровождение Linux- серверов (Ubuntu, Red Hat). * Введение в строй новых и замена отказавших камер видеонаблюдения. * Оказание необходимой помощи системному администратору предприятия по различным задачам. Должность: инженер-программист управления автоматизации производственных процессов =============================================================================== Сент.2020 - сент.2021, проектирование, разработка, тестирование и сопровождение ПО в УО "Белорусский торгово-экономический университет потребительской кооперации", Гомель (1 год) Должность: ведущий инженер-программист центра информационных технологий ------------------------------------------------------------------------------- Авг. 2021 - Проект: Веб-приложения для предоставления абитуриентам сент. 2021 информации о результатах вступительных испытаний и зачислении на I и II ступени обучения Краткое описание: Проектирование, разработка, тестирование и внедрение автономных веб-приложений для предоставления абитуриентам информации о результатах вступительных испытаний и зачислении на I и II ступени обучения: * "Результаты вступительных испытаний" * "Приказ о зачислении на I ступень" * "Приказ о зачислении в магистратуру" (Целевой заказчик проекта - приемная комиссия университета.) Роль и выполняемые задачи: Проектирование схемы базы данных, архитектуры приложений. Разработка бизнес-логики и верстка веб- страниц, реализация механизмов аутентификации и авторизации пользователей (абитуриентов) для получения ими доступа к их личным данным касательно информации о результатах вступительных испытаний и зачислении. Конфигурирование сервера приложений, веб-сервера и сервера СУБД. Создание базы данных и заполнение ее данными абитуриентов, полученными в приемной комиссии. Тестирование и последующее внедрение веб-приложений согласно планам проведения приемной кампании университета. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server LTS x86-64 (VM:QEMU-KVM) * Server OS: Ubuntu Server LTS x86-64 (VM: VMware ESXi) * Perl 5, Mojolicious, DBI, Try::Tiny, Mojolicious::Plugin::Authentication, Embedded Perl (шаблонизатор), HTML, CSS, YAML, SQL, SSH, SCP, QPDF, Vim * PostgreSQL * Mojo::Server::Daemon, Nginx ------------------------------------------------------------------------------- Июнь 2021 - Проект: Мигрирование дочерних веб-сайтов университета с одного июль 2021 веб-сервера на другой. Разработка и внедрение специаль- ной системы резервного копирования для создания архив- ных копий нового веб-портала университета Краткое описание: Перенос пяти дочерних веб-сайтов университета с веб-сервера Apache на веб-сервер Nginx с целью оптимизации их работы, упрощения процесса их администрирования и равномерного распределения нагрузки на них. Подпроект: разработка и внедрение специальной системы резервного копирования для создания архивных копий нового веб- портала университета (на отдельной виртуальной машине и под управлением другого веб-сервера Nginx, см. предыдущий проект). Роль и выполняемые задачи: В связи с тем, что веб-сервер Nginx по ряду причин показал себя более привлекательным "несущим звеном" в условиях высокой загрузки запросами веб-сайтов университета, особенно в "пиковые интервалы", чем веб-сервер Apache, а также по причине более удобного и простого администрирования и конфигурирования Nginx, было принято решение о тотальном отказе от использования веб-сервера Apache и полного переноса всех пяти дочерних сайтов университета на Nginx. Это и было выполнено с непосредственным их тестированием и последующим сопровождением в условиях работы на новом веб- сервере. Разработка и внедрение специальной системы резервного копирования для создания архивных копий нового веб-портала университета: разработка Shell-скрипта и FTP-конфигурации создания и загрузки тарбола CMS веб-портала и сжатого дампа соответствующей базы данных на университетский FTP-сервер ежедневно в заданное время по Cron-у. Создание сценария восстановления веб-портала из любой его архивной копии (тарбол и дамп БД), полученной с FTP-сервера университета. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server LTS x86-64 (VM:QEMU-KVM) * Server OS: Ubuntu Server LTS x86-64 (VM x 2: VMware ESXi) * CMS WordPress + MySQL Community Server * CMS Joomla! + MariaDB * SSH, SCP, FTP, Bash Shell Script, Cron, Vim * Apache HTTP Server, Nginx + PHP-FPM ------------------------------------------------------------------------------- Март 2021 - Проект: Анализ и выбор наиболее подходящей системы управления май 2021 контентом (CMS) для нового веб-портала университета. Начало работы над ним Краткое описание: Анализ нескольких систем управления контентом (CMS), свободно распространяемых и с открытым исходным кодом, свободно доступных модулей расширения (плагинов) для них, необходимых для построения веб-портала и его отдельных компонентов. Выбор одной из CMS и начало работы над новым порталом университета на основе данной CMS. Роль и выполняемые задачи: Выбор темы (шаблона) дизайна для нового портала. Опробование трех отобранных CMS в действии (установка, конфигурирование, навигация и минимальное наполнение контентом - создание нескольких веб-страниц). Это October CMS, TYPO3 и Joomla. Установка и тонкая настройка одной из этих трех CMS, которая наиболее подходит для создания и управления новым порталом университета с точки зрения требований, предъявляемых к ней: расширенный функционал управления правами доступа и ролями пользователей, наличие необходимых свободных плагинов, относительная простота выполнения операций контент-менеджмента для пользователей с различным уровнем технической подготовки и др. - Была выбрана CMS Joomla! и СУБД к ней MariaDB. Начало работы над порталом на основе этой CMS: выбор темы дизайна портала, разработка навигационной структуры, создание базовых версий ряда веб- страниц на трех языках: русском, белорусском и английском. Полное создание веб-страниц "Об университете" и "Контакты" на этих трех языках. Также выполнение задач по обслуживанию виртуальной машины, веб-сервера и др. (см. предыдущий проект) в рамках данного проекта. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server LTS x86-64 (VM:QEMU-KVM) * Server OS: Ubuntu Server LTS x86-64 (VM: VMware ESXi) * October CMS + PostgreSQL * CMS TYPO3 + PostgreSQL * CMS Joomla! + MariaDB * HTML, CSS, JavaScript, SQL, SSH, SCP, FTP, Bash Shell Script, Cron, Composer * Nginx + PHP-FPM * Vim, LibreOffice, GIMP ------------------------------------------------------------------------------- Дек. 2020 - Проект: Разработка, развертывание и поддержка веб-сайта февр. 2021 для одного из структурных подразделений университета (веб-сайт ФПКиП) Краткое описание: Разработка, развертывание, контент- менеджмент, веб-мастеринг, сопровождение и поддержка веб-сайта факультета повышения квалификации и переподготовки (ФПКиП). Роль и выполняемые задачи: Разработка структуры разделов, дизайна, навигационных элементов сайта, адаптирование элементов контента страниц сайта под мобильные веб-браузеры, наполнение содержимым (предоставленным сотрудниками факультета) страниц сайта с последующим его редактированием (контент-менеджмент). Работа в качестве DBA непосредственно с базой данных сайта, когда необходимо нестандартное размещение контента, либо для выполнения однотипных или специальных операций над последовательностью определенных данных содержимого веб- страниц. Настройка и мониторинг регулярного создания резервных копий сайта и оповещения об этом и других операциях с данными сайта. Анализ пользовательских (клиентских) запросов к определенным страницам и данным сайта, протоколируемых в логах веб-сервера. Выполнение полного цикла работ по регулярному обновлению компонентов (пакетов) операционной системы, под управлением которой функционирует веб-сервер, CMS и СУБД и другие системные службы. Обновление CMS и компонентов, расширяющих ее функционал (плагинов). Поддержание виртуальной машины и операционной системы в оптимальном работоспособном состоянии, SEO-продвижение сайта. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server LTS x86-64 (VM:QEMU-KVM) * Server OS: Ubuntu Server LTS x86-64 (VM: VMware ESXi) * CMS WordPress + MySQL Community Server * HTML, CSS, JavaScript, SQL, SSH, SCP, FTP * Apache HTTP Server * Vim, LibreOffice, GIMP ------------------------------------------------------------------------------- Сент. 2020 - Проект: Доработка и поддержка дочерних веб-сайтов университета нояб. 2020 Краткое описание: Доработка дизайна, контент-менеджмент, веб- мастеринг, сопровождение и поддержка четырех дочерних веб- сайтов университета, служащих информационно-новостным дополнением для основного портала университета: * сайт "Персональные страницы преподавателей БТЭУ" * сайт "Абитуриент БТЭУ" * сайт отдела международных связей (ОМС) * сайт издательского центра "Kopernik" Роль и выполняемые задачи: Доработка дизайна, адаптирование элементов контента страниц сайтов под мобильные веб-браузеры, наполнение содержимым новых страниц сайтов, редактирование содержимого страниц (контент-менеджмент). Работа в качестве DBA непосредственно с соответствующими базами данных сайтов, когда необходимо нестандартное размещение контента, либо для выполнения однотипных или специальных операций над последовательностью определенных данных содержимого веб- страниц. Мониторинг регулярного создания резервных копий сайтов и оповещения об этом и других операциях с данными сайтов. Анализ пользовательских (клиентских) запросов к определенным страницам и данным сайтов, протоколируемых в логах веб-сервера. Выполнение полного цикла работ по регулярному обновлению компонентов (пакетов) операционной системы, под управлением которой функционируют веб-сервер, CMS и СУБД и другие системные службы. Обновление CMS и компонентов, расширяющих ее функционал (плагинов). Поддержание виртуальной машины и операционной системы в оптимальном работоспособном состоянии, балансировка нагрузки на сайты, а также SEO-продвижение сайтов. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server LTS x86-64 (VM:QEMU-KVM) * Server OS: Ubuntu Server LTS x86-64 (VM: VMware ESXi) * CMS WordPress + MySQL Community Server * HTML, CSS, JavaScript, SQL, SSH, SCP, FTP * Apache HTTP Server * Vim, LibreOffice, GIMP =============================================================================== Нояб. 2019 - янв. 2020, работа по разработке ПО в ООО "Сакцесс", (Гомельский филиал), Гомель (3 месяца) Должность: инженер-программист отдела разработки программного обеспечения ------------------------------------------------------------------------------- Нояб. 2019 - Проект: Flosum ALM: Application Lifecycle Management Solution янв. 2020 Краткое описание: Разработка системы управления жизненным циклом приложения (Flosum), построенной и работающей на платформе Salesforce, а также приложения Dataplier (на платформе Salesforce), предназначенного для выполнения мигрирования произвольных данных между организациями Salesforce на основе метаданных. (Заказчиком проекта Flosum ALM является компания Flosum, Inc.) Роль и выполняемые задачи: Тестирование и документирование процесса мигрирования данных на основе объектов Knowledge Article в приложении Dataplier. Создание прототипа сообщества клиентов (Salesforce-сообщества) и ведение первоначальной разработки дизайна на его главной странице (и наполнение страницы контентом), перенесенного с веб-сайта Zendesk, ориентированного на техподдержку пользователей Flosum. Активирование и первоначальное заполнение базы знаний (Knowledge Base) для сообщества клиентов. Обучение представителя службы техподдержки пользователей Flosum (посредством записи ряда видеоуроков) как создавать статьи в базе знаний и закрывать запросы, используя данные статьи. Устранение выявленных ошибок в бэкенд-компонентах приложения Flosum и внесение исправлений и дополнений в документацию для разработчиков. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server amd64 (VM: QEMU-KVM) - только для запуска веб-браузеров и выполнения локальных задач прототипирования с использованием HTML/CSS * Salesforce Developer Edition, Salesforce Enterprise Edition (CRM в облаке) * Apex, Lightning Aura Components, HTML, CSS, JavaScript * Salesforce Developer Console, Vim * Git, JIRA =============================================================================== Нояб. 2017 - март 2019, работа по разработке ПО в ИООО "Эксадел", (Гомельский филиал), Гомель (1 год и 5 месяцев) Должность: инженер-программист отдела разработки программного обеспечения № 2 ------------------------------------------------------------------------------- Нояб. 2018 - Проект: Barracuda WSG Azure Orchestration Blueprint март 2019 Краткое описание: Разработка компонента приложения на основе Flask Blueprint, так называемого Orchestrator, внутри бэкенда прокси-сервера Barracuda Web Security Gateway (WSG), который предназначен для интеграции WSG с облачной платформой Microsoft Azure с целью автоматизации создания виртуальной вычислительной инфраструктуры путем запуска утилиты Terraform с передачей ей конфигурации создаваемой инфраструктуры через очередь задач Celery. WSG и Orchestrator оба написаны на Питоне, и последний использует библиотеку очереди задач Celery для асинхронного выполнения задач Terraform. (Заказчиком проекта Orchestration Blueprint является компания Barracuda Networks, Inc.) Роль и выполняемые задачи: Разработка и настройка приложения Orchestrator в части обработки и валидации данных Terraform (переменных конфигурации) и передачи их в очередь задач Celery для дальнейшего выполнения. Разработка функционала отображения результатов выполнения задач и статусов Celery в асинхронном режиме и тестирование приложения Orchestrator на выделенном аккаунте Azure вместе с DevOps-инженером. Используемые технологии и средства разработки: * Dev OS: Arch Linux, Ubuntu Server amd64 (VM: QEMU-KVM) * Test OS: Ubuntu Server amd64 (VM: Xen) * Python 2, Python Standard Library, Flask, Flask Blueprints, Jinja2, Virtualenv * Werkzeug, Nginx * Redis, SQLite * GNU Make, Terraform, curl, Vim * Git, Bitbucket, JIRA ------------------------------------------------------------------------------- Май 2018 - Проект: bTrade secureXchange app (bTrade TDXchange) авг. 2018 Краткое описание: Разработка серверного приложения TDXchange, позволяющего производить безопасную (шифрованную) управляемую передачу файлов между двумя или более участниками обмена файлами с использованием широкого ряда сетевых протоколов и применением методов симметричного и асимметричного шифрования. Оно написано на Java с использованием веб-фреймворка JSF и библиотеки RichFaces с некоторыми заимствованиями методов из библиотеки OmniFaces. Приложение TDXchange может хранить все параметры конфигурации в одной из следующих СУБД в зависимости от базовой схемы конфигурирования и профиля сборки: Oracle Database, MS SQL Server, H2 Database. (Заказчиком проекта "secureXchange app" является компания bTrade LLC.) Роль и выполняемые задачи: Конфигурирование и сборка дистрибутивов приложения для ряда поддерживаемых платформ: Linux x86/x64, Solaris SPARC, IBM AIX 32/64-bit, HP-UX IA-64. Деплоймент и тестирование сборок приложения на удаленных серверах, предоставляющих вышеперечисленные платформы. Устранение выявленных ошибок в исходном коде приложения и документирование различных приемов и трюков в настройке приложения в ходе деплоймента специальных сборок его новых версий. Используемые технологии и средства разработки: * Dev OS: Ubuntu Server amd64 (VM: Xen) * Server OS: Red Hat Enterprise Linux x86-64, SUSE Linux Enterprise Server x86-64, Solaris SPARC V9, IBM AIX for PowerPC 32-bit and 64-bit, HP-UX (IA-64) * Java EE, Java Class Library, JSTL, JSF, RichFaces, XML, XHTML, JavaScript, Bash Shell Script * WildFly (JBoss) Application Server * Oracle Database, H2 Database * Apache Maven, curl, Vim * Subversion, внутренняя система отслеживания ошибок bTrade ------------------------------------------------------------------------------- Нояб. 2017 - Проект: Mercer Enhance: Machine Learning for Job Matching апр. 2018 Краткое описание: Разработка REST API-микросервисов на Питоне, выполняющихся внутри Docker-контейнеров и обменивающихся данными друг с другом посредством REST-интерфейса. Архитектурно они построены как обертки над бизнес-слоем, выполняющим глубокое обучение (машинное обучение) на ряде моделей и возвращают множества структурированных вхождений (предсказаний и точности предсказаний), которые затем передаются в пользовательский интерфейс, представляющий сопоставление имеющихся вакансий работодателей заявленным критериям соискателей. (Заказчиком проекта Mercer Enhance является компания Mercer LLC.) Роль и выполняемые задачи: Создание и конфигурирование микросервисов при помощи утилиты Docker Compose, тестирование их работы и анализ производительности каждого микросервиса при использовании ряда веб-фреймворков для Питона и соответствующих серверов приложений (см. ниже). Прототипирование асинхронного подхода в модели обмена данными между микросервисами и портирование пары микросервисов с Питона на Go с целью повышения производительности их работы при многочисленных параллельных запросах. Подготовка микросервисов к деплойменту в облаке Amazon AWS. Документирование исходного кода и некоторых архитектурных подходов, которые были применены в создании данных микросервисов. Используемые технологии и средства разработки: * Dev OS: Ubuntu Server amd64 (VM: QEMU-KVM / Xen) * Server OS: Ubuntu Cloud amd64 VM * Docker-контейнеры, основанные на образах Ubuntu и CentOS * Python 2/3, Python Standard Library, Twisted Web, Klein, Falcon, Virtualenv * Серверы приложений Gunicorn(Python/WSGI), uWSGI(Python/WSGI), Twisted Reactor * TensorFlow Serving (библиотека машинного обучения), Go, Go Standard Library, JSON * GNU Make, Docker Compose, curl, Vim * Git, Bitbucket, JIRA =============================================================================== Июль 2017 - авг. 2017, работа по разработке ПО в ООО "Эр-Стайл Лаб", Минск (2 месяца) Должность: инженер-программист подразделения разработки проектов "интернета вещей" ------------------------------------------------------------------------------- Июль 2017 - Проект: Splink Desktop авг. 2017 Краткое описание: Разработка системной службы Windows для осуществления непрерывного захвата экрана и записи видеопотока в набор видеофайлов, а затем для передачи их на удаленный частный сервер. Роль и выполняемые задачи: Исследовательская работа по поиску и выбору стороннего фреймворка или библиотеки, подходящих для быстрой записи видеопотока захвата экрана. Разработка механизма ротирования видеофайлов. Используемые технологии и средства разработки: * Dev OS: Microsoft Windows 7 x64, Arch Linux x86-64 * Test OS: Microsoft Windows 7 x64 * ISO C++, Windows API (GDI), FFmpeg * Visual Studio Professional 2017, Vim, GNU Make, TDM-GCC: tdm64-1 (g++) * Git, GitLab, Redmine =============================================================================== Март 2017 - май 2017, работа по разработке ПО в ООО "Инватекс Софтвер", Минск (3 месяца) Должность: инженер-программист подразделения веб-разработки ------------------------------------------------------------------------------- Март 2017 - Проект: Upmargin май 2017 Краткое описание: Разработка компонентов панели управления (ПУ) для веб-приложения, ориентированного на предоставление услуг онлайн-бронирования отелей. Ключевым аспектом этого веб- приложения является его глубокая интеграция с веб-службой Google AdWords. (Заказчиком проекта разработки ПУ является компания Upmargin Ltd.) Роль и выполняемые задачи: Разработка ряда новых веб-страниц или их отдельных компонентов согласно техзадания, исправление ошибок в рабочих компонентах веб-страниц ПУ. Сборка и тестирование ПУ. (Разработка затрагивает как фронтенд-, так и бэкенд-слои ПУ, которые обмениваются между собой данными через методы REST API. Оба слоя полностью написаны на JavaScript.) Используемые технологии и средства разработки: * Dev OS: OpenBSD/amd64, Ubuntu Server amd64 (все: VM: QEMU-KVM) * Server OS: Ubuntu Server amd64 (Cloud VM) * JavaScript, MEAN-стек (MongoDB, Express, AngularJS, Node.js), HTML, CSS * Nginx, MongoDB * Vim * Git, Bitbucket, Trello =============================================================================== Февр. 2016 - сент. 2016, работа по разработке ПО в ООО "Девайспрос", Минск (8 месяцев) Должность: инженер-программист подразделения разработки программного обеспечения ------------------------------------------------------------------------------- Авг. 2016 - Проект: Test Infrastructure (TI): Виртуальный драйвер блочного сент. 2016 устройства Linux для сбора и замера задержек операций ввода-вывода Краткое описание: Бэкенд-веб-служба тестовой инфраструктуры (TI) (см. предыдущий проект) работает с DUT-устройствами (тестируемыми устройствами). В Linux существует два типа устройств: символьные и блочные. Для символьных устройств уже создан и используется специальный драйвер, но для блочных устройств он пока не создан. Поэтому целью данного проекта является разработка виртуального драйвера блочного устройства (в виде загружаемого модуля ядра Linux), который должен производить сбор и замер величин задержки (latency) операций ввода-вывода. (Заказчиком проекта разработки платформы TI является компания Stellus Technologies, ранее подразделение Samsung Electronics.) Роль и выполняемые задачи: Ответственен за проект в целом - разработка драйвера блочного устройства Linux и небольшой утилиты для тестирования (и отладки) его работы без каких-либо взаимодействий с ним со стороны бэкенда тестовой инфра- структуры. Документирование его исходного кода. Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Test OS: Ubuntu Server amd64 (VM: QEMU-KVM) * ISO C, API ядра Linux, GNU C Library (glibc) * Vim, Doxygen * GNU Make, Flexible I/O Tester (fio) * Git, GitHub, JIRA ------------------------------------------------------------------------------- Май 2016 - Проект: Test Infrastructure (TI): REST Back-end Service июль 2016 Краткое описание: Бэкенд-веб-служба тестовой инфраструктуры (TI) взаимодействует с фронтенд-веб-службой посредством вызовов REST API и является объектом разработки и тестирования в рамках данного проекта. Тестовая инфраструктура состоит из двух больших частей-компонентов: фронтенда и бэкенда. В то время как фронтенд-веб-служба используется непосредственно конечными пользователями - специалистами по тестированию, и написана на PHP и JavaScript, работа бэкенда скрыта от пользователей: она отвечает за запуск и выполнение одиночных тестов и мульти-тестовых задач на DUT-устройствах (тестируемых устройствах), и написана, главным образом, на Python, за исключением отдельных, критически важных в смысле производительности фрагментов, которые переписаны на Go и Си. Оба этих компонента - фронтенд и бэкенд - общаются друг с другом через методы REST API. (Заказчиком проекта разработки платформы TI является компания Stellus Technologies, ранее подразделение Samsung Electronics.) Роль и выполняемые задачи: Обязанности по разработке агента генератора отчетов, который предназначен для сбора данных обо всех тестах и тестовых задачах, текущих и выполнявшихся ранее на DUT-устройствах, и для генерирования сводного отчета (в формате PDF или CSV) на основании этой информации, который предоставляется для анализа тестировщикам и менеджерам. Работа по исправлению ошибок в других частях продукта и документирова- ние его исходного кода. Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Server OS: Ubuntu Server amd64 * Python 3, Python Standard Library, Django REST framework, ReportLab PDF Toolkit, Virtualenv * Сервер приложений uWSGI (Python/WSGI) * MySQL, PostgreSQL * Vim, Doxygen * Git, GitHub, JIRA ------------------------------------------------------------------------------- Февр. 2016 - Проект: Test Infrastructure(TI): Имитационная среда Samsung AWS апр. 2016 Краткое описание: Создание имитационной среды AWS (Amazon Web Services) для разработки и тестирования нового функционала тестовой инфраструктуры (TI) локально, на собственных вычислительных мощностях компании, с целью отказа от использования удаленной рабочей среды Samsung AWS. (Тестовая инфраструктура представляет собой модульную программную платформу для запуска как одиночных тестов, так и мульти-тестовых задач на DUT-устройствах (тестируемых устройствах), например, на SSD-накопителях. Пользователи платформы TI - разработчики и тестировщики. Она построена по принципу "host/target" для выполнения тестовых задач на нескольких машинах одновременно.) (Заказчиком проекта разработки платформы TI является компания Stellus Technologies, ранее подразделение Samsung Electronics.) Роль и выполняемые задачи: Разработка имитационной тестовой среды, отдаленно напоминающей AWS-среду, используемую в бизнес- процессе компании Samsung по созданию систем хранения данных различными командами программистов и тестировщиков. Обязанности по разработке модулей и скриптов для последовательного запуска программ сборки системы, написанных на разных языках программирования: Perl, Bash Shell Script, Java, Python, Go. Документирование. Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Server OS: Ubuntu Server amd64 * Perl 5, Bash Shell Script * Java SE, Java Class Library * Python 3, Go (с соответствующими стандартными библиотеками) * Apache HTTP Server * Jenkins (служба непрерывной интеграции) * Docker (система управления контейнеризацией) * Koding (среда разработки в облаке с виртуальной машиной) * Vim * GNU Make, Apache Maven * Git, Bitbucket, JIRA =============================================================================== Янв. 2013 - апр. 2015, работа по разработке ПО в ООО "SMS Online" (Гомельский филиал), Гомель (2 года и 4 месяца) Должность: инженер-программист первой категории отдела разработки программного обеспечения Все проекты, перечисленные ниже, обособлены лишь условно, и вместе представляют собой непрерывный цикл разработки, модернизирования и поддержки модулей единой рассылочно-биллинговой SMS/IVR-платформы собственной разработки компании "SMS Online". Данная платформа обеспечивает до 90-95% загрузки всех ресурсов компании с сопоставимой (1:1) отдачей. Ключевые технологии в данных проектах: Perl 5, PostgreSQL и иногда Java EE, ISO C, Asterisk. ------------------------------------------------------------------------------- Янв. 2015 - Проект: IVR-сервисы: оптимизация и обслуживание апр. 2015 Краткое описание: Оптимизация работы IVR-сервисов компании, анализирование IVR-статистики, ее периодический пересчет согласно требованиям текущих бизнес-процессов. IVR-сервисы представляют собой интерактивные голосовые сервисы (нечто наподобие голосовых меню), запущенные и выполняющиеся на сервере под управлением свободной АТС Asterisk. Они работают изолированно либо посредством взаимодействия с другими партнерскими IVR-сервисами и телекоммуникационными системами IP-телефонии операторов сотовой связи и абонентами. Роль и выполняемые задачи: Наблюдение за IVR-статистикой и ее периодический пересчет. Доработка ряда вспомогательных IVR- сервисов, позволяющих основным сервисам функционировать в полностью автономном режиме, без необходимости изменения их исходного кода при переключении IVR-контекстов. Доработка панелей управления, выполненных в виде веб-приложений и предназначенных для конфигурирования IVR-сервисов и сбора IVR- статистики. Участие в мигрировании IVR-платформы компании с аппаратного сервера на виртуальную машину в облачном сервисе совместно с системными и сетевыми администраторами компании. Выполнение послемиграционных работ, в т. ч. настройка Cron- задач, конфигурирование АТС Asterisk, анализирование IVR- трафика и IVR-статистики, глубокое функциональное тестирование всех активных IVR-сервисов. Частичное выполнение функций DBA. Документирование. Используемые технологии и средства разработки: * Dev OS: Arch Linux i686; OpenBSD/amd64 * Server OS: Debian GNU/Linux amd64 (HW x 2 / Cloud VM) * Perl 5, LWP, DBI, CGI, Asterisk::AGI, YAML::XS, Log::Log4perl и др. * YAML, SQL * Asterisk VoIP PBX, Apache HTTP Server, Nginx * PostgreSQL * Vim * GNU Make * Git, GitLab, MediaWiki, Redmine ------------------------------------------------------------------------------- Нояб. 2014 - Проект: Партнерские сервисы (Мобильные подписки) дек. 2014 Краткое описание: Предоставление посадочных страниц бизнес- партнерам для размещения собственного контента на их стороне (веб-сервисы) и осуществление соответствующих биллинговых операций (SMS-биллинг) согласно условий партнерских программ. Роль и выполняемые задачи: Автоматизирование процесса создания WAR-архива веб-приложения, содержащего посадочную страницу, для использования в одной из партерских программ. Установка, развертывание и тестирование WAR-архива на поддерживаемых серверах приложений Java EE. Используемые технологии и средства разработки: * Dev OS: Arch Linux i686 * Server OS: Debian GNU/Linux amd64 (Cloud VM) * Java EE, Java Class Library, Servlet / JSP API * Apache Tomcat, JBoss Application Server * Vim * GNU Make, Apache Maven * Git (включая работу с дочерними Git-репозиториями), GitLab, Redmine ------------------------------------------------------------------------------- Июль 2014 - Проект: Gate Admin CP II (Панель управления платежного шлюза: окт. 2014 новый этап модернизации) Краткое описание: Непрерывная глубокая модернизация панели управления (ПУ) платежного шлюза. ПУ представляет собой веб- консоль администрирования, построенную обособленными мини- модулями на основе как устаревающей CGI-технологии, так и новомодного MVC-фреймворка Mojolicious. ПУ используется, главным образом, службой техподдержки компании 24x7. Платежный шлюз является многокомпонентной программной платформой для осуществления процессинга биллинговых операций над очередями SMS-сообщений, курсирующих между сервисами парнеров и операторов сотовой связи. Роль и выполняемые задачи: Участие в процессе мигрирования ПУ от разрозненных модулей к одному единственному приложению, основанному на фреймворке Mojolicious, и объединяющему весь управленческий функционал в одном веб-приложении. Исправление ошибок в различных устаревающих, но пока еще не вышедших из эксплуатации модулях ПУ. (Пользовательский интерфейс и бизнес- логика.) Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Server OS: Debian GNU/Linux amd64 (Cloud VM) * Perl 5, Mojolicious, Text::Xslate, DBI, CGI, MIME::Lite, YAML::XS, Log::Log4perl и др. * YAML, HTML5, CSS, JavaScript, SQL * Morbo / Hypnotoad, Apache HTTP Server, Nginx * PostgreSQL, SQLite * Vim * GNU Make * Git, GitLab, Redmine ------------------------------------------------------------------------------- Март 2014 - Проект: Партнерские сервисы (Городской наземный транспорт июнь 2014 Санкт-Петербурга / Петербургский метрополитен) Краткое описание: Комплексный проект мобильной коммерции (МК), сочетающий в себе два независимых друг от друга подпроекта: 1. Система МК взаимодействия с порталом общественного транспорта Санкт-Петербурга для оперативного информирования пассажиров о динамике движения маршрутов городского наземного транспорта на основе SMS-запросов. Основные компоненты системы: платежный SMS-шлюз, даймон, обрабатываю- щий входящие сообщения и осуществляющий процессинг GTFS- данных. 2. Система МК взаимодействия с банком "Русский Стандарт" для активирования и пополнения электронных карт предоплаты "Подорожник", используемых пассажирами для оплаты проезда в Петербургском метрополитене. Основные компоненты системы: платежный SMS-шлюз, IVR-платформа, встроенный HTTP-сервер быстрой обработки запросов на стороне партнера. Роль и выполняемые задачи: 1. Разработка даймона, обрабатывающего входящие SMS-сообщения и осуществляющего процессинг GTFS-данных (GTFS-realtime feed). Разработка велась с использованием внутреннего фреймворка компании для построения Perl-даймонов, работающих в режиме реального времени, а также с использованием GTFS Realtime API. 2. Разработка IVR-сервиса с использованием технологии Google Text-To-Speech, работающего на IVR-платформе компании под управлением АТС Asterisk и принимающего в качестве входных данных номер карты предоплаты - в ответ проговаривающего секретный код для активирования карты предоплаты (Perl). Также в рамках данного проекта велась разработка встроенного HTTP-сервера быстрой обработки запросов, предназначенного для работы в изолированной среде на стороне партнера (ISO C, GNU libmicrohttpd). Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Server OS: Debian GNU/Linux amd64 (VM) * Perl 5, LWP, DBI, AnyEvent, Redis, Asterisk::AGI, Archive::Zip, Text::CSV, YAML::XS, JSON::XS, Log::Log4perl и др. * ISO C, GNU C Library (glibc), GNU libmicrohttpd * YAML, JSON, GTFS Realtime API, Google Text-To-Speech API * Twiggy, Redis, АТС Asterisk * Vim * GNU Make, GCC, TCC * Git, GitLab, Redmine ------------------------------------------------------------------------------- Дек. 2013 - Проект: Bulk Admin CP (Панель управления платформы рассылок) февр. 2014 Краткое описание: Дальнейшая разработка и модернизация панели управления (ПУ) платформы рассылок. ПУ представляет собой веб- консоль администрирования, построенную на основе фреймворка Vaadin. ПУ используется, главным образом, службой техподдержки компании 24x7. Платформа рассылок является программной платформой для осуществления массовой рассылки сообщений (SMS). Роль и выполняемые задачи: Ответственен за проект в целом (как единственный Java-разработчик в почти полностью Perl- ориентированной компании). Разработка дополнительных элементов управления пользовательского интерфейса согласно новым требованиям техзадания, а также поиск и исправление ошибок во всей кодовой базе проекта. (Только пользовательский интерфейс.) Используемые технологии и средства разработки: * Dev OS: Arch Linux i686 * Server OS: Debian GNU/Linux amd64 (VM) * Java EE, Vaadin Framework, JDBC, XML, SQL * Apache Tomcat * PostgreSQL * Vim * Apache Ant * Git, Redmine ------------------------------------------------------------------------------- Март 2013 - Проект: Gate Admin CP (Панель управления платежного шлюза) нояб. 2013 Краткое описание: Дальнейшая разработка и модернизация панели управления (ПУ) платежного шлюза. ПУ представляет собой веб- консоль администрирования, построенную обособленными мини- модулями на основе как устаревающей CGI-технологии, так и новомодного MVC-фреймворка Mojolicious. ПУ используется, главным образом, службой техподдержки компании 24x7. Платежный шлюз является многокомпонентной программной платформой для осуществления процессинга биллинговых операций над очередями SMS-сообщений, курсирующих между сервисами парнеров и операторов сотовой связи. Роль и выполняемые задачи: Разработка ряда новых модулей ПУ, в т. ч. "Поиск предпроцессинговых сообщений", "Управление MT- подписками и подписочными сервисами", "Управление пользователями и ролями". Участие в мигрировании ПУ с аппаратного FreeBSD-сервера на виртуальную машину под управлением Debian Stable совместно с системными и сетевыми администраторами компании. Исправление ошибок в различных модулях ПУ. Документирование. (Пользовательский интерфейс и бизнес-логика. Эксперт по ролевой авторизации пользователей.) Используемые технологии и средства разработки: * Dev OS: Arch Linux i686 * Server OS: FreeBSD/amd64 (HW); Debian GNU/Linux amd64 (VM) * Perl 5, Mojolicious, Text::Xslate, DBI, MIME::Lite, YAML::XS, Log::Log4perl и др. * YAML, HTML5, CSS, JavaScript, SQL * Morbo / Hypnotoad, Apache HTTP Server * PostgreSQL * Vim * GNU Make * Git, MediaWiki, Redmine ------------------------------------------------------------------------------- Янв. 2013 - Проект: Java Bulk Client (API платформы рассылок февр. 2013 для клиентских Java-приложений) Краткое описание: Разработка API платформы рассылок для непосредственного использования внутри клиентских Java- приложений, разрабатываемых бизнес-партнерами, с целью доступа к серверу платформы рассылок. Платформа рассылок является программной платформой для осуществления массовой рассылки сообщений (SMS). Роль и выполняемые задачи: Ответственен за проект в целом (как единственный Java-разработчик в почти полностью Perl- ориентированной компании). Разработка библиотеки API с полным описанием Javadoc и инструкцией по ее установке и использованию. А также разработка тестового (шаблонного) веб- приложения для демонстрирования возможных приемов использования данной библиотеки в клиентских веб-приложениях на Java. Используемые технологии и средства разработки: * Dev OS: Arch Linux i686 * Server OS: FreeBSD/amd64 * Java EE, Java Class Library, Servlet / JSP API, JSTL, SLF4J * XML, XHTML, CSS, JavaScript * Apache Tomcat * Vim * Apache Maven * Git, Redmine =============================================================================== Авг. 2012 - окт. 2012, работа по разработке ПО в ЗАО "Интервэйл" (Гомельский филиал), Гомель (3 месяца) Должность: инженер-программист первой категории отдела разработки решений для мобильного банкинга ------------------------------------------------------------------------------- Авг. 2012 - Проект: Единая платежная система мобильного банкинга окт. 2012 Сбербанка России Краткое описание: Разработка комплексной системы мобильных платежей, непосредственно ориентированной на использование внутри отделений Сбербанка России и предоставляющей клиентам банка возможность проводить платежи посредством различных мобильных устройств (мобильные телефоны с поддержкой технологии Java ME, смартфоны с ОС Symbian, Android и iOS, планшетные устройства, работающие на основе этих же ОС). Данная система разрабатывается при участии нескольких субподрядчиков, одним из которых выступает компания "Интервэйл" (проектирование и разработка SMS-шлюза, механизма очередей сообщений и клиентских приложений для мобильных телефонов с Java ME). Роль и выполняемые задачи: Разработка веб-консоли администри- рования для использования операторами и аудиторами банка для контроля и управления активами и бизнес-процессами, которые лежат в основе банковских операций, производимых при непосред- ственном взаимодействии с SMS-шлюзом и очередями сообщений. Документирование. (Пользовательский интерфейс и (частично) бизнес-логика. Юзабилити и аксессибилити-эксперт. Эксперт по аутентификации и авторизации пользователей.) Используемые технологии и средства разработки: * Dev OS: Arch Linux x86-64 * Server OS: Microsoft Windows Server 2008 x86-64 * Java EE, Java Class Library, Servlet / JSP API, JSTL, SLF4J * Spring Web MVC + Spring Security, Apache Struts 2 (первоначально) * XML, XHTML, CSS, JavaScript, jQuery * Apache Tomcat, IBM WebSphere Application Server * Vim * Apache Maven * Subversion, Samba =============================================================================== Янв. 2012 - май 2012, работа по разработке ПО в XIMAD, Inc. (Гомельский филиал), Гомель (5 месяцев) (XIMAD, Inc. и XIM, Inc. имеют объединенную штаб-квартиру) Должность: инженер-программист первой категории подразделения беспроводных технологий ------------------------------------------------------------------------------- Март 2012 - Проект: Ad Optimizer, [XIMAD, Inc.] май 2012 Краткое описание: Дословно - "оптимизатор рекламы". Внутри- корпоративное веб-приложение, используемое менеджерами компании для структурирования и распределения рекламных баннеров и апплетов, отображающихся на мобильных устройствах абонентов при работе с мобильными приложениями и играми производства компании, которые имеют статус бесплатных либо условно бесплатных. Рекламный контент (баннеры и апплеты) могут быть отфильтрованы, связаны между собой, удалены, активированы, отклонены и упорядочены по ряду критериев, включая мобильные платформы (операционные системы), их версии, мобильные приложения и игры, их версии и параметры локализации, а также по геграфическому местоположению абонентов (мобильных устройств), работающих с приложениями и играми (при помощи API стороннего веб-сервиса GeoLocation). Роль и выполняемые задачи: Разработка ряда новых веб-страниц согласно техзадания, исправление ошибок в наиболее активно использующихся веб-страницах приложения. Сборка, тестирование и деплоймент всего веб-приложения в производственной среде, включая внесение изменений в схему базы данных. Документирова- ние. (Пользовательский интерфейс и бизнес-логика.) Используемые технологии и средства разработки: * Dev OS: Ubuntu amd64 (Window Maker) * Server OS: FreeBSD/amd64 * Java EE, Play! Framework, JDBC, JavaMail, XML, XHTML, CSS, JavaScript, SQL * Apache Tomcat * Eclipse SDK, vi * Apache Maven * MySQL * Subversion, Redmine ------------------------------------------------------------------------------- Янв. 2012 - Проект: Zuma iOS/Zuminja (2D-game for Apple iPhone/iPad/ февр. 2012 iPod touch), [XIMAD, Inc.] Краткое описание: Разработка двухмерной игры "Zuma iOS" (альтернативное название "Zuminja") для мобильных устройств компании Apple. (Приложение должно визуально и функционально походить на его порты, разработанные для платформ Android и BlackBerry.) Роль и выполняемые задачи: Обязанности по проекту в целом кроме разработки игрового дизайна и соответствующих статических графических компонент. Используемые технологии и средства разработки: Подготовительный этап: * Dev OS: CentOS x86_64 (Window Maker); Ubuntu amd64 (Window Maker) * Objective-C 2.0 * GNUstep/Cocoa API, XML * GNUstep (объектно-ориентированный инструментарий), vi Основная фаза разработки: * Dev OS: Mac OS X Lion (установлена на раб. станции Mac mini) * Objective-C 2.0 * OpenGL ES, XML * Apple Xcode IDE (с дополнительными средствами разработки, такими как iOS Simulator), MacPorts, vi * Redmine =============================================================================== Сент. 2010 - дек. 2011, работа по разработке ПО в XIM, Inc. (Гомельский филиал), Гомель (1 год и 4 месяца) (XIM, Inc. и XIMAD, Inc. имеют объединенную штаб-квартиру) Должность: инженер-программист первой категории отдела веб-разработок ------------------------------------------------------------------------------- Июль 2011 - Проект: Mobility Traffic Mediation Solution дек. 2011 (Media Optimizer and Web Optimizer), [Openwave Systems Inc. (удаленно)] Краткое описание: Комплексный проект по разработке proxy- сервера "следующего поколения" NGP (Next Generation Proxy), предназначенного (в комплекте с плагинами Media Optimizer и Web Optimizer) для снижения нагрузки на системы Интернет- провайдеров и операторов сотовой связи при обработке и передаче ими плотного мобильного трафика на мобильные устройства пользователей и абонентов. Роль и выполняемые задачи: Работа над исправлением ошибок в текущей версии плагинов Media Optimizer (Java) и Web Optimizer (Си++), запротоколированных командой тестирования (QA). Главным образом, обязанности по исправлению ошибок, пересборке, деплойменту в тестовой среде и тестированию компонента ViDeO (Video Delivery Optimizer), который является основным несущим звеном плагина Media Optimizer. Документирование. Используемые технологии и средства разработки: * Dev OS: FreeBSD/amd64 (KDE); Ubuntu amd64 (Window Maker) * Server OS: CentOS x86_64; Red Hat Enterprise Linux Server x86_64 * Java SE / EE, ISO C++, Bash Shell Script, Perl 5, XML * Apache HTTP Server, Apache Tomcat * Vim * MySQL * Perforce, Openwave's internal Issue Tracking System (ITS) + Trac ------------------------------------------------------------------------------- Сент. 2010 - Проект: Atlas Information Governance Suite (Policy Atlas), июнь 2011 [PSS Systems, an IBM Company (удаленно)] Краткое описание: Policy Atlas является веб-ориентированной информационной системой, объединяющей и формирующей юридические, информационные, финансовые и управленческие подходы к ликвидации излишних расследований и затрат внутри компании в случае возникновения судебных тяжб. Atlas позволяет компании планировать ведение своей деятельности, а также выявлять и устранять факторы, представляющие потенциальную опасность для ведения бизнеса без каких-либо значимых юридических обязательств. Роль и выполняемые задачи: Написание Java-модулей, JavaScript- модулей и Bash-скриптов. Основная задача - разработка и сопровождение сложной, перегруженной интерактивными элементами веб-страницы "Matter Exceptions and Alerts". Исправление ошибок в других функциональных частях приложения, а также разработка вспомогательной утилиты патчирования, предназначенной для упрощения и ускорения процесса установки и внедрения приложения Policy Atlas. Используемые технологии и средства разработки: * Dev OS: Kubuntu i386 * Java EE, Java Servlet, JSP, JSTL, JSF, JDBC, XML, XHTML, CSS, SQL * JavaScript, Bash Shell Script * JBoss Application Server, IBM WebSphere Application Server * Oracle JDeveloper * MyEclipse Blue Edition * Oracle Database * Perforce, Trac =============================================================================== Март 2009 - авг. 2010, работа по разработке ПО в ООО "Технопарк "Дубна", г. Дубна Московской области, включая работу по разработке ПО в ИП "Брикбилд" (Белорусский филиал ООО "Технопарк "Дубна"), Гомель (1 год и 5 месяцев) Должность: инженер-программист первой категории центра разработки экспертных систем ------------------------------------------------------------------------------- Март 2009 - Проект: Интеллектуальная система централизованного управления авг. 2010 поездной работой железнодорожных направлений (ИСУ ЦПРН) "Поток", ["Технопарк "Дубна"] Краткое описание: ИСУ ЦПРН "Поток" является управленческой интеллектуальной информационной системой, которая предназначена для осуществления контроля за процессом реального времени оптимального планирования движения грузового подвижного состава внутри железнодорожных транспортных систем России и Беларуси без каких-либо ограничений. Роль и выполняемые задачи: Написание G2- и ASP.NET-модулей, JavaScript-модулей, создание, верстка и мастеринг оригинального веб-дизайна для веб-части приложения, а также выполнение сопутствующих задач. Обязанности по реализации функциональной части проекта, определяющей динамическое генерирование интерактивных веб-отчетов (только пользовательский интерфейс); юзабилити и аксессибилити-эксперт. Используемые технологии и средства разработки: * Gensym G2 Platform * Gensym G2 Programming Language * Gensym G2 Server and built-in HTTP Server * Gensym G2 Telewindows * JavaScript, jQuery * Microsoft .NET Framework, ASP.NET, XML, XHTML, CSS, SQL * Microsoft Visual Web Developer 2008 Express Edition * Microsoft Visual Studio Team System 2008 * Microsoft Internet Information Services * Oracle Database * Subversion =============================================================================== Сент. 2003 - сент. 2008, работа по разработке ПО в ИП "ИВА-Гомель", Гомель (5 лет) Должность: инженер-программист первой категории отдела E-Business технологий ------------------------------------------------------------------------------- Июль 2008 - Проект: Автоматизированная информационная система (АИС) "КДТ", сент. 2008 ["IBA-Гомель"] Краткое описание: АИС "КДТ" является управленческой информаци- онной системой, которая предназначена для осуществления контроля за процессом перемещения определенных групп товаров внутри сложных экономических систем, таких как торговая система. Роль и выполняемые задачи: Написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональной части проекта, определяющей управление учетными записями пользователей в виде портлета, используемого как одного из составных компонентов большой системы-портала (бизнес-логика и пользовательский интерфейс). Используемые технологии и средства разработки: * Java EE * Java Portlet, Java Servlet, JSP, JDBC, XML, XHTML, SQL, PUMA SPI * IBM WebSphere Portal Server * IBM WebSphere Application Server * IBM Directory Server (LDAP) * Apache Pluto * Apache Tomcat * IBM Rational Application Developer * Checkstyle * IBM DB2 Universal Database * Concurrent Versions System, Trac ------------------------------------------------------------------------------- Май 2008 - Проект: IBM AS RM Metro, ["IBM Нидерланды", "IBM Германия" июль 2008 (удаленно)] Краткое описание: Веб-ориентированное приложение, которое предоставляет менеджерам возможность выполнять планирование и оптимизацию загрузки ресурсов внутри компании IBM. Другими словами, это инструмент для управления изменениями определенного ресурса и одновременно всех ресурсов в целом. Роль и выполняемые задачи: Написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональных частей проекта, определяющих представление и поведение компонентов пользовательского интерфейса приложения (только пользовательский интерфейс). Используемые технологии и средства разработки: * Java EE * Java Servlet, JSP, JDBC, JavaMail, XML, XHTML, SQL * The Apache Struts Web Application Framework * IBM WebSphere Application Server * IBM Rational Software Architect * Checkstyle * IBM DB2 Universal Database * Subversion, Trac ------------------------------------------------------------------------------- Февр. 2008 - Проект: Автоматизированная информационная система (АИС) "КДТ", май 2008 ["IBA-Гомель"] Краткое описание: АИС "КДТ" является управленческой информаци- онной системой, которая предназначена для осуществления контроля за процессом перемещения определенных групп товаров внутри сложных экономических систем, таких как торговая система. Роль и выполняемые задачи: Написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональной части проекта, определяющей представление и поведение компонентов пользовательского интерфейса приложения (только пользовательский интерфейс). Используемые технологии и средства разработки: * Java EE * Eclipse SWT, JDBC, XML, SQL * IBM WebSphere Application Server * IBM Rational Application Developer * Checkstyle * IBM DB2 Universal Database * Concurrent Versions System ------------------------------------------------------------------------------- Май 2006 - Проект: IBM Web Solutions Enabler (WSE), ["IBM Италия", февр. 2008 "IBM Франция" (на стороне заказчика / удаленно)] Краткое описание: Веб-ориентированное приложение, которое предоставляет функции создания, обслуживания и изменения некоторых внутренних (Intranet) и внешних (Internet) сетевых решений (eSolutions) компании IBM согласно требованиям конечных пользователей и заказчиков. Это осуществляется посредством так называемого интерфейса "Application Modeling", а также интерфейса "Application Runtime". Конечный заказчик проекта - IBM Italia S.p.A. Роль и выполняемые задачи: Написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональных частей проекта, определяющих процессы конфигурирования и выполнения приложения для подготовки определенных сетевых решений (бизнес-логика и пользовательский интерфейс). Используемые технологии и средства разработки: * Java EE * Java Servlet, JSP, JDBC, JavaMail, iText, XML, XHTML, SQL * The Apache Struts Web Application Framework * IBM WebSphere Application Server * IBM Rational Application Developer * Checkstyle * IBM DB2 Universal Database * Concurrent Versions System ------------------------------------------------------------------------------- Июль 2004 - Проект: GME Engineering Business Systems Sustain (EBSS), май 2006 ["Дженерал Моторз Европа", "IBM Германия" (на стороне заказчика / удаленно)] Краткое описание: Цель проекта - промышленное сопровождение и обслуживание большого количества приложений для управления и контроля за бизнес-процессами производственной инфраструктуры на различных автомобильных предприятиях концерна GME, в частности на заводах компании Adam Opel AG. Конечный заказчик проекта - General Motors Europe. Роль и выполняемые задачи: Написание Java-модулей, изменение существующего дочернего исходного кода, отлов и исправление ошибок в исходном коде и выполнение сопутствующих задач; выполнение стандартных операций (сброс паролей, создание/ изменение/удаление учетных записей пользователей и др.) в режиме работы "24 на 7". Обязанности по сопровождению и обслуживанию приложений HMCS Global (система управления производственными материалами, опасными для здоровья людей) и INFO2000 и выполнению стандартных операций в режиме работы "24 на 7" для этих двух и трех других приложений посредством взаимодействия со службой GME Help Desk. Используемые технологии и средства разработки: * Sun Java 2 Platform Standard Edition (J2SE) * Sun Java 2 Platform Enterprise Edition (J2EE) * Java Swing, Java Servlet, JDBC, XML, XHTML, SQL * Apache HTTP Server * Apache JServ * Apache Ant * Eclipse Platform * IBM VisualAge for Java * Oracle Database * Concurrent Versions System ------------------------------------------------------------------------------- Февр. 2004 - Проект: IBM Web Solutions Enabler (WSE), ["IBM Италия", июль 2004 "IBM Франция" (на стороне заказчика / удаленно)] Краткое описание: Веб-ориентированное приложение, которое предоставляет функции создания, обслуживания и изменения некоторых внутренних (Intranet) и внешних (Internet) сетевых решений (eSolutions) компании IBM согласно требованиям конечных пользователей и заказчиков. Это осуществляется посредством так называемого интерфейса "Application Modeling". Конечный заказчик проекта - IBM Italia S.p.A. Роль и выполняемые задачи: Написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональной части проекта, определяющей процесс конфигурирования приложения для подготовки определенных сетевых решений (бизнес-логика и пользовательский интерфейс). Используемые технологии и средства разработки: * Sun Java 2 Platform Enterprise Edition (J2EE) * Java Servlet, JSP, JDBC, XML, XHTML, SQL * The Apache Struts Web Application Framework * IBM WebSphere Application Server * IBM WebSphere Studio Application Developer * IBM DB2 Universal Database * Concurrent Versions System ------------------------------------------------------------------------------- Нояб. 2003 - Проект: IBA Business Intelligence System (BIS), ["IBA-Гомель"] февр. 2004 Краткое описание: Веб-ориентированное приложение, которое позволяет заказчикам анализировать интеллектуальные ресурсы компании и размещать заказы по найму программистов с требуемыми знаниями и навыками. Роль и выполняемые задачи: Моделирование бизнес-логики, написание Java-модулей и выполнение сопутствующих задач. Обязанности по реализации функциональной части проекта, определяющей внутренние процессы управления, такие как управление списками заказчиков и заказов, согласие и отказ в регистрации профилей заказчиков (бизнес-логика и пользова- тельский интерфейс). Используемые технологии и средства разработки: * Sun Java 2 Platform Enterprise Edition (J2EE) * Java Servlet, JSP, JDBC, XML, XHTML, SQL * The Apache Struts Web Application Framework * IBM WebSphere Application Server * IBM WebSphere Studio Application Developer * IBM DB2 Universal Database * Concurrent Versions System ------------------------------------------------------------------------------- Сент. 2003 - Проект: IBA Database Manager, ["IBA-Гомель"] нояб. 2003 Краткое описание: ГИП-модули для управления некоторыми базами данных, разработанные с применением Java (AWT) и Си++ (Win32 API). Преимущества: быстрое добавление, получение и удаление записей в/из таблиц базы данных посредством интерфейсов JDBC/ODBC. Роль и выполняемые задачи: Написание Java- и Си++-модулей, создание и изменение таблиц базы данных. Обязанности по проекту в целом. Используемые технологии и средства разработки: * Sun Java 2 Platform Standard Edition (J2SE) * Java Abstract Window Toolkit (AWT), JDBC, ODBC, SQL * GNU Make * IBM Jikes Compiler * GNU Compiler Collection (GCC) * IBM DB2 Universal Database =============================================================================== Сент. 1999 - июль 2003, научно-исследовательская работа в Гомельском государственном техническом университете имени П. О. Сухого, Гомель, включая научно- исследовательскую работу в Международном центре теоретической физики имени Абдуса Салама, Триест, Италия (4 года) Должность: ассистент кафедры экономики и управления в отраслях ------------------------------------------------------------------------------- Нояб. 2002 - Проект: Пакеты прикладных программ линейной и нелинейной июль 2003 оптимизации для использования в учебных курсах по исследованию операций Краткое описание: Три пакета для поиска оптимальных решений: * "плотное линейное программирование" (модифицированный симплекс-метод); * "квадратичное программирование" (алгоритм проф. Клауса Шитковски); * "общее нелинейное программирование" (условная нелинейная минимизация). Роль и выполняемые задачи: Формализация тестовых задач, исследование алгоритмов математического программирования и создание соответствующих Си-пакетов. Обязанности по проекту в целом. Используемые технологии и средства разработки: * GNU Make * GNU Compiler Collection (GCC) ------------------------------------------------------------------------------- Дек. 1999 - Проект: Пакеты прикладных программ нелинейной оптимизации нояб. 2002 для использования в научно-исследовательской работе Краткое описание: * Численная Java-реализация алгоритма нелинейной оптимизации Хука и Дживса. * Численная Си++-реализация алгоритма симплекс-метода Нелдера-Мида. * Численная Java-реализация квазиньютоновского метода нелинейной оптимизации. Роль и выполняемые задачи: Формализация тестовых задач, исследование алгоритмов математического программирования и создание соответствующих Java- и Си++-пакетов. Обязанности по проекту в целом. Используемые технологии и средства разработки: * Sun Java 2 Platform Standard Edition (J2SE) * GNU Make * IBM Jikes Compiler * GNU Compiler Collection (GCC) ------------------------------------------------------------------------------- Сент. 1999 - Проект: Утилиты преобразования и визуализации данных, дек. 1999 используемые в научно-исследовательской работе Краткое описание: * Программа-шаблон для визуализации числовых данных в системе автоматизированного проектирования AutoCAD. * Утилита преобразования числовых данных в формат DXF САПР AutoCAD. Роль и выполняемые задачи: Разработка наиболее подходящих алгоритмов; создание соответствующих Си- и Си++-пакетов. Обязанности по проекту в целом. Используемые технологии и средства разработки: * GNU Make * GNU Compiler Collection (GCC) * AutoCAD Development System Runtime Extension (ADSRX) ====== Личная информация ====================================================== Дата рождения 27 июня 1977 г. (46 лет) Гражданство Республика Беларусь Семейное Холост положение Количество 2 детей ====== Разное ================================================================= Мой GitHub https://github.com/rgolubtsov Спортивные * Настольный теннис предпочтения * Уличный скейтбординг * Бег на средние дистанции * Общий фитнес vim:set nu et ts=4 sw=4: