Предисловие
HR-ы в последнее время активизировались и активно долбят своими предложениями.
Во-первых, господа, какого рожна лешего моё старое резюме с hh оказалось у вас? Мои данные видимо слили на huntflow или еще куда-то.
Во-вторых, вы умеете читать? Я middle! middle! Или вы думаете, что у меня низкая самооценка? я скромный senior с всего-то 5-летним опытом? Да у меня в резюме написано 2 года на golang. 2 года, Карл!
Вы думаете я ведущий, потому что вам так захотелось? Я могу быть ведущим ну разве что свадеб!
Письмо
Но вот опять мне написали письмо следующего содержания:
Алексей, приветствую вас! Меня зовут М****, я рекрутер. Не смогла пройти мимо вашего профиля. Уверена, что пишу вам не первая, но, поверьте, в вашей локации не так много вдохновляющих профилей, поэтому я буду очень рада знакомству:) Я сейчас нахожусь в поисках Golang-разработчика. Если вы сейчас готовы к карьерным движениям, буду рада обсудить с вами позицию подробнее?
Если нет - буду рада вашим рекомендациям. Уверена, что у вас может быть кто-то достойный, но недооцененный на своем текущем месте, на примете.
Что скажете?
Я решил попробовать. Все таки интересно как меня оценивают на рынке (спойлер - никак). На вопрос о опыте, денежном минимуме, я четко ответил:
Опыт более 2 лет на Go (не всегда только Go, приходилось и на PHP). Всего 5 лет в коммерческой разработке. Нахожусь в ***, релокацию рассматриваю.
От 150 тыс. руб рассматриваю
150 вроде норм ценник, явно не синьорский. Сейчас у меня в 2 раза меньше зарплата, но работа настолько интересная, что 150 это реальный минимум, который я готов рассмотреть.
Кстати, знаете чем отличается Senior HR от Middle? Он спросит вас про ООП. Да-да, для меня это тоже было сюрпризом. Впрочем, не бойтесь, он ничего не знает, вам надо ответить точно так же, как у него на листочке... ну инкапсуляция, полиморфизм, наследование... ну и абстракция там еще записано. надо три слова из четырех угадать. Своеобразный квест, чем-то напоминает китайскую комнату.
Подгорание
Ну и что? Прошел я значит 3 собеседования в российские крупные компании, 3 отказа.
Примечательно, что практически везде была архитектурная часть) В целом интересно, но после трудного рабочего дня и часа обсуждения каких-то теоретических вещей и решения задач трудно нужным образом настроиться на архитектуру. А может, потому что когда я проектирую какое-то решение, то сначала ищу похожие кейсы в гугле. Не спеша, рисую схемы, попивая кофеек, постоянно связываюсь с заинтересованными лицами, чтобы уточнить технические требования. И потом уже с готовыми вариантами иду к тимлиду. Архитектура - дело такое, нельзя с бухты-барахты что-то запилить, надо обдумать. И когда меня ставят в экстремальные условия, я просто терплю и пытаюсь выдавить из себя хоть что-то...
Но, получается как-то грустно. middle не смог попасть на позицию middle. Может реально очень слабый работник, может, действительно, джун или не подошел по требованиям?
Джун?
Да, я понимаю градация между junior и middle очень размытая. Но я попробую оттолкнуться от противного:
Верно ли что "плохо в архитектуре" == "джун"?
Я писал сервисы на go с нуля и поддерживал текущие решения, мэйнтейнер на ряде проектов - все еще джун?
Я считаюсь мидлом все 2,5 года работы, хотят повысить до ведущего в следующем году - джун? (да-да, любят почему-то в компании)
Я решаю задачи бизнеса в срок, в своей команде единственный backend-разработчик (у нас несколько команд). джун?
Не знаю как у вас, но у меня получилось 4 раза нет. Я не джун.
Не подошел по требованиям?
Ок, давайте посмотрим требования к вакансии в некой абстрактной российской крупной компании X?
Ждем в команду, если у тебя:
1) Опыт коммерческой разработки программного обеспечения от 3х лет.
Я: У меня 5 лет коммерческого опыта.
2) Владение языком Go или желание перейти на Go с C++, Java, C#, Python, PHP, Ruby или других языков;
Я: Пишу 2 года на Go, 5 лет PHP. Про слайсы, каналы, горутины, синхронизацию кода рассказал вам, что еще?
3) Опыт построения и применения сервисной архитектуры;
Я: А, не поверите, есть. У нас сервисная архитектура, кластер kubernetes. Посматриваю иногда 12 factor, читаю литературу по Event-driven architecture и всякое такое. Есть понимание, что-то еще?
4) Опыт работы с PostgreSQL/MySQL, Redis;
Я: Все есть в компании, все использую. К процедурам в Postgres смешанные чувства, но приходилось поддерживать и писать новые. Для Redis пришлось даже на Lua как-то скрипт написать, нужно было чтоб определенные действия выполнялись атомарно. EXPLAIN знаю, использую, ну понимаю план выполнения запроса не очень, но если надо будет оптимизировать запросы, с радостью ворвусь в эту тему.
5) Использование Unix, Git, понимание принципов CI/CD;
Я: Использую, любимая OS на данный момент - Ubuntu 20. Постоянно вожусь со всякими vps, в AWS у меня был сервер, в Google cloud сервер. Деплоил всякие пет-проекты, github actions использовал. На работе Gitlab CI. И на работе я пишу свои пайплайны и правлю текущие если надо, интеграционные тесты впиливаю в CI.
6)Желание постоянно совершенствоваться и изучать новые технологии.
Я: "Желание бешеное имею"
Разве это не мидловые требования? Разве я не подхожу?
Кстати, компания X. Проектировать решение, где вы изначально закладываете long polling с мобильного приложения, ну такое себе удовольствие. Есть вообще-то вебсокеты или SSE(Server Side Events).
Заключение
Смотрите, я - middle, требования в вакансии - middle. Ответ - "К сожалению, от компании X всё-таки пришел отказ, сказали что чуть-чуть не хватило."
Вопрос, чего не хватило middle до позиции middle? (риторический)
И я не понимаю, зачем вы издеваетесь над собой, собеседующими и собеседуемыми? Хотя, честно, мне по приколу. Это вы тратите время ваших тимлидов на собесы, которые заранее обречены, а сами тимлиды - очень интересные и грамотные люди, есть о чем поговорить с ними.
Но может вы все-таки перестанете обманывать себя) Вам нужен senior, а я - middle!
PS.
Благодарен за такую активность. Прошу прощения за некачественный местами текст, только учусь. Заметил после публикации уже, как много в тексте "Я-Я-Я", сильно портит содержание и ощущение от статьи.
Ни в коем случае не хотел негативного окраса. Также, не хотел чтобы статью считали "нытьем". Да, статья немного агрессивная (а может быть и много), но сделано это намеренно, чтобы передать то ощущение, когда действительно "горит".
Спасибо всем, кто дочитал до конца.