August 2, 2023

Поиск работы

Бекграунд

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

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

Вся эта история кормила меня на протяжении лет, но на данный момент, кажется, она себя исчерпала.

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

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

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

Вот с этими вводными я начал поиск работы. Сделал резюме, разместил на hh.ru. Получил какое-то количество откликов, в процессе корректировал резюме и то, на что я претендую. В частности, примерно понял о какой сумме может идти речь.

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

Собеседования

Те собеседования которые у меня были: два в крупные банки, одно в стартап, разрабатывающий приложение.

Совсем разные компании, но все вместе дало некое общее понимание как устроен рынок найма вот прям сегодня в июле 2023го в России.

Понятно, что специфика откликнувшихся на мое резюме компаний соответствовала позиции Java-программиста и самому резюме. Срез интересный, например стало ясно что на рынке очень много банков и они активно нанимают айтишников.

В разных собеседованиях тестировались разные моменты

  • Знание языка. Я не подготавливался к собеседованием, а на Java особо не программирую, основной язык все-таки Clojure. Но руки быстро вспомнили, т.к. в свое время очень много писал на Java, ездил на профильные конференции, даже читал спеку JLS. С каждым собеседованием показываемое мною знание языка улучшалось.
  • Ревью кода. Тут получилось довольно смешно. В двух разных собеседованиях дали одну и те же задачку на ревью кода. Похоже это какая-то стандартная задача из запроса в гугле “как собеседовать Java-программиста”. Соответственно второй раз уже было совсем понятно, что отвечать.
  • работа с алгоритмами. В двух собеседованиях просили решить две разные задачки на алгоритмы. Справился, более того, кажется, впечатлил интервьюеров своим подходом к решению.
  • работа с микросервисами. Не знаком с микросервисами, были вопросы по ним. Понял, что если я претендую на позицию Java-сеньора без знания принципов работы с микросервисами никак, а вообще лучше бы какой-то опыт получить. Помимо указанных трех собеседований еще одно собеседование в банк остановилось на вопросе об опыте работы с микросервисами. В общем, микросервисы - это прям совсем мейнстрим сегодня. Начал читать книжку Sam Newman “Building Microservices”, скучновато, но читаю.
  • работа со Spring, базами, другое. Много вопросов специфически энтерпрайзных. Тут сразу говорил, что опыта нет.

Режим работы

Есть несколько разных схем устройства на работу. Из предложенного мне: полностью официальное трудоустройство, устройство в компанию занимающиеся аутстаффингом, оформление договора с ИП. В любом случае это некий “официальный” доход.

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

Удаленный режим

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

Стационарный режим

  • Преимущества: единство времени и пространства для работы, ничего не будет отвлекать, можно проявить себя через общение, в том числе неформальное, с коллегами.
  • Недостатки: потеря времени на дорогу, меньше времени общаешься с семьей. Работа только по месту жительства, в моем случае Казань, город большой, но все равно 1.3 млн человек в 6000 раз меньше 7.8 миллиардов

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

  • работа в офисе в Казани с возможностью удаленки.
  • работа на компанию с офисом в Москве или международную компанию с командировками на 1-2 недели

Такие варианты совмещают плюсы удаленного и стационарного режима работы, нивелируя минусы.

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

Резюме и позиция

Я изначально претендовал на позицию Java-программиста, т.к. Clojure-программист редкий зверь в плане вакансий.

Понял что многое зависит от резюме. Я написал какое-то резюме, потом увидел что прямо на hh.ru есть возможность за отдельную плату улучшить резюме, вплоть до того, что карьерные консультанты пишут резюме за тебя. Итого, взял самый дешевый тариф и мне дали рекомендации по улучшению резюме. Рекомендации полезные, но теперь надо переписать резюме в соответствии с ними. Можно заказать, чтобы составили резюме полностью, но пока считаю, что лучше мне сформулировать резюме самостоятельно.

Очень важно четко понимать, на что ты претендуешь. Позиции Senior Developer и Team Lead по факту совершенно различные. Вообще, вижу для себя следующие варианты

  • Senior Developer - работа программистом
  • Team Lead - руководство командой программистов
  • Product Owner - акцент на разработку продукта

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

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

Также возможно стоит все же искать позицию, где мои знания раскроются максимальным способом. Например, найти позицию Product Owner в международной Clojure-команде занимающейся созданием продукта для трейдеров в крипте.

Знания и опыт

Все эти собеседования подсветили серьезный недостаток знаний и опыта. По поводу знаний, тут у меня конечно в первую очередь задача пройти по траектории ШСМ, “Собранность”  https://teletype.in/@burganov/sobr и “Моделирование” https://teletype.in/@burganov/model пройдены, следующий на очереди курс “Системное мышление”.

Но понятно, что эти знания фундаментальные, для деятельности надо будет изучить прикладные знания, соответствующие выбранным позициям.

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

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

Подготовка к собеседованию

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

  • понять на какую роль претендуешь
  • понять что рекрутер будет проверять для этой роли
  • подготовиться к соответствующим вопросам. Можно поискать эти вопросы в интернете или спросить у gpt-4. Можно воспользоваться услугами карьерных консультантов.

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

Выводы и действия

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

  • Выбрать интересную подходящую для себя позицию. Т.к. интересна менеджерская позиция, с максимально возможным влиянием на продукт, то речь будет идти о Product Owner. Остальные позиции менее интересны, хотя тоже возможны.
  • Набрать знаний
    • Пройти “Системное мышление” и другие курсы по линии ШСМ. Это поможет в любом случае.
    • Определить какие знания требуются для интересной мне позиции, составить список вопросов и дисциплин для изучения, изучить их.
    • Подкачать английский язык, чтобы была возможность пройти собеседование в международную компанию.
  • Сделать соответствующее резюме в соответствии с рекомендациями и начать искать соответствующую работу. Составить резюме на английском и искать работу на международном рынке.
  • Устроиться на работу, получать зарплату, решать рабочие задачи, продвигаться в карьере и получать опыт. То, от чего я благополучно увертывался последние 17 лет. Волнительно, но почему бы и нет.
  • Также до устройства на работу возможно стоит рассмотреть какие-то проекты во фрилансе, чтобы получить релевантный опыт, ну и возможность заработка конечно.

Контакты

Текст опубликован в личном блоге https://t.me/burganov