Как я в биотехе работал

 Публичный пост
6 декабря 2021  2089
Как же я ору ОХУЕННО ⨯2

Здраствуйте. Я, Егор. Хотел бы чтобы вы сделали домейн, биотех суть такова... Программист может писать алгоритмы, автоматизацию научных посудомоек и парсеры человекочитаемых CSV. И если пользователь пишет алгоритмы ну то графы в MIP, переговорки деревяные набигают биологи и менеджеры. Можно поехать кукухой... И биологи раз не инженеры то сделать так что там густой лес вместо айти... А зарплаты можно поставить так что вдали как в FAANG, когда подходиш они ниже рынка

Дело в том, что последние два года я работал в одном биотех-стартапе.

То, что началось, как полуслучайное приключение, закончилось однозначно лучшими двумя годами моей карьеры, работой над самыми интересными и сложными проектами (прости, Яндекс, но вообще не близко), пониманием, что "сложный домейн" и "умные люди" не помеха полному техническому бардаку и титаническим костылям, осваиванием тонны карьерно-нерелеватных технологий и даже почти попыткой ответить на вопрос "а если вы такие умные, то почему у вас ничего не автоматизированно?".

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

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

Как войти в биотех

Вошел я туда практически случайно, мне предложили пособеседоваться туда ребята из рекрутингового агенства (не является инвестиционной рекомендацией, хотя ребята в целом классные и толковые, пусть и британцы), с которым тогда плотно общался на тему лондонских вакансий. Вакансия была "одной из", но сразу привлекла мое неискушенное real stuff'ом внимание среди толпы безликих финтечей и хай фриквенси ООО "Лабеан"ов. Звали меня на позицию Senior Software Engineer, в описании вакансии и правда не было практически ничего про биологию (кажется, было что-то типо "было бы неплохо", но никаких твердых требований).

Перед собеседованиями я знал, что:
а) это "биотех", при этом значение слова "биотех" я не до конца понимал (привет, @Maximus)
б) они делают какие-то "инструменты для биотеха"
в) с инвестициями все более-менее хорошо
г) ну там типа докинз кароч иволюция от обизян мы короч а еще типа клетки там делятся из бЕлок собираются и шоб бицуха расла надо белки пить тип (немного не дотянул до PhD, одном словом)

Буквально
Буквально

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

На первом интро-звонке мне рассказали, что:
а) половина компании PhD+ по биологии/химии, вторая половина инженеры и коммуникация первых со вторым is a key
б) что пилят они "операционную систему и визуальный язык программирования для лабораторий и биологических экспериментов" (што)

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

Дальше были собеседования. Все они были технические, немного душноватые, с большим количеством вайтборда (6 или 7 задач, но из них только одна на DP), систем дизайном и нулевым количеством вопросов про биотех. Почему так? Ответ прост -- в начале формирования инженерной команды были нанята парочка ex-Facebook ребят, которые притащили с собой state-of-the-art-лучший-в-мире процесс собеседования (/s). После я пытался немного бороться с этим процессом, но про это как-нибудь в другой раз.

В итоге, да, у меня не спросили вообще ничего про биологию. Зато на онсайте в Лондоне показали настоящую биологическую лабораторию, дали надеть халат и очки!

В итоге, для вхождение в биотех мне понадобилось:

  • одно рекрутинговое агенство
  • один software-focused биотех стартап
  • какой-никакой скилл прохождения собеседований
  • какой-никакой скилл торговли и выбивания бенефитов (подробнее)
  • ноль знаний биологии
  • ноль релеватного опыта в домейне

Где работать в биотехе

Выше я говорил, что слабо представлял себе, что означает слово "биотех".

Оказалось, что под словом "биотех" скрывается борхесовская классификация всего от модного стартапа с вот таким корпоративным стилем

Perfomance Review Be Like
Perfomance Review Be Like

