Skip to the content.

Российская Академия Наук

Должность: студент-разработчик C++

Время работы: 2017-02 → 2019-07

⚠️ в РАН я работал не официально, т.к. пришёл туда в качестве приглашённого перспективного студента, будучи обучающимся в АФСБ.

Технологический стек

Участие в разработке

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

Подавляющее большинство задач сводилось к написанию программ для кластерных вычислителей, с использованием библиотек MPI и OpenMP, смысл которых – сбор, обработка и анализ статистических данных. Конкретно данные имели самую разную классификацию: от научных, полученных в результате проведения экспериментов, до данных экологической и социальной статистики. Большой объём времени занимала задача визуализации данных и результатов анализа.

Обязанности и зона ответственности:

Персональный вклад

В каждом из проектов я принимал полноценное участие на всех этапах разработки ПО: выработка требований → решение поставленной задачи → тестирование полученных результатов → анализ и учёт обратной связи от сотрудников РАН.

API для унификации написания программ сбора статистики с Суперкомпьютерного Центра (СКЦ)

Внёс существенный вклад в разработку API, которое реализует технологию MapReduce, привнося в неё некоторые специфические особенности, продиктованные областью применения и характером архитектуры СКЦ; смысл же, сводится к тому, чтобы предоставить множеству отделов РАН, производить параллельные вычисления на мощностях СКЦ, путём написания программ, согласованных с унифицированным интерфейсом, не вдаваясь в технические детали вычислительного оборудования. Особенно важными нюансами в разработки, можно выделить: (1) в архитектуру приложения заложена гибкость рода смены конфигурации СКЦ; (2) написание приложений, связанных со сбором статистики, при использовании, данного API, подразумевает кодирование настолько минимальное, что большинство приложений, подобного рода, укладываются в 100 строк C++.

Программа автоматизации управления документооборотом

Мною была написана программа, предназначение которой осуществлять конвертацию данные из БД (Postgres) и/или Excel-таблиц в Word-документ(ы), которые предоставляются для отчётности. Для данного проекта был реализован графический модуль с использованием Qt5.

Проект распределённой базы данных на технологии блокчейн

Исключительно научно-тестовый проект, который разрабатывался мною в качестве ответа на вопрос «есть ли смысл так делать?», суть которого можно описать так: используя технологию блокчейн (разработка велась на платформе Ethereum) создать распределённую БД между всеми институтами РАН, в которой бы фиксировались открытые научные факты и научные достижения российских учёных и/или коллективов и/или институтов.

Личная оценка плюсов и минусов работы в компании

По факту, это было моим первым местом работы, а потому дать объективную оценку весьма сложно, разве что много лет спустя, после опыта работы во многих иных местах.
И так: РАН – это весьма консервативная организация, большинство сотрудников которых (на момент 2017 года), это почтенные члены-корреспонденты РАН, учёные, профессора, опыт которых бесценен, однако опыт без какой-либо корректировки на тенденции современного мира. К примеру, «да», установленные компиляторы позволяли использовать 14-ый стандарт C++, однако менторское искусство ограничивалось стандартом не выше 03-его, отчего все новые практики привносились исключительно студентами, вроде меня. Наличие же задач, необходимых к решению – это прямое следствие нежелания руководства посмотреть во внешний мир в поисках уже существующего решения.

И всё же, я всегда буду любить РАН, потому что именно здесь мне реально поставили боевую задачу реализовать Дерево Фибоначчи.

Плюсы:

Минусы: