kobdaurova_cover_big

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

Какую роль играют интерфейсы в ранней разработке препаратов? Обязательно ли иметь научный бэкграунд, чтобы попасть в IT-комьюнити? Об этом B—News рассказала Маша Кондаурова, руководитель Группы разработки интерфейсов в Департаменте вычислительной биологии. А еще мы попросили Машу рассказать ее личную историю о том, как она оказалась на этом месте и как справляется с кучей задач.


Сделать удобно — главная цель, к которой мы стремимся

Однажды мне попалась вакансия разработчика интерфейсов в BIOCAD. Я знала, что это отечественная компания, занимающаяся разработкой лекарственных препаратов. «И зачем им пилить фронт?» — подумала я и отправила резюме. Вскоре приняла оффер, так началась взаимная любовь с BIOCAD. Но давайте по порядку.

В Департаменте вычислительной биологии есть Группа разработки интерфейсов, цель которой — создавать юзерфрендли-оболочки для внутренних продуктов. Один из них — маркетплейс различных биоинформатических инструментов и алгоритмов, которые помогают людям решать их задачи в лабораториях, применяя биоинформатику к разработке лекарственных препаратов. Например, такие инструменты позволяют преобразовать аминокислотную последовательность белка в нуклеотидную — и наоборот. Или проверить и сформировать документы и помочь с обработкой данных из научных статей (зачастую информация в чужих научных статьях представляется в виде нечитаемых картинок).

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

Приведу пример, как у нас выглядит стандартная разработка препарата на основе моноклонального антитела.

Шаг 1. Выбираем мишень — антиген, с которым хотим помочь организму справиться, чтобы человек выздоровел.

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

Шаг 2. Берем безопасную часть этого антигена и вводим в кровь ламы, иммунитет которой нарабатывает нужные нам антитела.

Важно отметить, что процедура не вредит жизни и здоровью ламы. Этот процесс можно сравнить с мелким порезом, как, например, кто-то ел малину с куста и случайно укололся. В ранку попадает что-то чуждое организму (грязь, бактерии и тому подобное), и наш иммунитет воспринимает это как антиген и начинает на него реагировать — вырабатывать антитела. Если же такой процесс происходит намеренно — в рамках медицинской процедуры, — это уже будет называться иммунизацией.

Маша в ламовнике BIOCAD


Кстати, иммунизировать можно не только ламу, но и мышку, и кролика, и верблюда, и даже акулу. Но в любом случае мы не можем «загрузить» полученное антитело сразу в человека, так как наши антитела отличаются от антител животных по структуре. Антитело нужно гуманизировать, то есть сделать более близким к человеческому.

Антитела — сложная 3D-структура. Каждая отдельная аминокислота, из которой состоит это антитело, обладает какими-то свойствами. Например, может отталкивать или притягивать воду. И если заменить хотя бы одну из них, легко можно все сломать или, наоборот, добиться нужных свойств. Это и есть работа структурных биоинформатиков — дорабатывать цепочку антитела для лучшей сцепки с антигеном. И здесь, чтобы было полегче, мы стараемся помогать всеми возможными способами.

3D-структура антитела и аминокислотная последовательность, которая внутри антитела


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


Чтобы дизайнить антитело, очень много приходится «работать глазами», считывая большие объемы информации. У нас даже появился мемный термин — «высокоточная глазометрия». И как раз одна из задач фронтенда — уменьшить применение этого метода измерения.


Интерфейсы окружают нас повсюду и играют ключевую роль в том, как мы взаимодействуем с цифровыми продуктами. Даже сейчас, читая эту статью, вы смотрите на экран. Хорошо продуманные элементы дизайна, навигация, адаптивность и верстка напрямую влияют на то, насколько удобно и понятно работать с контентом — то есть формируют пользовательский опыт, а значит, и успех продукта в целом. С развитием «диджитализации» потребности и ожидания пользователей сильно выросли, поэтому сегодня наравне с содержанием важна и подача. А подача — это интерфейсы.

У нас продукты внутренние, но чтобы они приносили максимум пользы, фронтенд играет немаловажную роль.

За каждым функционалом в продукте стоит совместная работа дизайнеров, аналитиков, бэк- и фронт-разработчиков, тестировщиков. Сам по себе фронт без бэка не принесет много пользы — как, впрочем, и наоборот.

Графическое представление антитела


Но так как сегодня мы обсуждаем, чем занимается моя команда, то говорим про создание самих интерфейсов. Часто нужно графическое представление антитела с какими-то модификациями, которые были внесены, — например, чтобы вставить в презентацию доклада. Где его взять? Можно самому нарисовать, но зачем? Мы сделаем в интерфейсе кнопочку, которая будет скачивать красивую картинку. И люди будут тратить меньше времени на визуализацию.

Или можно сделать поиск, который будет искать среди всех наших белков — по кусочку последовательности или даже по одной букве из архивных данных. Можно будет понять, кто загрузил, когда загрузил, где использовал это антитело. Многостраничные отчеты превращаем в «отчетики» — делаем их визуально компактнее и понятнее, добавляем инфографику, чтобы пользователь мог быстро сориентироваться в большом объеме информации.

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


Ничего не понятно, но очень интересно

В Направлении ранней разработки препаратов есть не только научная работа и производственная деятельность, требующая соответствующего образования. Есть еще программирование, дизайн и многое другое. Совсем не обязательно быть биологом, чтобы попасть к нам. Но важно, чтобы эта область науки вызывала интерес, потому что в любом случае придется погружаться в контекст.

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

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

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

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


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

Для «кросс-опыления» внутри есть даже традиция: по пятницам коллеги из разных отделов — ML-щики, структурные биоинформатики, фронтендеры — делятся друг с другом незнакомой информацией. Недавно, например, структурный биоинформатик читал лекции по физике. Это было классно. Ничего не понятно, но очень интересно. Вообще, эта формулировка отлично описывает мои ощущения, которые я до сих пор испытываю, работая в Департаменте вычислительной биологии.


Как экономист стал фронтендером

В программирование я пришла не сразу. Я люблю компьютерные игры, поэтому мне всегда была интересна эта сфера. Волею судеб я отучилась на экономиста и в какой-то момент вдохновилась знакомым, который тогда работал верстальщиком. Верстальщик — это самая начальная ступень в интерфейсной разработке, когда ты просто собираешь внешний вид сайта без накручивания на него логики. Ради интереса решила попробовать — и как-то затянуло. Сначала меня привлекало не столько само программирование, сколько возможность делать что-то красивое. Дизайнер рисует макет, а я с помощью кода воплощаю его в виде приложения, которым будем пользоваться человек.

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

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

Делегировать = отдавать + доверять.


Первое время было тяжело принять тот факт, что теперь я меньше пишу код. Много времени стало уходить на помощь ребятам: проконсультировать, посмотреть их код. Потом начинаешь привыкать к тому, что теперь твоя ответственность — обеспечивать комфортную разработку для команды и помогать им, в том числе решая инфраструктурные задачи.

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


Я пытаюсь усидеть на двух стульях: оставляю себе не очень срочные задачки на разработку и делаю их в спокойном темпе. Со временем мне удалось смириться с тем, что сегодня я могу не написать ни строчки кода — потому что декомпозирую задачи для ребят или помогаю консультациями. Есть задачи, которые другие могут выполнить ничуть не хуже меня. Это вопрос времени — и тут приходится учиться делегировать: отдавать и доверять.


Как специалисту развиваться не только внутри компании: митапы

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

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


В итоге я выступила. Надо сказать, получился неплохой доклад. И все — меня затянуло. Потом был подкаст с моим руководителем, потом еще выступление. Я почувствовала, что в конференциях есть свой драйв: куча людей с общими интересами в одном месте — общаются, получают информацию, задают вопросы спикерам. Захотелось еще больше такой активности. Зная, что у нас в Питере есть несколько профессиональных сообществ, решила попробовать присоединиться к одному из них. Так я сначала оказалась в команде организаторов PiterJS, а потом перешла в SPB Frontend. Теперь мы вместе организуем мероприятия.


Существует ли work-life balance?

Если говорить о том, откуда берется вдохновение и драйв, все просто: мне нравится, что я делаю пусть и небольшой, но нужный вклад в общее дело. Разработка препаратов может длиться 5–7 лет, и наша задача — сократить часть рутины и помочь людям на самом раннем этапе разработки лекарственного препарата. От этого я действительно испытываю радость.

Вообще, это настоящая магия: ты пишешь код — и он превращается в то, что видит пользователь.


Это и есть магия программирования: ты можешь написать несколько строк, которые заставят машинку проехать сколько-то метров. И это безумно круто! А под всем этим — двоичный код, нолики и единички. Это круто.

Но если ты очень сильно любишь свою работу, то в какой-то момент она может незаметно занять слишком много места в жизни — и ты уже жертвуешь какими-то другими ее аспектами. Поэтому тот самый work-life balance действительно важен. Периодически приходится заставлять себя останавливаться или прибегать к сторонней помощи, чтобы отвлечься. И тут очень выручают хобби.


Я занимаюсь историческим фехтованием — на время тренировки удается полностью отключить мозг от рабочих задач. Спорт — это вообще отличный способ сменить контекст, а заодно и поддержать здоровье. Еще я крашу миниатюры для настольных игр, сама играю в настолки и вяжу. Так и балансирую между работой и отдыхом. Но дается это непросто — я как загорелась миссией BIOCAD, так до сих пор ей и горю во всех смыслах. Приходится учиться управлять временем и правильно расставлять приоритеты.

МЫ ИСПОЛЬЗУЕМ ФАЙЛЫ COOKIE
Мы используем cookie для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера. Подробнее