...до высасывающего душу и забирающего в рабство твоих детей корпората, который хуже FAANGа и немецких концернов по промышленной продаже штанов
играет композиция G.S.K. вокально-инструментального ансамбля Squid
играет композиция G.S.K. вокально-инструментального ансамбля Squid

Для ориентации в пространстве биотеха есть вот такая картинка (она, правда, про cell & gene therapy, в основном, но категории кажутся +/- универсальными):

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

  • Hardware/RnD отдел большого корпората: скучно-стабильно, пишешь парсеры человекочитаемых CSV, через пять лет получаешь повышение и начинаешь дизайнить человекочитаемые CSV
  • Модный дерзкий digital transformation disruptive startup: от откровенного скама чтобы набрать классы и инвестиции, то вполне себе серьезных продуктов, которые меняют все к лучшему. Choose wisely!

Все остальное, все же, имеет под собой чуть больше домейн ноледжа, чем доступно у Докинза и Аси Казанцевой.

Как работать в биотехе

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

Основной продукт -- что-то вроде CAD/визуального ЯП, в котором из лего-ноу-зиро-код-кубиков можно себе что-то напоминающее биологический эксперимент собрать.

КУБИКИ НОУ КОД АВТОМАТИЗАЦИЯ
КУБИКИ НОУ КОД АВТОМАТИЗАЦИЯ

Потом эти кубики превращаются в "программу", которую можно исполнить на одном или нескольких из поддерживаемых роботов (физических, настоящих, да). После исполнения результаты загружаются в систему и их можно проанализировать. Wow such science.

Например такой работ будет исполнять результат наших кубиков
Например такой работ будет исполнять результат наших кубиков

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

Для затравки, пара примеров сложных задач, которые мы решали:

  • Написать MIP алгоритм аллокации нужного количества жидкостей, минимизирующий все, что можно. Понять, что сложно-выключай, перейти на MiniZinc и constraint modeling.
  • Что делать, если мы хотим N девайсов? Graph partitioning go brrr.
  • А если мы хотим экспериментальный второй фронтенд, чуть менее лоу-ноу-зиро-кодный? Bytecode DSL go brrr transpilers go wrrrrrrrr.

Но, как и везде в айти, были вещи и менее поэтичные:

  • Парсеры человекочитаемых CSV.
  • Автоматизация оборудования с классными интеграциями в WSDL, ActiveMQ, программами как таблицами в Sqlite (я бы хотел, чтобы это было шуткой, но нет), UI в WinForms.
  • Немного джейсон-протобуф-мешалок.

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

Дополнительно скажу, что на таком уровне ответственности и сложности внезапно понимаешь, что весь этот agile булшит с выкатками по десять раз на дню, неверифицируемым ничем, кроме юнит-тестов и отсутствием какого-никакого design upfront просто не работает ни на чем серьезнее интернет-магазина. Это очень отрезвляет и заставляет немного иначе смотреть на вещи. Было несколько ситуаций, когда "сначала сделали, потом рассказали и подумали" оборачивалось не лучшим результатом.

В добавок к такой essential сложность проблемной области и продукта, биотех с горой насыпает accidental сложности. И тут начинается срыв покровов и цыганский табор.

Как устроено айти в биотехе

Если вам кажется, что эти ваши биотехи это такие снизу-доверху напичканные техникой, CADами и автоматикой концерны, то curb your enthusiasm. Ну правда, если какой-нибудь automotive смог, то почему биологи не могут? Но по тому что я видел и слышал, сложилось впечатление, что технологический прогресс до биологии как-то не дошел, а там где дошел, сделал это весьма специфично.

Итак, хот тейки (половину из которых в комментариях опровергнут более умные люди с бОльшим инсайдом, слушайте их, я мимопроходил):

  • Автоматизации очень мало, для большинства еще ок руками дешевых постградов смешивать жидкости (reproducibility выходит из чата)
  • Та автоматизация, что есть, идет бонусом в дорогущим роботам от больших компаний (vendor lock in входит в чат)
  • Качество этой автоматизации зачастую... хромает (vse kak y lyudey входит в чат)

Несколько примеров:

  • Если ваш дорогущий инструмент за много денег должен померить поглощение света жидкостью, результат он положит в человекочитаемый CSV. Как парсить такой формат? Может быть есть грамматика? Или хотя бы описание полей? А зачем, есть же глаза и руки постградов! В итоге за два года я видел штук 10 человекочитаемых CSV, естественно, с друг другом никак не совместимых (даже если форматы от одного производителя и одного инструмента). Была даже внутренняя шутка написать мышиное облучение для переваривания бесконечных человекочитаемых CSV. После такого, когда видишь простой советский XML плачешь от радости и целуешь руки авторам, говоришь тосты на их свадьбах.
  • Если у вашего дорогущего инструмента за много денег есть automation API, то он будет представлен WSDL, а ивенты будет слать в ActiveMQ. Это иногда неплохо, choose boring tech, все дела, но ценность копошения в таком для твоей карьеры примерно нулевая (зато кулстори вот можно рассказывать).
  • Если у вашего дорогущего инструмента за много денег нет automation API, а automation очень хочется, то земля вам пухом. Нет, правда, вы не хотите туда лезть, вас сожрет и бачок потечет. Но мы лезли и это не было pretty.
  • Если у вашего дорогущего инструмента за много денег есть поддержка скриптов, то система типов скриптового языка будет описываться, например, так: the type of a variable is variable. Идеальная иллюстрация вечному вопросу "Зачем нужно CS образование" и "почему профессионал в одном обычно дурак в другом".
  • ...а UI будет выглядеть так

Почему так? Я задавал этот вопрос примерно всем людям, работающим в компании и примерно такой общий ответ усвоил:

  • Автоматизация не входит в планы дедов-академиков
  • Полушепотом говорят, что в биологию идут не самые техническо-математически сильные люди (об этом еще Фейнман писал, кстати), их забирает себе физика, математика и CS.
  • Биология это сложно-очень-очень-сложно-лучше-нельзя (но обычно оказывается, что как-нибудь все же можно, если постараться)
  • И так все работает (и это действительно так)

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

Зачем работать в биотехе

Тут каждому свое, но по мне опыт работы в чем-то реальном, а не сферическом айти-в-вакууме будет полезен любому. Это может быть биотех, агротех, космос, электроника.

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

Так что дерзайте и ебашьте ручной труд, академию, индустрию, угорайте на SLAS, любите свой Liquid Handler, PhD и Биотех! Парсьте человекочитаемые CSV! ГОВОРИТЕ ОТКРЫТО И СМЕЛО ПРЯМО В ЛИЦО! БИОТЕХ! ЧЕЛОВЕКОЧИТАЕМЫЕ CSV!

Связанные посты
46 комментариев 👇
слово,количество в посте
человекочитаемые,10

@Kirk, я когда читал всё думал, что это какой-то эвфемизм, но когда дошел до комментариев, и увидел твой у меня в голове вьетнамские флешбеки начались. Еще когда я работал на заводе у нас было какое-то похожее словечко. Не то «человекочитаемый», не то «человекопонятный», но в связке с «интерфейс».

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

Ну, ради исторической истины первоисточником были всё же нормально структурированные данные. Но! Если ты вот вдруг захотел пособирать телеметрию с прибора вражескогодругого предприятия, то хер тебе в рыло, а не API. Парсь человекочитаемый CSV!

Весь реальный сектор живет человекочитаемыми CSV…

  Развернуть 1 комментарий
Elizaveta Katorcha , Applications Scientist - Structural Biology 6 декабря 2021

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

А я как раз биолог из биотеха.
Подумываю вернуться в био-автоматизацию, где когда-то уже поработала - делался робот для quality control некоторых внутривенно вводимых веществ (не то, что вы подумали, а радиофарма). Тогда у меня опух мозг от драки с FDA за комплаенс и к тому же началась корона - и я позорно смылась.

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


