Финансовые технологии

  • информатика
  • математика
  • Дает 100 баллов на ЕГЭ

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

  • мобильные устройства позволяют нам выполнять банковские операции без посещения офиса банка;
  • связность людей посредством peer to peer технологий ускоряет запуск новых проектов посредством краудфандинг компаний, заменяет страховые и кредитные организации позволяя сообществу людей самоорганизовываться для совместного управления капиталом;
  • банкоматы начинают идентифицировать клиентов в лицо, обеспечивая безопасность операций;
  • персональные программы-ассистенты заменяют живых консультантов — дают рекомендации по сохранению и приумножению благосостояния, следят за вашим здоровьем, определяют наиболее успешные стратегии проведения сделок, упрощают проведение переговоров;
  • технологии распределенного реестра (блокчейн) обеспечивают отсутствие посредников при проведении торговых сделок, позволяют проверять чистоту сделок с недвижимостью, автомобилями, заменяют юристов и нотариусов на умные контракты;

Банки и операторы связи видоизменяются, становясь чисто ИТ-компаниями. Новые компании и небольшие группы энтузиастов, умеющие решать современные задачи современными инструментами, внезапно начинают влиять на мировую экономику.

Поэтому новый профиль «Программная инженерия финансовых технологий» Олимпиады НТИ позволяет участникам почувствовать участникам себя частью стартап движения – тех, кто может создавать актуальные проекты на переднем крае технологий!

Этот профиль включен в перечень Российского совета олимпиад школьников и приносит бонусы при поступлении в вузы (какие конкретно — зависит от правил приема вуза).

Команда должна состоять из 2-3 человек. Условное распределение по ролям:

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

Разработчик

Университет Иннополис

Отборочные этапы

Во втором этапе Олимпиады НТИ участникам предстоит решить несколько задач по программированию и математике.

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

Для решения задач по математике участникам придется изучить некоторые разделы статистики и теории вероятности, линейной алгебры, математического анализа

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

Заключительный этап

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

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

Материалы для участников

Требования к знаниям участников:

  • математика: начальные главы аналитической алгебры, геометрия, комбинаторика, отдельные разделы теории чисел, статистики и теории вероятности, теории графов и линейной алгебры;
  • информатика: кодирование и декодирование информации, структуры хранения и обработки данных, комбинаторные алгоритмы, алгоритмы перебора и сортировки, обработки графов, обработка строк, битовые операции;
  • специальные знания в области информатики: ООП, алгоритмы обработки графической информации, алгоритмы машинного обучения на размеченных данных, отправка и обработка REST-запросов.

Требования к практическим навыкам и компетенциям:

  • написание элементов ПО для решения конкретной задачи;
  • декомпозиция задачи;
  • использование парадигм ООП для написания программного обеспечения;
  • настройка узла сети Ethereum в разных конфигурациях: простой узел, настройка тестовой сети с PoW или PoA консенсусом;
  • пользование JS-консолью сети Ethereum: создание адресов, перевод средств, извлечение данных;
  • извлечение данных из пула транзакций сети Ethereum, блоков, транзакций;
  • написание Python приложений для работы с узлами сети Ethereum;
  • работа с базовыми командами консоли Linux, запуск процессов в фоне, остановка фоновых процессов, перенаправление ввода и вывода;
  • получение изображения с камеры, автоматическая обработка изображения для подготовки его к использованию в системах биометрии;
  • выделение ключевых элементов для получения данных достаточных для работы биометрической системы;
  • настройка биометрической системы с использованием данных первичного накопления;
  • работа с простыми базами данных: базовая настройка, внесение информации, поиск информации;
  • анализ наборов данных, определение закономерностей в этих данных;
  • построение моделей машинного обучение, верификация моделей
  • выявление ключевых характеристик в наборах “грязных” данных, позволяющих улучшить результативность моделей обучения;
  • умение использовать один из следующих наборов функций для обнаружения и идентификации по лицу: Google Faces API, Microsoft Face API, Amazon Rekognition
  • использование итеративного процесса разработки;
  • использование систем версифицирования исходного кода для командной разработки программного обеспечения.

Soft skills

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

Рынки НТИ

  • FinNet
  • SafeNet