Резюме

Read in English

Степан Захаров

Решаю наукоёмкие задачи бизнеса. В прошлом научный сотрудник и фрилансер. Физтех — навсегда.

За плечами более 8 лет опыта в R&D проектах и науке, к.ф.-м.н.

stepanzh@gmail.comt.me/red_deer

Контактыstepanzh@gmail.comt.me/red_deer

Я в сетиLinkedInGoogle ScholarGitHubПропорциоt.me/stepanzh_blog

Языки ⋅ Русский ⋅ Английский

Ключевые навыки

  • Моделирование и исследования. Постановка задач, упрощение моделей, солверы (решатели), отчёты. Уравнения в частных производных, дифференциальные уравнения, линейная алгебра, оптимизация, некорректные задачи.
  • Вычисления. Высокопроизводительные вычисления, вычисления на центральных и графических процессорах. Многопоточные вычисления, Nvidia CUDA.
  • Физика. Многофазные течения, фазовое равновесие в флюидах, термоупругость, пористая среда.
  • Программирование. Архитектура программного обеспечения, валидация, распространение, документация. Научные программы, инженерные программы и программы для массового пользователя. Julia, Python, C/C++, C#, Windows, Linux, MacOS.
  • Управление. Управление командой до 6 человек. Управление знаниями команды до 15 человек.
  • Преподавание. Составление курса, руководство преподавателями, обучение совершеннолетних, подготовка материалов и инструкций.

Профессиональный опыт

Старший инженер · R&D · Huawei Russian Research Institute via Coleman Group

Москва, Россия ⋅ Июнь 2024 – Декабрь 2025

  • Разрабатывал солвер и сопутствующее ПО для расчётов методом конечных элементов. Участвовал в разработке архитектуры и сборе требований, планировл интерфейсы для соседних команд, тестировал производительность бэкендов для линейной алгебры. Стек: С/С++, Eigen, HDF5, gtest, Julia, scientific Python 3.
  • Разработал высокопроизводительные коды численной линейной алгебры, чтобы уложить имеющиеся у команды солверы в KPI по быстродействию и точноcти. Искал и исследовал лучший софт по теме (40+ библиотек), составил и распространил рекомендации для команды. Стек: C, Julia, scientific Python 3, multi threading, cache-friendly, GPGPU (CUDA), heterogeneous programming.
  • Разработал отказоустойчивый солвер для плохообусловенной задачи оптимизации (poorly-conditioned constrained quadratic programming). Стек: Julia, multi threading.
  • Внедрил и поддерживал базы знаний по двум проектам в команде из 15 человек. Цели: улучшить коммуникацию внутри команды и со штаб-квартирой; формулировать научно-корректные задачи, которые отвечают требованиям штаб-квартиры; упростить подготовку отчётов.
  • Руководил (3 человека в команде) подготовкой и проведением курса по языку программирования Julia с фокусом на R&D задачи. С двумя коллегами провели двухмесячных курс для (примерно) 30 сотрудников. Стек: Obsidian, Julia, Quartz SSG.
  • Менторил одного коллегу.

Научный сотрудник · Наука · Объединённый институт высоких температур РАН

Москва, Россия ⋅ 2017 – 2024

  • Исследовал влияние ретроградной конденсации на течения нефтей в пористой среде (фильтрация). Разработал решатели для динамики флюидов (газ и жидкость) в углеводородных смесях (метод конечных объёмов и элементов, МКО, МКЭ). Искал новые способы добычи газовых конденсатов.
  • Исследовал фазовое равновесие в природных смесях углеводородов. Разработал быстрые и отказоустойчивые алгоритмы расчёта фазового равновесия в изохорной и изобарной постановках (нелинейная условная оптимизация и нелинейные системы уравнений). Спроектировал архитектуру программ таким образом, что они могут использовать любое уравнение состояния вещества (например, уравнение Пенга-Робинсона или SAFT-уравнение).