Ну а я напишу-ка, пожалуй, немного для равновесия и ради фана от имени славных (муз) дидов:

  1. Не ликвид-хендлером единым жив биотех. Это ваше "вжик-пипетка", оно конечно супер, тыщу чего-то там в секунду капает. Но большинство операций в биологической лабе (или госпитале) не автоматизированы и близко, и там без постграда или техника никак. И собсно, если для всех чашек Петри, белковых кристаллов и прочих гибридом или зырканий в анализ мОчи у вас люди, то какого черта все вдруг кардинально духовно переродятся из-за бешеной пипетки и начнут охоту на CSV? Gimme more machines first.

  2. Для жестко заданных процедур, особенно для диагностики. Вот тут да, тут вжик хорошо работает, но и тут техник должен быть на стреме и следить, как было в посте выше про вахтера. Я подвешивала GoPro и мрачно взирала на видео в офисе, коим образом раскрыла "многия великия тайны" инженерам про то, чем там занимается наша машиночка пока мы на нее не смотрим. Моторчик запершил во время time-sensitive реакции (реальный случай, мне потом инженер рассказывал про какие-то там ремни)? Ах ты лапулечка...

  3. Подготовочка. Для того, чтоб ваша вжик-пипетка работала, ей надо поднести все реагенты в надлежащем виде. Обычно их готовит другая вжик-пипетка подешевле (чтоб ваша дорогая не простаивала и не дай божечки не сломалась) или же их надо в этом подготовленном в малых объемах и определённом виде приобрести (kit, дороговато, особенно если вы не госпиталь), либо это... правильно, техник.

  4. Собсно рисеч = что-то быстренько проверить и отмести гипотезу. Енти штуки для рисеча ниочень. Поясню. Чтоб пройтись по интерфейсу и собрать новую программу с зерокодингом (в моем случае был не зеро и так я познакомилась с XML) - это упреешь, потом окажется в ответственный момент носиков для пипетки не хватило и все крашнулось и так обиделось, что потом час не вставало (реальный случай)... Так надо было все отладить же сперва, да? А нам только и нужно быстренько попробовать чтоб то же самое, но в 50% объема, например, и время реакции подрехтовать. Ну вас в баню, пусть техник быстренько все сделает.

  5. Репродюсибилити. Типичная вжик-пипетка ПОКА ЧТО с квалифицированной Анкой-пипетчицей ни в какое сравнение не идет по репродюсибилити. Где там пузырек зашел, или вязкость раствора вдруг не та (что-то стало холодать...), или капнуло нечаянно (плохой был носик у пипетки, плохо прилегал), да хоть кусочек пластика от плашки где-то зам застрял. Сколько я этих modes of failure насмотрелась - не пересказать. Многие так и не смогла объяснить себе и начальству. Но что действительно правда - Анка медленнее, чем вжик. Скоро вжик победит, но пока еще не.

@Lisa, Кстати, отдельная байка про программиста и меня :)

Программист, делавший нам софтину, пусть будет Джек, сидел где-то в Европе. У него был даже не эмулятор, у него стоял такой же робот как у и меня, только без реагентов конечно, ну иногда он мог водички крашеной налить для общей реалистичности и когда начальство рядом.

Так вот, Джек на мои гневные Слак-сообщения обычно сперва отвечал Hmmm, and everything works juts fine on my end! Don't see any problem... и только после 5-го тычка принимался за ковыряние.

Как-то раз его послала компания чего-то там проверить на роботе, который у нас стоял тоже где-то в Европе. Ну, ему лететь ближе, к тому же он вот с роботом так знаком закадычно - целый год с ним в одном офисе сидел и гонял симуляции почем зря.
И вот я получаю от него 4 Слака за 10 секунд и кучу фото того, что оно запузырилось и полезло из пробирки - что делать??!!
Я сразу поняла, что настал мой звездный час.
Уверена, вы поняли, что я ответила в Слаке.

  Развернуть 1 комментарий
