Сейчас мне сорок пять, и я наконец получил нормальную фултайм позицию аналитика данных. У меня первый диплом - Провизор по специальности Фармация. Я успел поработать таксистом, разнорабочим на складе лекарственных трав, заготовщиком, владельцем цеха металлообработки и одновременно рабочим в этом цеху. Был фармацевтом за кассой, заместителем заведующей аптекой, владельцем аптеки. Никогда не думал, что буду работать в IT, хотя всегда интересовался этой темой.
Но потом случился мой переезд в Канаду, один разговор и восемь лет приключений. Начну по порядку.

В школе у нас был компьютерный класс. Компьютеры, если мне не изменяет память, назывались Искра, на архитектуре Х86, но до 286. Там были пятидюймовые дискеты, комманд ком, нортон коммандер, бейсик и микроассемблер. Не скажу, что я там много чему научился. Из примерно пяти человек, которые постоянно торчали в компьютерном классе, я был самым слабым. У остальных родители что-то понимали в компьютерах, у кого-то компьютер был дома. Мне же только на пару дней дали плохо читаемую ксерокопию по основным операторам бейсика. Я писал простенькие программки, но в основном рубился в Сабатёра и Принца Персии. С некоторой натяжкой можно сказать, что первую игру я написал тогда.
Потом был физфак университета, с которого я вылетел на первом курсе. Но мне успели вдолбить вектора, я получил представление о производных и интегралах. Еще у нас был Паскаль. Я ничего тогда не запомнил, но про типы данных узнал.
Потом была фармацевтическая академия. У меня появился трофейный компьютер, 286 апгрейженый до 386, огромный и тяжелый как гроб. На нем я в основном шпилил в Леммингов, вряд ли чему-то особо полезному научился. У нас в институте был компьютерный клуб. Я хотел туда попасть, хотя бы дискеты протирать или кофе варить. Я попросился, но главный сказал, что если я ничего не умею, то мне не место среди благородных программистов. "У нас есть одна девочка, ко��орая даже Дельфи знает!". Мистер Погребняк, если вы это читаете, то знайте, что зря меня не взяли.
Потом была работа на предприятии по заготовке и фасовке растительного лекарственного сырья. Череда, чабрец, зверобой, вот это все. У фирмы еще была небольшая сеть аптек. Кроме таскания мешков и дышания пылью я также занимался настройкой ОС, принтеров, модемов, подключением интернета и локальной сети, был таким эникеем. Но не только, для печати накладных и фактур использовалась 1С Бухгалтерия. Тогда была версия 7, позже появилась восьмерка. Сначала мы пользовались ломаной 1С, потому что учет не велся, только печатались два документа. Ох, я намучился с эмуляторами ключей. Самый популярный был от Соболя, в народе - сабля. Когда мы купили лицензии, я даже читал их талмуды и правил формы и документы под наши нужды. Язык 1С казался забавным, хоть я сейчас и понимаю, что для американцев любой язык выглядит так же. К тому времени у меня уже был свой компьютер и я в нем ковырялся.
Все это я рассказываю, чтобы показать, что я не начал с нуля, но и опыта писания кода у меня практически не было. Время шло, я из интереса решил загуглить, как переехать в Чехию, и, слово за слово, через три года сошел с самолета в Виннипеге. Тут мы вплотную подходим к началу моего извилистого пути в профессию.
У меня диплом фармацевта, а фармацевты живут в Канаде очень хорошо. Беда в том, что нужно эвалюировать диплом и сдать пять экзаменов. Я этим начал заниматься еще в России, диплом подтвердил, но с экзaменами все оказалось сложнее. Практически все приходилось учить заново, экзамены стоили дорого и требовали много времени. Я уже прошел подготовительные курсы, получил допуск к экзамену, и за неделю до него понял, что я не хочу быть фармацевтом. Я работал на стройке, был еще период, когда я думал стать дальнобоем, но Бог миловал. Да, я могу водить фуру с прицепом 53 фута и шестнадцатискоростной коробкой.
Примерно через полгода я пообщался с одним товарищем в Живом Журнале, потом мы созвонились. Он дата саентист в области медицины, тогда он вел интересный проект в большой больнице. Тогда он мне рассказал про данные вообще и про Фейсбук в частности. До этого я думал, что Фейсбук это обычный сервис хранения и показа фоточек. Еще он сказал "есть такой язык, R, но тебе он не нужен, этим программисты занимаются". Тем же вечером загуглил R и узнал, что есть Курсера, а на Курсере есть курс R от Roger D. Peng. Отличный чувачок, до сих пор его подкасты слушаю. Я записался на курс, чисто из любопытства.
Вообще, я тогда думал идти в науку, но хотел изучать Neuroscience. Мне всегда было интересно, как работает мозг. Даже написал нескольким ребятам насчет магистратуры, и некоторые мне ответили. Один даже уже практически ждал меня. Но тут выяснилась одна неожиданная для меня вещь. В США и Канаде четырехбалльная система оценок. И мой диплом, который так всем нравился, внезапно превратился в тыкву.
В общем, я был дезориентирован и подозревал, что остаток жизни буду работать на стройке. Потом был переезд в Калгари и разные приключения. Курсы на Курсере я то бросал, то продолжал. Я вообще не думал, что это мне может пригодиться, просто было почему-то очень любопытно, плюс, я удивился, как это просто - программировать (ха-ха!). Параллельно я стал интересоваться наукой о данных. Это 2013 год, о дата саенс еще не начали говорить на каждом углу, это было что-то для нёрдов, что мне тоже нравилось. В 2014 году со мной случилась счастливая случайность. У моего сына в садике был друг, а его отец заведовал лабораторией метаболомики в университете Калгари. До сих пор заведует. Когда он узнал, что я учу R, он невероятно удивился. Даже в универе олдыри кодили в основном на матлабе, а молодежь начала переходить на входящий тогда в моду питон. Мы поговорили, он меня взял волонтером в лабораторию. Через полгода мне предложили постоянное место программистом. В универе я не только писал код, но и системные скрипты, налаживал хранилище и обработку данных. Еще я был его секретарем. Отвечал на письма, оформлял закупки для лаборатории, покупал билеты и бронировал гостиницы. Так я проработал год. У меня в семье росла напряженность. Денег не хватало, в университете платили копейки, полгода волонтерства тоже не улучшили положение. Начал сказываться стресс от эмиграции. Еще я заболел какой-то очень затяжной простудой, постоянно кашлял и чувствовал слабость. Стал пропускать работу, уходить раньше. В общем, я ушел из лаборатории пока меня не выгнали с позором. То, что так хорошо начиналось, кончилось бесславно.
Я вернулся на стройку и некоторое время приходил в себя, но потом интерес к дата саенс вернулся. Я узнал о нейросетях и очень заинтересовался - что-то связанное с мозгом, а мозг мне интересен. Надо сказать, что к тому моменту я уже знал, что в нейросаенс застой, наука зашла в тупик и движется вслепую. Я не жалел, что не попал в магистратуру. На Курсере появился курс по нейросетям от Andrew Ng, который уже стал легендарным. Я его прошел на одном дыхании, и понял, что мне нужно подтягивать математику. Я стал смотреть постоянно Three Blue One Brown и подобные видосики, в основном по линейке, и методично проходить математику на Khan Academy, налегая на статистику и вектора. Заодно подтянул алгебру и калькулюс.
Еще в Виннипеге я подружился с человеком, который кодит на Джаваскрипт. У меня давно была идея по автоматизации теплиц, и мы решили замутить небольшой стартап в Калгари. Сначала я занимался всем - прототипом, пайкой, растениями. У меня рос помидор в подвале несколько лет, до тех пор, как мы не уехали. Наш проект и роли в нем постоянно менялись, пока моя не стала специфичной, наконец. Я занимался только разработкой сверточной нейросети, которая будет следить за здоровьем растений. Я даже написал под тензорфло и натренировал нейросеть, которая распознавала с аккуратностью 97% пятнадцать классов. Пять классов на здоровые растения - помидоры, перец, картофан, огурец, баклажан. Десять классов на их болезни. Конечно, даже при такой удивительно прекрасной эффективности это был MVP, очень далекий от реальной работоспособности. Во-первых, он на вход брал отдельные фотки листа. То есть, фермер должен пойти в теплицу, сорвать лист и прогнать через алгоритм, ха-ха. Фермер и так скажет, если листья жук пожрал. Идея была в том, чтобы камера делала снимки, алгоритм определял больные листья и посылал сигнал. В перспективе я хотел добавить сегментацию фотографии чтобы выделить отдельные листья. Была даже идея добавить к камере лидар, чтобы получать глубину для изображения. Во-вторых, нужно было переучивать нейросеть под отдельное растение и под все виды поражения - жуки, плесень, сухие пятна и прочее.
В итоге проект не взлетел, хотя мы вели переговоры с Alberta Innovates, университетом Лесбриджа и еще некоторыми возможными партнерами и инвесторами. Есть две основные причины - люди не хотят работать бесплатно и нефть иногда падает. Альберта нефтяная провинция, и когда падает нефтюшка, всякие нёрды идут нафиг. Мы попали в противофазу с этим. Когда у нас были люди, готовые работать за долю в будущем бизнесе, нам не давали денег, и наоборот. Чаще - нам не давали денег и люди не хотели работать бесплатно. В процессе я не только получил практический опыт с тензорфло и нейросетями, но и узнал много интересного о мире стартапов, о производстве, познакомился с интересными людьми, навел связи с Китаем. Я даже пообщался с китайцами, которые спутники запускают. Невероятно приятные и профессиональные ребята. Кстати, запустить спутник относительно недорого, как оказалось. Можно свой, могут сделать на заказ. Еще я научился питчить за тридцать секунд и делать презенташки и слайд деки. И главное, я теперь могу говорить, что я основатель стартапа. Звучит очень модно и солидно, народу нравится.
Когда я работал в университете, я познакомился с одним немцем. Я пытался делать какие-то мелкие проекты для него, ничего не получилось, но я познакомился с облачными сервисами и полюбил ssh. У меня был свой сервачок на Digital Ocean, и с тех пор практически не было момента, чтобы у меня не было сервера на Azure или Google Cloud Platform. Потом, когда я уже давно работал опять на стройке, этот немец нашел меня и предложил поработать на проект, на который он работал в тот момент, нужен был спец по R. Этот проект - Resistell, можно погуглить, он жив до сих пор. Кратко, суть в том, чтобы измерять резистентность бактерией к антибиотикам не выращиванием их в чашках Петри в термостате, а измеряя лазером их подвижность. Я подписал NDA и не могу вдаваться в детали, но в общем я работал на R и обрабатывал очень большие файлы. Я тогда познакомился с ребятами, которые делают R Studio - милейшие люди - и научился поднимать R Server для совместной работы. Я там проработал до марта 2020 года.
Немец пригласил меня на свой проект, который мне был очень интересен и должен был начаться в мае. Тоже в Швейцарии. Думаю, все помнят, что началось в мае. Инвесторы попрятались, я ушёл на самоизоляцию, проект перешёл в вялотекущую стадию. Он до сих пор жив, только дата саентисты там больше не нужны. Идея заключается в том, что при обработке сточных вод слабым током, бактерии начинают производить метан. Это связывает углекислоту, метан можно сжечь для тепла или электричества. Сейчас в одном швейцарском городке на предприятии по переработке сточных вод стоит наш прототип. Еще у нас есть другой проект, торговля криптой. Немец пишет алгоритм для предсказаний, я автоматизирую. Я не очень верю в предсказания для временных рядов, но я ничем не рискую, а заодно прокачаюсь. А если взлетит, будет денежка сама капать.
Еще надо сказать про Школу Кода. Начну с того, что я не смог найти работу после ухода из универа. Я рассылал резюме на все вакансии, какие видел. За несколько лет мне пришел только один ответ, прислали тестовое задание, и то на сишарп, хотя я подавался на питон. Задание я провалил. Но если я не могу найти работу программистом, что делать? Правильно, учить программированию! Я открыл свои курсы для детей, по выходным учил детей програмированию на скретч и питоне. Сначала снимал помещение в библиотеках, потом переделал спальню в класс. Мне очень нравится учить. Перед занятием я думаю - боже, что я буду говорить... Но стоит начать, я вхожу в раж и не могу остановиться, мне не хватает времени чтобы рассказать все, что я хочу. Родители видят прогресс, видят, что дети идут ко мне с удовольствием. Пошло сарафанное радио, появились группы. Я цены держал умеренные, по возможности даже снижал, но все равно получилась отличная прибавка к основной зарплате. Что еще немаловажно, уважение. Раньше я был шабашник на стройке, а стал педагогом, основателем школы программирования. К сожалению, из-за ковида пришлось закрыться.
Когда началась пандемия, правительство стало платить пособие достаточное, чтобы прожить. Я остался без работы, поэтому засел в подвале и начал качаться. Проходил курсы на курсере, долбил математику на Khan Academy.
Еще меня позвали на феллоушип. В Альберте есть такая славная контора Cybera, они проводят практику для начинающих дата саентистов. Сводят кандидатов с компаниями, которые занимаются данными, чтобы они могли работать вместе. Наша группа из четырех ��еловек работала с компанией, которая разрабатывает алгоритм для оптимизации ряда пластических операций для людей, меняющих пол. Там я узнал наконец, что такое аджайл, скрам, канбан, как работать с докером и править .yaml, кто такой продакт оунер и так далее. Еще я работал с оптимизацией, это был ужасно стрессовый и очень полезный опыт. Я понял, как мало я знаю про дата сайнс. До этого я нашлёпывал слоев в керасе и думал, что я офигеть крутой дата сотонист. Оптимизация поставила меня на место, спасибо ей. В общем, я попробовал, как это работать в нормальной конторе, и даже написал аппликушку на Shiny для запросов в базу данных Snomed CT - медицинская терминология и коды разных видов операций для страховых компаний.
Весной 2021 стало понятно, что пора слезать с пособия и выползать из подвала.
Так как отсутсвие диплома было основной причиной, почему меня не зовут на интервью, я решил идти учиться. Как раз появилась возможность получить Master of Data Science дистанционно в University of Colorado Boulder. Я туда записался, прошел все формальности. Так как нет возможности работать, мы решили переехать в Россию на время, сэкономить на жилье. И тут я совершил ошибку. В описании программы было сказано, что он self paced, можно проходить в любом режиме. Да, но если начал курс, там есть строгий дедлайн. Я почти все время потрaтил на сборы и переезд, а когда таки взялся за учебу, мне осталось две недели. Там было на выбор два пути, для программистов и для дата сайнс. Я был уверен в себе, взял алгоритмы для программистов, чтобы заодно и прокачать. Зря я это сделал. Ну, не зря, наверное. Теперь я нормально знаю про сортировк��, большую и маленькую о, тету, деревья, стек, хэш. Я совершил невозможное, за две недели я сделал все задания и сдал экзамен. Я тратил время только на сон и учебу, вошел в какой-то продуктивный психоз, даже страшно вспомнить. Я, конечно, молодец, но курс все равно не прошел. В самом последнем задании я один пункт оставил пустым. Было три часа ночи и пять часов до дедлайна, я уже ничего не понимал и не думал, что из-за одного пункта из более чем ста меня завалят. Экзамен сдал на 89 баллов при нужных 85. Но, нет. Я не прошел, и тысяча долларов улетела в форточку.
Другой облом у меня случился с поиском работы. Я думал, что уж в России дата саентиста из Канады, бегло говорящего на английском, с руками оторвут. Я прошел несколько собеседований и провалил их с треском. Все отлично на первых стадиях, где я рассказывал про свой опыт и навыки работы. Но когда доходило до технической части, на меня напускали хардкорного математика, который задавал мне вопросы, которых я не видел в списках типа 72 questions for data science interview. А если и случались знакомые - про SQL join, k-means, support vector machines, то я видел, что мои ответы его совсем не удовлетворяют. Когда я сказал, чо я вообще-то по нейросетям, он у меня спросил теорему, название которой я в первый раз слышал. Я часами могу говорить про слои, функции активации, градиентный спуск, LSTM, BERT, YOLO и прочие штуки, но на этой теореме наша беседа закончилась. Я потом загуглил эту теорему, конечно. Интересная. Наверное, полезная.
Сказать, что я растроился, это ничего не сказать. Я приуныл и чувствовал себя отбросом и самозванцем, обманывающим приличных людей. Но если я не могу найти работу, то я всегда могу учить детей, это моя последняя траншея.
Я сделал несколько звонков, разместил резюме, и через неделю меня уже пригласили преподавать скретч и робототехнику в Роббо Клуб по субботам. Еще через неделю мне позвонили и пригласили преподавать в местный Дворец Творчества ака Дворец Пионеров. Это отдельная история, если интересно, могу отдельную статью написать про это. Там я и преподавал два месяца, заодно получил диплом Педагог Дополнительного Образования. Я регулярно прохожу или просто смотрю курсы на Курсере. Недавно смотрел курс Аналитик Данных от Гугл. Я его давно начал, решил вернуться. Дело в том, что если я не тяну на дата саентиста, то для аналитика я оверквалифаед. Вы мне рассказываете, как делать формулы в Эксель? Серьезно? Как делать бар чарт? Да я это левой пяткой, не отвлекаясь от игры в Death Stranding, делаю.
Но тут я подумал, тысяча чертей, надо попробовать найти работу аналитиком, хотя бы любимым делом займусь. Психанул, за десять минут на переменке на телефоне накидал резюме в Хед Хантер. Даже не предложениями, а тупо набор поисковых слов. R, Python, cloud computing, скрипты, Линукс. К вечеру у меня было четыре приглашения на интервью, включая Леруа Мерлен. Одно из них удивительно подходило под мои навыки и под то, чем я хотел бы заниматься. На следующий день я с ними пообщался и мне сразу дали оффер. В понедельник я выхожу на работу, во Дворце Творчества отработал две недели как положено.
Это будет первая моя фултайм работа по специальности. Слово "R" я услышал в 2013 году, тогда мне было 37 лет. Сейчас мне 45, и я вошел в айти.