Инженер-программист · Электроника · НПП Детектор

Дубна, Московская область, Россия ⋅ 2022 – 2024

  • Собрал требования, разработал программное обеспечение и пользовательский интерфейс для удалённого управления источниками питания для автоматизации лабораторных исследований. Функционал: ручное и сценарное управление, поддержка нескольких производителей источников питания (разные сетевые интерфейсы, разные наборы команд). Занимался поддержкой приложения и документацией. Стек: Windows 10, C#, .NET Core, Sockets, Serial, asynchronous programming, dependency injection, WPF, CommunityToolkit.MVVM, Figma. Тестировал WinUI 3, но на тот момент (2024) WPF оказался надёжнее.
  • Собрал требования и автоматизировал подготовку печатных отчётов с данными проведения лабораторных экспериментов. Нагрузка ~150 отчётов каждый квартал, portable офлайн приложение под Windows 7 и 10, валидация входных данных, документация для пользователя. Стек: Python 3.6, sqlite3, xlsx, jinja2, wkhtmltopdf, tkinter, Figma.

Преподаватель · Высшее образование · Московский физико-технический институт

Долгопрудный, Московская область, Россия ⋅ 2019 – 2023

  • В соавторстве составил и затем преподавал курс по вычислительной теплофизике (термодинамике) для студентов 4-го курса, основанный на моём опыте и опыте научного руководителя в ОИВТ РАН. Написал материалы для курса. Стек: Python 3, Julia, Jupyter Books, Docker, Ubuntu, git, make.
  • Преподавал классический годовой курс по алгоритмам и структурам данных для студентов первого курса, Python 3. Составлял новые задачи, дорабатывал существующие, публиковал контесты через ejudge. На второй год преподавания распределял подготовку домашних заданий между 5 преподавателями.

Образование

Аспирантура · Московский физико-технический институт

Факультет молекулярной и химической физики ⋅ 2019 — 2023

Тема диссертации: Алгоритмы расчёта фазовых диаграмм флюидов на основе численной оптимизации. Защищался в Объединённом институте высоких температур РАН. Я кандидат физико-математических наук по специальности «теплофизика и теоретическая теплотехника».

Стажировка · Институт проблем безопасного развития атомной энергетики

Лаборатория вычислительной теплогидродинамики · 2017 — 2018

Тема стажировки: вычислительная гидродинамика многофазных течений.

Магистратура · Московский физико-технический институт

Факультет молекулярной и химической физики ⋅ 2017 — 2019

Дипломная работа посвящена расчётам двухфазных течений углеводородов в пористой среде.

Бакалавриат · Московский физико-технический институт

Факультет молекулярной и химической физики ⋅ 2013 — 2017

Дипломная работа посвязена расчётам изобарного-изотермического фазового равновесия в смесях углеводородов.

Некоторые проекты

Пропорцио

Мне нравится готовить. Когда я учился на старших курсах и в аспирантуре, то часто пробовал новые рецепты. Но их приходилось пересчитывать на меньшие порции, а это утомительно. Хороших приложений для этого я тогда не нашёл и создал Пропорцио.

На момент 2025Q3, у Пропорцио 200 активных пользователей. Я получил 10K₽ донатов, 40 ответов на опросы и отзывов, плюс провёл несколько пользовательских интервью. Работая над Пропорцио, я осваивал методологию Lean, дизайн пользовательских интерфейсов и Vue 3.

Учебный курс по вычислительной теплофизике

Студенты МФТИ, выбравшие наш научный отдел ОИВТ РАН, не были знакомы с численными методами, которые мы используем в научной работе. Курс должен был устранить этот пробел в знаниях. Первый план курса подготовил мой научный руководитель, а я подготовил материалы, улучшал их и обучал студентов три года.

В течение проекта, я прокачал навыки преподавания, научился составлять понятные материалы для занятий и фокусироваться на сути. Также, я познакомился с Docker.