Захар Кириллов , Амбассадор ЕРАМ в Клубе 6 декабря 2021

На фото в статье — железяка от TECAN, швейцарского производителя оборудования для лабораторий.

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

Дело было в самом начале 2020 года, когда все закрылись на карантин и лаборатория, где стояла железка, тоже закрылась. То есть доступа к железке у нас не было. Эмулятора железки естессно тоже нет, равно как и нет привычных dev-staging-uat-prod окружений. Всё что есть — один аппарат, который стоит в закрытом помещении, попасть куда может только охранник (не биолог ни разу).

Выкрутились установкой вокруг аппарата 8 веб-камер, каждая подключена к собственному 4G интернет-модему: ПОТОМУ ЧТО подключиться к локальной сети лаборатории не представляется возможным — доступа в интернет в ней для новых неизвестных устройств нет, а чтобы он появился, нужно настраивать какую-то железяку где-то в подвале, от которой уже забыли пароль и которую лучше не трогать ибо как бы чего не вышло.

Короче вокруг девайса навешали камер, после чего звонили по телефону вахтёру и просили его подняться на 2-й этаж, зайти в лабу и загрузить вот те 20 пробирок вот в тот лоточек. А потом не уходить далеко, потому что скорее всего пробирку не доедут до цели и надо будет их как в том принтере, что бумагу зажёвывает, поправить.

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

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

  Развернуть 1 комментарий
Gleb Kudriavtcev , Руководитель продуктов 6 декабря 2021

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

Если ты проводишь эксперимент и он воспроизводится хотя бы в 50% случаев - это считается большая удача. Часто люди делают работы на том, что воспроизвелось всего один раз, да и то, неизвестно какими молитвами. Повторить не могут (потому что вся эта мокрая химия - иншалла капец какая нелинейная хрень, в которой если что-то и произошло, то не иначе, как волей всевышнего). Строить на этом алгоритмы? Ну такое... Вслух пожелают удачи, а про себя перекрестятся. Вот так и живут :)

  Развернуть 1 комментарий

@glebkudr, подтверждаю каждое слово! Все так. Я даже вначале не поверил, что по цифрам, что были получены один раз, и то, возможно, из-за плохо написанного алгоритма, будет писаться paper и продаваться услуги по этому анализу другим. Хах.

  Развернуть 1 комментарий

Связь биотех <-> CSV создана успешно.

  Развернуть 1 комментарий

Звучит так себе если честно, из статьи мне показалось:

  • фундаменатально ты все равно не поймешь, почему ты делаешь то а не это. И без специальных знаний, которые тебе не очень-то и доступны - ты не очень то все понимаешь глубоко
  • парсить CSV, которое нагенерило оборудование какого-то вендора. Не очень помогающий потом в жизни опыт.
  • решать алгоритмические вещи для аллокации нужного количества жидкостей может и интересно. Но это же опять вендор лок для специфического оборудования? И оно интересно, но опять же это техническая задача для все так же непонятного домена
  • ты мальчик на побегушках у дидов-академиков, которые очень далеки от айти
  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs,

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

Ты только что описала самый востребованный навык на рынке труда

  Развернуть 1 комментарий

@alexpyzhianov, ни для этого меня мама растила

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs, эх если бы ещё мама платила эти ваши какосеки, а не дядя с рынка труда :)

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs,

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

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

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

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

ты мальчик на побегушках у дидов-академиков, которые очень далеки от айти

