archijarchij

Артур Степченко

Машинное обучение, интеллектуальный анализ данных, разработка ПО · Приложения · Разработка ПО · Старший (Senior)
От 2500 € · Ищу работу
Возраст: 31 год
Опыт работы: 8 лет и 4 месяца
Регистрация: 14.08.2020
Последний визит: 1 день назад
Местоположение: Латвия, Вентспилс
Войдите, чтобы посмотреть контакты пользователя

Обо мне

Опытный старший программист с богатой историей работы в сфере информационных технологий и услуг. Опытный в анализе и прогнозировании временных рядов, машинном обучении, интеллектуальном анализе данных, регрессионном анализе,  разработке ПО и языках программирования MATLAB, Java, C#, Octave, Scilab и MQL4. Профессионал с ученой степенью кандидата инженерных наук в области информационных технологий (анализ, моделирование и проектирование систем), полученной в Рижском техническом университете. 

Опыт работы

  • ООО "Baltic Technology Group"
    Вентспилс
    Старший программист в проекте "Blockchain R&D"
    Февраль 2018 — По настоящее время (2 года и 9 месяцев)
    1. Старший программист Артур Михайлович Степченко проектирует и разрабатывает систему бухгалтерского блокчейна. Это решение включает сеть блокчейна Hyperledger Fabric и клиентские приложения. Сеть работает под операционной системой Ubuntu 18.04 Subsystem for Windows и настраивается с использованием сценариев командной оболочки Unix и Docker контейнеров. Умный контракт написан на языке программирования Go, а клиентские приложения написаны на языке программирования Java с использованием программного обеспечения NetBeans IDE и платформы Java SE. Клиентские приложения взаимодействуют с сетью блокчейна с помощью фреймворков Hyperledger Fabric SDK for Java и Hyperledger Fabric Gateway SDK for Java. Каждая компания добавляется в одну из сетевых организаций. Каждая компания регистрирует своего пользователя в сети, и пользователь получает цифровой сертификат и приватный ключ, которые хранятся в формате JSON. После регистрации пользователя бухгалтеры получают право отправлять и получать счета другим компаниям. Аудиторы могут видеть счета всех компаний. Умный контракт описывает структуру счета, а также содержит цифровую подпись отправителя и получателя и хеш-значение из всех переменных счета. Значение хэша рассчитывается с использованием алгоритма SHA-256, а цифровые подписи рассчитываются с использованием алгоритма цифровой подписи на эллиптической кривой (Elliptic Curve Digital Signature AlgorithmECDSA). Когда компания создает счет, он отправляется в формате XML на электронную почту получателя. В то же время выполняется умный контракт, и счет сохраняется в блокчейне как новая транзакция, а после успешной проверки - также в NoSQL базе данных состояний (World State DatabaseLevelDB. Запись в базе данных состояний в настоящее время содержит все значения полей, кроме цифровой подписи получателя. Когда получатель получает счет в формате XML, он вычисляет хеш-значение из всех переменных счета, и если вычисленное хеш-значение совпадает с хеш-значением в базе данных состояний, получатель может утвердить или отклонить счет. Если счет принят, запись в базе данных состояний обновляется путем добавления цифровой подписи получателя. В свою очередь, приложение аудитора позволяет проверять счета проверяемой компании в формате XML по сравнению с записями базы данных состояний, а также формировать отчеты в формате PDF, используя фреймворк Apache PDFBox.

    2. Старший программист Артур Михайлович Степченко также разрабатывает систему, которая использует блокчейн для отправки платежной информации от клиента (кассы) на сервер налоговой инспекции. И клиентское приложение, и серверное приложение разрабатываются с использованием языка программирования Java , программного обеспечения NetBeans IDE и платформы Java SE. В клиентском приложении каждый чек, сохраненный в XML формате, добавляется в блокчейн как новый блок, подписывается цифровой подписью с использованием алгоритма цифровой подписи на эллиптической кривой (ECDSA) из фреймворка Bouncy Castle и отправляется на сервер. В блокчейне каждый блок содержит хеш-значение предыдущего блока, данные нынешнего чека, временную метку (timestamp) и хеш-значение от хеш-значения данных нынешнего чека плюс хеш-значение предыдущего блока. Данные чека передаются через сокеты, используя протокол пользовательских датаграмм (User Datagram Protocol, UDP) и многопоточность (Multithreading). В серверном приложении каждый полученный чек сохраняется в базе данных MySQL и затем проверяется цифровая подпись. Если проверка неудачна, сервер отправляет назад клиенту запрос отправить еще раз данные чека. После получения запроса, клиентское приложение ищет в XML файле нужный чек, и заново отправляет на сервер. Повторно данные чека могут отправлятся еще четыре раза, вместе пять раз. Если после пятого раза валидация цифровой подписи неудачна, то сервер отправляет сообщение клиенту, что валидация цифровой подписи была неудачна, и нужно вмешательство сотрудников налоговой инспекции. Серверное приложение также обеспечивает создание отчетов в формате PDF с использованием фреймворка iText.

    3. Старший программист Артур Михайлович Степченко вместе с командой разработал прототип умных контрактов для аренды недвижимости на блокчейн платформе Ethereum с использованием языка программирования умных контрактов Solidity. Прототип показывает, как умный контракт с блокчейном может сэкономить затраты, устраняя необходимость в использовании третьей стороны, обеспечивая при этом, что каждая сторона успешно соблюдает свои юридические обязательства по транзакции, а также обеспечивает безопасность, превосходящую традиционное договорное право без чрезмерного влияния со стороны.  Демо-версия веб-приложения по недвижимости для арендодателей и арендаторов разработана с использованием языков программирования HTMLCSS и JavaScript.

    Старший программист в проекте "Heat Ledger Oy"
    Апрель 2019 — Апрель 2019 (1 месяц)

    Старший программист Артур Михайлович Степченко разработал веб-приложение, которое через программный интерфейс приложения (API) подключается к Ethereum блокчейну. Через этот API можно получить такую информацию из блокчейна, как блоки в этом блокчейне и транзакции в этих блоках. Эти данные затем используются для обновления информации о депозитах получателей транзакций в базе данных MySQL. Если такого получателя в базе данных MySQL нет, то этот получатель транзакции добавляется в базу данных. Веб-приложение и API были разработаны с использованием языков программирования PHPHTML и CSS.

    Старший программист в проекте "Big Data R&D"
    Ноябрь 2016 — Май 2017 (7 месяцев)

    Старший программист Артур Михайлович Степченко вместе с командой провел классификацию покрова крон деревьев и типа землепользования, используя метод k-ближайших соседей и многоспектральные спутниковые изображения Landsat. Цифровые растровые карты покрытия крон деревьев, различия крон деревьев и вида землепользования были созданы на основе изображений Landsat с использованием программного обеспечения Quantum GIS. Для классификации и подтверждения результатов использовалось программное обеспечение MATLAB.

    Старший программист в проекте "Bitcoin ATM"
    Сентябрь 2016 — Февраль 2018 (1 год и 6 месяцев)

    Старший программист Артур Михайлович Степченко вместе с командой занимался разработкой программного обеспечения биткойн-банкомата (ATM), предназначенного для обмена биткойнов на евро и наоборот по определенному курсу. Система ATM состоит из двух частей: клиентской и частью администрирования. Клиентская программа работает как отдельное Java-приложение с графическим интерфейсом пользователя (UI). Графический интерфейс построен с использованием технологии SWING. Взаимодействие с пользователем происходит через сенсорный монитор. Когда приложение запускается, устанавливается соединение с сетью Биткойн и происходит синхронизация с блокчейном. GUI построен на основе технологии MVC с использованием специальной библиотеки EASYACTIONJ. Снятие средств через SMART Payout осуществляется с помощью специальных библиотек (.DLL или .SO в зависимости от операционной системы) и специального фреймворка JNA для доступа к этим библиотекам. Приложение взаимодействует с базой данных MySQL с помощью инструмента HIBERNATE

    ATM использует Java сокеты для обеспечения коммуникации с мобильными устройствами в формате JSON. Эта функциональность обеспечивается за счет использования фреймворков NETTY и JSON_SIMPLE. Вся необходимая работа, связанная с биткойнами, осуществляется с использованием фреймворка BITCOINJ CORE. Все остальные периферийные устройства, такие как принтер, сканер, работающие с банкоматом, используют специальный фреймворк JSSC, который обеспечивает интерфейс для доступа и управления COM-портами устройств.

    Веб-часть приложения использует Tomcat в качестве сервера приложений, Apache в качестве HTTP-сервера и разработана на Java EE. Страницы веб-частей были созданы с использованием технологий Java Servlet Pages (JSP), HTMLJavaScript. Все приложения скомпилированы и построены с использованием фреймворка Apache Maven. Тестовые наборы для всех функций создаются с использованием тестовой среды JUnit. Все участники проекта свои коды загружали в распределённую систему управления версиями GitATM работает под операционной системой RASPBIAN (на базе LINUX Jessie Debian).

  • Институт инженерных наук Вентспилсской высшей школы "Вентспилсский международный радиоастрономический центр"
    Вентспилс
    Младший научный сотрудник в области компьютерных наук в подотрасли обработки дискретных сигналов
    Февраль 2015 — По настоящее время (5 лет и 9 месяцев)

    Младший научный сотрудник Артур Михайлович Степченко занимается классификацией землепользования, используя сверточные нейронные сети (Convolutional Neural Network, CNN) и аэроортофото изображения (частотную полосу RGB).  Аэроортофото изображения разделяются на мелкие фрагменты и сжимаются, используя программное обеспечение Quantum GIS (библиотеку gdal) и скрипты Python. Плагин Zonal Statistics из программного обеспечения Qunatum GIS и скрипты Python использовались, чтобы связать каждый фрагмент аэроортофото изображений с соответствующим классом землепользования. Модели сверточных нейронных сетей разрабатываются, используя программное обеспечение Deep Learning Studio, основанное на языке программирования Python и фреймворках TensorFlow/Keras.

    Младший научный сотрудник проекта ““GEOILWATCH (Geopositional early warning system integration for marine oil spills recognition in the Baltic Sea)” of the EUSBSR Seed Money Facility"
    Июль 2014 — Март 2015 (9 месяцев)

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

    Младший научный сотрудник проекта, финансируемого программой BONUS "Geopositional early warning system for marine oil spill recognition in the Baltic Sea" (GEOILWATCH)
    Июль 2014 — Апрель 2016 (1 год и 10 месяцев)

    Младший научный сотрудник Артур Михайлович Степченко занимался разработкой алгоритмов с целью автоматизации предварительной обработки изображений первого уровня радиолокационной синтезированной апертуры (РСА) Sentinel. Язык Java и программное обеспечение NetBeans IDE и платформа Java SE использовались для реализации алгоритмов и разработки приложения предварительной обработки изображений РСА. Оба вида продукта Sentinel-1 поддерживаются в разрабатываемом приложении: Ground Range Detected (GRD) и Slant Range Complex (SLC). Также поддерживаются три режима сбора данных: Interferometric Wide Swath (IW), Extra Wide Swath (EW) и Stripmap (SM).

    Данные SRTM 3Sec использовались для геометрических поправок цифровой модели рельефа (ЦМР). Для моря, где данные о высоте отсутствуют, для получения значений высоты использовалась модель гравитационного поля Земли 1996 года. Предварительно обработанные изображения сохранялись в формате GeoTIFF, для каждой поляризации изображение GeoTIFF сохранялось отдельно. Алгоритм сжатия Lempel-Ziv-Welch (LZW) использовался для сжатия изображений GeoTIFF размером более 4 ГБ.

    Была реализована следующая процедура предварительной обработки: удаление теплового шума, de-bursting, multilooking, обратное геокодирование Доплера, абсолютная радиометрическая калибровка и нормализация угла падения.

    Младший научный сотрудник проекта “Потенциал и конкурентоспособность биомассы как источника энергии в центральном регионе Балтийского моря“ (Чистая биомасса)
    Апрель 2012 — Декабрь 2013 (1 год и 9 месяцев)

    Младший научный сотрудник Артур Михайлович Степченко вместе с командой провел оценку и картирование надземной биомассы, биоэнергии и параметров инвентаризации лесов для Курземского региона в Латвии с использованием методов обработки бортовых и спутниковых данных. Для расчетов использовался язык программирования MATLAB. Программное обеспечение NEST использовалось для предварительной обработки изображений радиолокационной синтезированной апертуры (РСА), программное обеспечение FUSION использовалось для обработки данных LiDAR, а программное обеспечение FugroViewer использовалось для визуализации данных LiDAR. Цифровые растровые карты создавались с использованием программного обеспечения Quantum GIS.

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

  • Вентспилсская высшая школа
    Вентспилс
    Приглашенный доцент
    Февраль 2020 — Июнь 2020 (5 месяцев)

    Проводить практические занятия по учебному курсу "Теория вероятностей и математическая статистика в компьютерной науке".

  • ООО "Forest Sector Competence Centre of Latvia"
    Вентспилс
    Младший научный сотрудник проекта “Определение параметров инвентаризации лесов для заросших сельскохозяйственных угодий и не инвентаризованных лесных площадей с использованием методов дистанционного зондирования“
    Апрель 2014 — Сентябрь 2015 (1 год и 6 месяцев)

    Младший научный сотрудник Артур Михайлович Степченко вместе с командой провел классификацию параметров леса (запас древостоя, доминирующие виды деревьев и тип леса) с использованием метода k-ближайших соседей, мультиспектральных спутниковых изображений Landsat и ортофотоснимков. Цифровые карты параметров леса были разработаны с использованием результатов классификации и программного обеспечения Quantum GIS. Для расчетов использовался язык программирования MATLAB.

    Были проведены исследования по выявлению источников ошибок для улучшения интерпретации данных дистанционного зондирования. Исследованы возможности автоматизации методов обработки данных дистанционного зондирования и автоматического определения внутренних параметров алгоритмов.

Высшее образование

  • РТУ-Рига

    Рижский технический университет
    Компьютерных наук и информационных технологий
    Сентябрь 2014 — Ноябрь 2019 (5 лет и 2 месяца)

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

    Специализация: информационные технологии.

    Предметы:

    • Интеллектуальные компьютерные технологии.
    • Концептуальные аспекты объектно-ориентированного программного обеспечения.
    • Интеллектуальные системы поддержки принятия решений.
    • Искусственные нейронные системы в обработке информации.
    • Эволюционные и генетические алгоритмы.
    • Научные семинары по специализации.
    • Научная работа.

    Тема диссертации: Разработка системы прогнозирования нелинейных и нестационарных временных рядов нормализованного относительного вегетационного индекса.

    • VEA

      Вентспилсская Высшая Школа
      Вентспилс · 1 выпускник
      ИТ
      Сентябрь 2011 — Июнь 2013 (1 год и 9 месяцев)

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

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

      Предметы:

      • Уравнения математической физики.
      • Общая астрономия.
      • Численные методы алгебры (Scilab).
      • Основы геофизики.
      • Спецкурс высшей математики.
      • Численные методы анализа (Vensim).
      • Основы дистанционного зондирования.
      • Пространственная статистика.
      • Вариационные вычисления (Vensim).
      • Численные методы оптимизации (MATLAB).
      • Инструменты MATLAB.
      • Методы интерпретации и классификации (Scilab).
      • Цифровая картография и ГИС (Quantum GIS, Arc GIS).
      • Информационные системы управления географическими ресурсами.
      • Цифровые процессоры изображений (MATLAB).
      • Методы сжатия изображений (MATLAB).
      • Беспроводные технологии.
      • Спутниковые методы навигации.
      • Цифровая обработка изображений.
      • Введение в радиоастрономию.
      • Микроволновое зондирование.
      • Компьютерная графика (C#).
      • Программирование численных методов (MATLAB).

      Тема магистерской работы: Определение биомассы леса с помощью изображений РСА.

      ИТ
      Сентябрь 2008 — Июнь 2011 (2 года и 9 месяцев)

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

      Специализация: компьютерные науки.

      Предметы:

      • Математический анализ.
      • Математическая логика.
      • Объектно-ориентированное программирование (C++).
      • Физика.
      • Линейная алгебра и аналитическая геометрия.
      • Электроника.
      • Дифференциальные уравнения.
      • Анализ и проектирование информационных систем.
      • Численные методы (Scilab).
      • Инструменты и среды разработки программного обеспечения.
      • Английский язык.
      • Программирование (C++).
      • Моделирование хаотических процессов.
      • Объектно-ориентированное моделирование.
      • Языки визуального программирования (C#).
      • Основы компьютерных наук.
      • Теория алгоритмов.
      • Основы экономики.
      • Методы оптимизации.
      • Основы отраслевого права.
      • Веб-программирование JAVA.
      • Дискретная математика.
      • Структуры данных и основные алгоритмы.
      • Теория вероятностей и математическая статистика.
      • Основы бизнеса.
      • Операционные системы.
      • Технологии баз данных (MySQL).
      • Веб-технологии (PHP, JavaScript, HTML, CSS).
      • Охрана труда и эргономика.
      • Протоколы связи.
      • Проектирование и администрирование ЛВС.
      • Сетевые операционные системы.
      • Архитектура и структура компьютерных систем.
      • Математическое моделирование (Scilab).
      • Системы автоматизированного проектирования.

      Тема бакалаврской работы: Программирование автоматического позиционирования антенны в реальном времени для приема спутниковых сигналов.