Во всяких корпоратах наверняка так, да :(

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

@0Lphcss3iiKRRz9w, Корочи, надо держаться подальше от слишком прикладных и отраслевых доменов - вроде финтеха, биотеха, медицины, автоматизации энтерпрайзов. А присмотреться к доменам, где фундамент это как раз не далеко от чистого IT.

А какие у нас тут домены? Инфраструктура, системное программирование, девелоперские тулы, инфраструктурные тулы, ограниченная часть b2c вебчика. Что еще? Блокчеины (Но это шарлатанство). Гм, в какой-то степени, геймдев. И это всё, получается.

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs, кому надо и чтобы что? =)
Если хочется именно хардкорного CS в вакууме - это в рисерч, становиться профессором комплюхтерных наук и писать пейперы про ускорение верчения деревьев на 0.03% и перемножение матриц в прыжке с переподвыподвертом (которые потом все равно будут завернуты в питоновскую либу и будут использованы грязными прикладниками). Где-то там же рядом компиляторщики и дизайн принципиально новых вычислительных архитектур.
Все остальное, так или иначе, прикладничество, где приходится иметь дело с хотелками того кто платит деньги и ограничениями реального мира, будь то кривое железо, всратое законодательство или возможности браузеров.

  Развернуть 1 комментарий

@LexsZero,

чтобы что?

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

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

@0Lphcss3iiKRRz9w, Неа. Если в домене чистый CS, то в нем можно разобраться с большего хотя-бы из-за хоть какого-то CS образования и понимать, что происходит. Так же как и в кое-какой электронике. А биотех, медицина итд - сразу нет. Не реалистично.

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs, медицина это в том числе и достаточно скучные приложения по обмену данными между страховой и врачами. Я как-то думала туда податься, но совсем не привлекательно оказалось то, с чем предстоит работать, не тому меня в универе обучали 🥲

  Развернуть 1 комментарий

@nadjam,

медицина это в том числе и достаточно скучные приложения по обмену данными между страховой и врачами.

Так это автоматизация какой-то административной хрени. Это не работа - это каторга.

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

@0Lphcss3iiKRRz9w,

А на том уровне на котором разберешься в блокчейне и электронике - разберешься и в биотехе. Школьные знания про ДНК, РНК и трансляцию у тебя наверняка есть, на крайний случай почитаешь в научпопе как это работает.

И все таки, в более технических и СS доменах хоть как-то поможет вынесенное за 5 лет универа и специализированных предметов и 2 года магистратуры. И таки это большая разница между "на крайний случай почитаешь в научпопе как это работает".

не разберешься в электронике без соответствующего специализированного инженерного образования.

И все таки, когда в универах делают процессорные конвееры на лабах и изучают схемотехнику - это же что-то значит?

Иначе, зачем это все? 99% вузов тогда можно просто закрыть, особенно в СНГ/РФ? А остальные "на крайний случай почитают научпоп".

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs,

Иначе, зачем это все? 99% вузов тогда можно просто закрыть не, особенно в СНГ/РФ?

Добро пожаловать в реальный мир, Нео.

А остальные "на крайний случай почитают научпоп".

Ты годами возишься с компами, и для тебя изучить очередной алгоритм, даже если впервые о нём слышишь - рутина. Но это чисто твой байес. Если измерить количество знаний по биологии в каких-то числовых величинах, и сравнить с СS, то будет плюс-минус одно и то же. Если бы было не так, тогда условный биолог должен учиться в несколько раз дольше программиста, перед тем как станет специалистом, а это не так - и те и те примерно лет по 5 тратят на обучение.

  Развернуть 1 комментарий

@Kroid, биологи дольше учатся, выпускника-магистра только-только начинают подпускать к самостоятельной работе, при этом в целом в индустрии PhD это низший грейд с которым тебя куда-либо серьезно возьмут не только в пробирки капать. А это уже лет десять.

  Развернуть 1 комментарий

@glebkudr, ну так и программиста сразу после универа точно так же не допустят архитектуру проектировать. Кому нужен джуниор/стажёр на ответственном месте? Вот лет так через десять работы по специальности - тогда да.

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

  Развернуть 1 комментарий

@Kroid,

ну так и программиста сразу после универа точно так же не допустят архитектуру проектировать

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

Кому нужен джуниор/стажёр на ответственном месте?

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

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs, а в биотехе что, одни Эйнштейны сидят, и ни в одной из фирм или лабораторий, что этим занимаются, нет некомпетентных сотрудников, нет кривых процессов, нет бюрократии или даже обычной разрухи? Извини, но что-то не верится в такие чудеса.

  Развернуть 1 комментарий

@Kroid, не знаю, на основании какого опыта ты мне это доказываешь. Я видел и то и другое (биолог, который стал айтишником). Программистом начать работать гораздо проще и быстрее. И вышка не нужна, кстати, совсем.

  Развернуть 1 комментарий

@glebkudr, это лишь говорит о популярности сферы в обществе и доступности средств производства. На количество знаний, нужных, чтобы во всём досконально разобраться, это не влияет никак.

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

  Развернуть 1 комментарий

@Kroid, ооооо, надо будет рассказать историю как обстоят дела с профессионализмом на фронтире хайтечных биоисследований, в нейронауках, хыхы

  Развернуть 1 комментарий
Vlad Borg , JavaScript программист 6 декабря 2021

Дайте же скорее хоть посмотреть на один такой человекочитаемый CSV.

  Развернуть 1 комментарий

что весь этот agile булшит с выкатками по десять раз на дню, неверифицируемым ничем, кроме юнит-тестов и отсутствием какого-никакого design upfront просто не работает ни на чем серьезнее интернет-магазина

там тоже не работает 🙄

  Развернуть 1 комментарий
alex konstantinov , Менеджер проекта 7 декабря 2021

есть два пути:

  • Hardware/RnD отдел большого корпората: скучно-стабильно, пишешь парсеры человекочитаемых CSV, через пять лет получаешь повышение и начинаешь дизайнить человекочитаемые CSV
  • Модный дерзкий digital transformation disruptive startup: от откровенного скама чтобы набрать классы и инвестиции, то вполне себе серьезных продуктов, которые меняют все к лучшему. Choose wisely

Все остальное, все же, имеет под собой чуть больше домейн

Кажется, автор коротко смог описать всё это ваше айти

  Развернуть 1 комментарий

Я так понимаю, что для попадания нужны достаточно стандартные скиллы интервьюирования, пусть и выше среднего. А что в работе? Приходилось читать пейперы и освежать фундаментальные знания или, как и с крудами в финтехе, всё можно нагуглить?)

  Развернуть 1 комментарий

@alexpyzhianov, Подозреваю, чтоб парсить CSV пейперы не нужны. А в остальном нужно слушать дидов-академиков, они тебе будут объяснять что надо сделать. Чтоб читать биологичейские и прочие биохимические пейперы надо очень и очень специфическое образование.

  Развернуть 1 комментарий

@5Z0xmbh3ShJLCvAs, я скорее имел ввиду фундаментальные знания математики в общем и CS в частности - то, что имеет прямое отношение к созданию ПО

  Развернуть 1 комментарий

@alexpyzhianov, приходилось, конечно.

И про MIP вспомнить, и про constraint modelling languages, и про графы открыть несколько книжек, когда нужен был хитрый partitioning, и про что-то похожее на register allocation почитать.

Но оно все техническое, не пейперы про биологию, поэтому я и рекомендую идти в технологические стартапы, где ценят тех бэкграунд.

  Развернуть 1 комментарий

Ловил флешбэки на каждом предложении. После всех этих доменов, которые не описать джсоном, сильно хочется опять парсить человекочитаемые CSV

(хотя конечно ощущается что беспилоты всё же поближе к айти, чем биотех)

  Развернуть 1 комментарий

Вступление сначала не понял, а потом как понял )

  Развернуть 1 комментарий

Ух ты, столько об этом твоем опыте слышал (в чатах), а теперь и пост. Огонь!

  Развернуть 1 комментарий

Это что, второй охуенный пост в клуб после моей просьбы? Хоули щит, да я же продюсер!

  Развернуть 1 комментарий
Misha Chinkov , инженер на сотню рублей 13 декабря 2021

Только добрался до твоего поста, Егор – как всегда, охуенно, хоть поп-корн перед прочтением заказывай

Дополнительно скажу, что на таком уровне ответственности и сложности внезапно понимаешь, что весь этот agile булшит с выкатками по десять раз на дню, неверифицируемым ничем, кроме юнит-тестов и отсутствием какого-никакого design upfront просто не работает ни на чем серьезнее интернет-магазина.

это, кстати, очень интересный вброс, ибо первое, что меня интересует в айти – это devops-единороги по типу быстрой доставки софта с минимизацией урона в проде

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

  Развернуть 1 комментарий

@cazorla19, спасибо, Миш!

Про аджайл и деплои.

Кок раз тыке UI можно деплоить хоть по 10 раз на дню, если там реально блокеров нет, никто не умрет (но придется привыкать к новым излияниям дизайнеров, а это мало кому по душе).

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

Поэтому хотя бы smoke тестирование руками необходимо. У нас это делали FAS (field application scientists, биологи, которые максимально близко к пользователям и понимают нюансы протоколов). Они выборочно прогоняли N экспериментов (которые определялись совокупностью release notes и текущей ситуацией с клиентами) в лаборатории e2e с новой версией и только после этого оно катилось куда-то дальше.

Но это только последний фронтир. На самом деле, у нас был вполне себе CI/CD на наше внутренне окружение (даже несколько) и была примерно такая логика:

  • если тебе нужно что-то сделать в лаборатории и от этого не зависит финансирование и не особо страшно потерять время/материалы -- используй прям вот свежий master, вот окружение
  • если что-то для case study, где важна корректность и страшно потерять -- используй альфа окружение, там "отстаивается" свежий релиз кадидат. Напоследок альфа тестируется еще раз и становится "релизом".
  • ну и конечно фича флаги, тысяча их

Защищало ли это на 100% от косяков? Конечно же нет.
Ловились ли прям критичные вещи до попадания клиентам? Очень. Много. Раз.

Примерно как-то так.

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

  Развернуть 1 комментарий

@begor, классный рассказ внутренней кухни, этапять!

действительно, в индустриях типо биотеха с высоким риском потери ресурсов, невозможностью измерить линейкой failure domain в случае, если ебанет, а также отсутствие фактора высокой конкуренции (это тебе не е-ком по кнопке пускать, в индустрию наверняка сложно зайти) – все это делает деплои по 10 раз на дню бесмыссленными, так как цель не оправдывает средства

вообще, на мой взгляд, ценность деплоя каждого ченджа сильно переоценена и вообще необязательно это все

пусть это и выглядит меня таким "приглашением в партер", но я, пожалуй, припаркую сей сабж для лучших времен 🤓

  Развернуть 1 комментарий
nadja mansurov , Software Engineer & MSc Bioinformatics (студент) 8 декабря 2021

Спасибо, интересный пост и подтверждает то, что я слышала от преподавателей :) Особенно про воспроизводимость. И рутину в корпорациях. И моё решение оставить биоинформатику/биотех/вообще всё био на уровне хобби тоже подтверждает 🤷

  Развернуть 1 комментарий
Alexander Samolov , решаю проблемы кодом 8 декабря 2021

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

  Развернуть 1 комментарий
Alexander Samolov , решаю проблемы кодом 8 декабря 2021

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

  Развернуть 1 комментарий

Человекочитаемый CSV - истину глаголет1

ЗЫ
Я думал проблемы со стат значимостью и воспроизводимостью только во всяких гуманитарных науках типа психологии бывают, а оказалось вон че!

  Развернуть 1 комментарий

😎

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

Что вообще здесь происходит?


Войти  или  Вступить в Клуб