Coder Doesn’t Know


Гео и язык канала: Казахстан, Русский


- про IT & Big Tech
- Жизнь в Европе
- Релокацию и быт 🏝
По вопросам и консультациям: @coderdoesntknow_support
DISCLAIMER: Views/ideas are mine, not my employer’s. For info & educational purposes only.
P.S. I don’t share insights about my employer

Связанные каналы

Гео и язык канала
Казахстан, Русский
Статистика
Фильтр публикаций


Нужно ли говорить на интервью, что ты уже решал эту задачу?

Допустим, на техническом интервью тебе дают знакомую задачу. Ты помнишь идею или даже готовое оптимальное решение. Стоит ли сразу сообщить об этом интервьюеру? 🤔

Я знаю людей, которые признавались. Иногда им оставляли ту же задачу, потому что интервьюеру было важно, как кандидат сможет объяснить решение - был важен ход мыслей. А иногда задачу сразу меняли - и новую кандидат либо решал успешно, либо не решал, и приходилось ждать cool-down-период 🧊, обычно длиною в год, чтобы попробовать свои силы ещё раз.

Получается странная ситуация: за честность можно лишиться преимущества, ради которого ты месяцами/годами готовился.

На интервью в Uber 🚘 мне однажды попалась задача, которую я действительно решал раньше. Я не стал об этом говорить: именно ради такой форы я и готовился. Однако, я знаю много людей, кто считает это нечестным и 100% признались бы, что решали задачу ранее.

Насчёт собеседований в Meta 🥸 я вообще молчу - если прорешать топ-50 вопросов, которые спрашивали за последний месяц, то вероятность, что попадётся знакомая задача, очень высокая. У меня, например, из 6️⃣ задач (по две задачи на интервью) попалось 5️⃣ из этого списка. 😕

Вернёмся к варианту, в котором ты не признаешься, что уже решал(а) эту задачу, несмотря на то что ты знаешь её решение. 🧠

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

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

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


Читерство на техническом интервью?

Как-то на одном из собеседований я дал кандидату алгоритмическую задачу. Через несколько секунд он предложил неожиданное и при этом самое оптимальное решение. 🧠

Сам по себе быстрый ответ ничего не доказывает. Возможно, кандидат сразу увидел нужный паттерн или раньше решал похожую задачу. Но меня насторожило другое. Я решил более 700 задач на LeetCode и прошёл десятки алгоритмических интервью, однако до предложенного кандидатом подхода сам не додумался. А Claude, получив описание задачи, первым же решением выдал практически идентичное решение.

Разумеется, это не доказательство читерства. Совпадение вполне возможно. Поэтому проверять нужно не сам ответ, а понимание кандидата.

Может ли он последовательно объяснить ход мысли? Доказать корректность решения? Оценить сложность? Адаптировать алгоритм, если немного изменить условия?

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

Но что, если кандидат не использовал ИИ 🧠, а действительно решал эту задачу раньше? Должен ли он честно сказать об этом?

Об этом - в следующем посте.

488 0 0 10 18

Насколько ты готов к интервью?

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

Я помогаю разработчикам готовиться к техническим интервью в бигтех:
• Algorithms;
• System Design;
• Behavioral;
• Object-Oriented Design;
• Java Low-Level Design.

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

К чему именно я готовлю:

За 11 лет в разработке я прошёл множество интервью, в том числе в бигтех, и сам провёл под сотню технических собеседований.
Люди, которым я помогал готовиться, получали офферы в Google, Meta, Amazon, Uber, Microsoft, Waymo, Revolut, Bolt и другие компании.

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

@coderdoesntknow_support 👈


Как успешно пройти System Design Interview? [Часть 2]

4️⃣ Model

Какие основные сущности есть в нашей системе?

Например, для Uber это могут быть:
• Пассажир
• Водитель
• Поездка
• Локация

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

5️⃣ API

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

Например:

POST /rides

Headers:
• JWT

Request Body:
• pickupLocation
• dropoffLocation

Response Body:
• rideId
• status
• estimatedPrice
• estimatedArrivalTime

Это не обязательно должен быть REST API, но так проще всего объяснить, какие методы будут использоваться.
Главная задача - показать основные взаимодействия между клиентом и системой и понять, какие данные проходят через эти запросы.

6️⃣ High-level design

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

Не всегда хорошая практика добавлять что-то, потому что ты использовал это на прошлых проектах, и по этой причине добавлять, например, Kafka, когда может быть достаточно чего-то попроще или вообще синхронного вызова. Если ты видишь, что без Kafka / Streaming Platform / Queue не обойтись, то при добавлении этого блока нужно объяснить причины и потенциальные проблемы.

По моему мнению, в хорошем дизайне систем важны не технологии сами по себе (лучше сказать Streaming Platform / Queue, чем Kafka / Rabbit MQ), а набор концепций с объяснением, почему ты принимаешь именно такое решение.

Главное, не делай слишком сложный дизайн сейчас, сделай быстрые наброски основного флоу. Остальное - в следующей секции.

Что же использовать для рисования диаграммы? Компания либо предоставит свою рисовалку, как, например, делает Google, либо разрешит использовать свою, например Excalidraw, Miro и тому подобное.

Также некоторые люди используют Apple Pencil ✍️ и их аналоги, но будь аккуратен с почерком: всё должно быть понятно. Плюс, если ты используешь блоки в Excalidraw или Miro, то дизайн легко переделать/доделать вместо того, чтобы стирать его и рисовать заново.

На этом этапе все базовые требования должны быть закрыты.

7️⃣ Deep Dives

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

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

Например, если мы проектируем Uber 🚘, то один из интересных вопросов - как быстро находить ближайших водителей.

Можно начать обсуждать:
• Как хранить и постоянно обновлять локацию миллионов водителей?
• Как эффективно искать водителей поблизости?
• Что произойдет, если тысячи пользователей одновременно запросят машину в одном районе?
• Что делать, если водитель принял поездку, но её успели предложить другому пользователю?
• Бывает ли вообще так, что поездка может быть предложена нескольким водителям?

Здесь уже можно глубже разобрать Geospatial Indexing, Partitioning, Cache, Consistency, и закапываться в детали можно и нужно до бесконечности, пока не кончится время собеседования.

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

Чем выше твой уровень, тем меньше стоит ждать, пока интервьюер сам найдёт проблему. На Senior / Staff необходимо самому посмотреть на дизайн, найти потенциальное "узкое горлышко" и предложить его разобрать.

Помни: ты должен лидить собеседование и решать неопределённости.


Как успешно пройти System Design Interview? [Часть 1]

В странах типа моей System Design Interview - это, скорее, не стандартная практика. Обычно спрашивают Java, если нанимают Java-разработчика, и тому подобное. Но если ты решишь пособеседоваться в Т-Банк (он же Тинькофф) или Яндекс, то дизайн систем - нормальная практика.

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

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

Например ☝️:
• "design Uber"
• "design YouTube"
• "design ChatGPT".

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

Окей, с этим разобрались, но что именно нужно делать, чтобы построить условный Uber?

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

Во-вторых, от тебя не ждут готового дизайна всего Uber, YouTube и т.д. От тебя ждут, чтобы ты узнал(а) требования и сузил скоуп до того, чего ждёт интервьюер. Очень похоже на жизнь, когда тебе дают проект и тебе нужно разобраться, что именно от тебя хотят, так как требования очень расплывчаты.

Теперь давай разберёмся со step-by-step планом:

1️⃣ Собираем функциональные требования

Этот пункт отвечает на вопрос: что именно мы должны построить?
Например, тебе говорят: «Design Uber». Твоя задача здесь не сразу рисовать блоки 20ти сервисов, а начать задавать вопросы. Какую часть Uber мы проектируем и т.д.?

Например, что мы должны задизайнить:
• поиск машины рядом;
• matching водителя и клиента;
• отображение машины на карте в real time;
• создание поездки;
• платежи;
• история поездок?

За 45-60 минут построить весь Uber невозможно. Поэтому нужно вместе с интервьюером выбрать несколько основных use cases и дальше работать именно с ними.

2️⃣ Собираем нефункциональные требования

Теперь нужно понять не что делает система, а как хорошо она должна это делать.

Например:
• сколько у нас пользователей?
• сколько запросов в секунду / в день / в месяц / в год?
• важнее consistency или availability?
• какая допустимая latency?
• глобально ли расположены наши пользовальтели?

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

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

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

Например:
Cats Eat Sweet Lemons, Drinking Sugar-Free Coffee 👇

🔠 - CAP Theorem
🔠 - Environment
🔠 - Scalability
🔠 - Latency
🔠 - Durability
🔠 - Security
🔠 - Fault Tolerance
🔠 - Compliance

Можно придумать что-то своё, чтобы можно было пробежаться в уме на интервью и выбрать то, что нужно на твоем собеседовании.

3️⃣ Делаем back-of-envelope estimations

Или, говоря проще, грубые подсчёты.

Если мы будем знать, сколько пользователей в секунду пользуются сервисом, будет легче аргументировать предложенные идеи. Например, если у тебя получилось 500 RPS, возможно, тебе вообще не нужен тот распределённый монстр, который ты уже начал(а) рисовать.
А если получилось 500 000 RPS, то разговор совсем другой.

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

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

Главное, помни, что не нужно высчитывать всё с точностью до последнего байта. Цель - подсчитать грубо, как будто ты подсчитываешь на обратной стороне конверта, как на черновике. Точные цифры не помогут, но потратят твоё ограниченное время.


Как мой оффер отозвали за день до выхода

Как-то давно я проходил собеседования и получил оффер от одной казахстанской компании, назовём её XXX Digital. Сам проект мне очень понравился, а мой будущий тимлид, который собеседовал меня на последнем этапе, рассказал про планы и о том, как в компании и команде всё круто.

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

За день до выхода на работу мне пришло письмо, в котором было сказано, что компания решила сменить вектор.
Сказать, что я тогда удивился = ничего не сказать. 😰

К счастью, тогда у меня был ещё один активный оффер + я поговорил со своим тимлидом в компании, где работал, и он поговорил с руководством, сказав им, что убедил меня остаться. 🧠😂

В результате получилось даже так, что я извлёк из этого выгоду в виде нового проекта, где стал тимлидом ➕ мне подняли зарплату.

Если бы всем на пути попадались такие тимлиды, все мы были бы довольны жизнью чуть-чуть больше. 💯💯

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

А у тебя бывало, что оффер отзывали?


Зависть - это плохо?

Расскажи свою историю, когда зависть помогла тебе 🤟 или создала ещё больше проблем 🤢 в жизни.

Я начну: как-то давно я увидел, что коллега с моей первой работы, которого я собеседовал и принимал решение о его найме, попал в Microsoft. У меня так подгорело, что я начал готовиться 😂

829 0 0 12 26

Вроде рекрутер boeing пишет, а вроде и @gmail.com




Примерно полгода назад мне звонил рекрутер из Meta и спросил, знаю ли я C++. Я сказал, что нет. Меня переспросили: «А может, всё-таки когда-то работал с C++?» Я ответил, что, возможно, немного писал на C++ в универе. Меня попросили добавить C++ в резюме в виде коммерческого опыта и скинуть обновлённую версию. После этого рекрутер сказал, что назначит интервью 😂. Я решил уточнить, будут ли у меня спрашивать C++ на собеседовании. Конечно же, мне ответили, что нет и что я могу использовать любой язык программирования.

А накрутка, которую предложил рекрутер, считается вообще накруткой? 🤪

Что думаешь?


«Почему вы хотите у нас работать» или техника 3️⃣🩸

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

Техника 3P отлично подходит, чтобы ответить на этот вопрос:

1️⃣ Practical - показать, что ты реально знаешь, что компания делает и её масштабы.

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


2️⃣ Professional - показать, как твои профессиональные навыки закрывают позицию, на которую ты подаешься.

Пример:
Помимо этого, я обладаю всеми навыками, чтобы выполнять работу на высшем уровне. Например, позиция требует сильных лидерских качеств: я руковожу командой уже на протяжении 3 лет, и за это время мы сделали X и Y, увеличив прибыль компании на Z. Также я работаю с Java на протяжении 10 лет и знаю, как строить высоконагруженные системы с ее использованием.



3️⃣ Personal - показать химию, совпадение по ценностям или искреннюю симпатию к культуре/бренду.

Пример:
И конечно же, я считаю, что быть частью компании, которая является лидером на рынке - это огромное удовольствие и большой челлендж. По моему мнению, Uber в сфере такси - это как Google в сфере поиска. Также интересный факт: хоть в Казахстане и нет «чистого» Uber из-за коллаборации с Яндексом, люди в моем окружении все равно часто говорят «закажу Убер» вместо «закажу такси».


Мы часто говорим о первых двух пунктах, когда отвечаем на этот вопрос, но personal часть - самая интересная, так как она позволяет тебе выделиться из массы других кандидатов. Тебе просто нужно сделать ресерч и выбрать несколько нетривиальных вещей, которыми занимается компания, и подумать, как это может матчиться с тобой. Будь то твоя мысль о том, что Uber 🚓 в такси - это как Google в поиске, или какое-то личное воспоминание из прошлого, вроде: «Для меня Microsoft 💻 занимает отдельное место в сердце, потому что я до сих пор помню, как у меня появился первый компьютер и, будучи ребенком, я играл в свои первые игры на Windows🪟».

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


Своевременная выплата заработной платы 👆

Обожаю, когда "своевременная выплата зп" указана будто это какой-то бенефит 😅


Как увеличить шансы попасть на интервью a.k.a. как правильно просить реферал?

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

Увеличивают ли рефералы шансы на интервью
Точной статистики никто, конечно же, привести не сможет, но так исторически сложилось, что все мы считаем, что шансы это действительно повышает.

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

Как же искать заветный реферал?

1️⃣ Близкий круг: Поищи в списке прямых контактов тех, кто уже работает в компании мечты.

2️⃣ Знакомые знакомых: Если таких нет, спроси у коллег и друзей - возможно, у них есть нужные контакты.

3️⃣ LinkedIn: Если и тут пусто, самое время писать напрямую людям из своей сети в LinkedIn.

Важный момент про LinkedIn:
У многих пользователей закрыты личные сообщения для тех, кто не входит в их сеть контактов. Поэтому готовь сани летом: заранее добавляй специалистов из интересующих тебя компаний (например, вбивай в поиск «Software Engineer at Google»).
Когда открывается вакансия - у тебя уже есть 5-10 готовых контактов, которым можно написать.

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

Hi [Name],
I hope you’re doing well!

My name is [Your Name], and I’m a [Your Role, e.g., Senior Software Engineer with 5+ years of experience].
I’ve been following [Company Name] for a while and noticed an open role for [Job Title] (Job ID: [Job ID]). Given my background in [Skill 1] and [Skill 2], I believe I’d be a strong fit for the team.

I strongly align with [Company Name]'s culture, and having practiced extensively on algorithms and system design, I’m fully prepared for the interview process.

Would you be open to referring me?

I’ve attached my details below to make it as quick and easy for you as possible:
• Job Link: [Link]
• Resume: Attached / [Link]
• Full Name: [Your Full Name]
• Email: [Your Email]
• Phone: [Your Phone Number]

Thank you so much for your time!
Best regards,
[Your Name]


Главная фишка сообщения:
Оно должно содержать абсолютно всю информацию, необходимую для подачи. Если ты не приложишь ссылки или CV, шанс получить реферал стремительно стремится к нулю - никто не будет тратить время на уточняющие вопросы.

И конечно, помни:
Если тебе не ответили - это абсолютно нормально. Сотрудникам компаний уровня Google подобные просьбы прилетают десятками. Но так как у тебя в контактах заранее добавлено 5-10 человек из этой компании (ведь правда❓), ты просто идешь и пишешь следующему.

И главное правило:
Лучше податься на вакансию самостоятельно в первые секунды после её публикации, чем ждать реферал неделями 🧠. Относись к этому как к стопке из резюме: чем раньше твое CV окажется сверху, тем выше шансы на звонок от рекрутера.

1.2k 0 20 14 19

В дополнение к посту выше: Microsoft 🪟 уже приглашал меня на интервью на позицию Senior Software Engineer и даже сделал оффер (пруф прикреплён выше 👆).
В итоге я от него отказался, но их материалы для подготовки оказались очень полезными.

Я часто слышу о методологии 🔠🔠🅰️🔠 для ответов на вопросы в духе:
• Tell me about a time when you...
• Tell me about a situation where you...

Что же такое 🔠🔠🅰️🔠?

Это структура, по которой нужно рассказывать истории на поведенческом интервью:

• 🔠 (Situation) - описываем, когда это произошло и каким был контекст: размер команды, твоя роль, обстоятельства и т. д.

Я работал(а) в команде из 5 инженеров над платежным сервисом.


• 🔠 (Task) - объясняем, какую задачу нужно было решить или какой конфликт требовалось разрешить.

Нужно было снизить количество ошибок после релизов.


• 🅰️ (Action) - рассказываем, какие действия были предприняты.

Я проанализировал(а) причины, предложил(а) улучшения Х и внедрил(а) дополнительные проверки Y.


• 🔠 (Result) - описываем, какого результата удалось добиться.

Количество инцидентов снизилось на 50%, а релизы стали стабильнее.


Всё выглядит логично, но в Microsoft 🪟 используют немного модернизированную методологию - 🔠🔠🅰️🔠🔠, где последняя 🔠 означает Reflection.

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

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


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

1k 0 15 7 39



Пожинаю плоды работы в бигтехе 😅

Самое сложное в собеседованиях в бигтех - пройти резюме-скрининг.

Когда бигтех уже есть в резюме, жизнь становится немного легче.

P.S. Google всё ещё реджектит на этапе резюме 🤦‍♂️


Как я год работал стажёром бесплатно a.k.a. может, стоило накрутить?

Далеко-далеко в 2014-ом году я увидел развешанную рекламу в моем универе от одной знаменитой аутсорс компании для программистов, я пошел на эти курсы и спустя полгода меня позвали работать стажером во "внутренней лаборатории", где я и около 5️⃣ таких же, как я бедолаг бесплатно готовились к тому, чтобы нас взяли на "настоящий" ✅ проект.

Так я и попал на проект по учету отпусков сотрудников, где и дальше работал, набирался опыта и вроде бы все хорошо, но денег мне не платили и официального договора мы не подписывали 🤔 . Конечно же, были нереальные бенефиты в виде бесплатного кофе и фруктов один раз в день 😎 .

То есть, я не платил за курсы, на которых компания готовит своих будущих сотрудников, но и после целый год бесплатно работал. Выгодно ли это для компании? Скорее всего да, раз эти курсы до сих пор существуют, хоть и называются они модным названием "КАМПУС" 🐱 .

Кстати, именно на этих курсах я встретил преподавателя, у которого глаза горели, как программировать, так и преподавать. Я до сих пор очень рад, что я его повстречал, ведь я не хотел становиться программистом, так как навыков у меня не было от слова совсем, да и влечения напрограммировать что-то тоже не появлялось. Но! Моя двоюродная сестра тогда работала системным аналитиком, и я случайно узнал, сколько она зарабатывает. Я очень этим вдохновился 🤑. На тот момент не было курсов для аналитиков, и я решил, что пойду на курс по программированию, посмотрю, как кухня работает изнутри, а после переквалифицируюсь. Тогда я и встретил того самого преподавателя на курсах и увидел, что можно очень сильно любить программирование, и кодить я тоже полюбил 👨‍💻.

Так вот, проработал я в компании целый год бесплатно, деньги заканчивались, универ закончился тоже, и мне нужно было на что-то жить. Я пошел к менеджеру и спросил, какие дальнейшие шаги, чтобы уже наконец начать получать деньги 🤑. Через какое-то время "менеджер" решил мне позвонить в выходные и сказать, что будет ждать меня в офисе в понедельник. Сказал он это с улыбкой, и я даже подумал, что у него хорошие новости 🙅‍♂️. Я пришел, и мне было сказано, что я не сделал ничего важного для проекта, хотя буквально недавно я прикрутил анализатор SQL запросов и нашел несколько критически медленных запросов, которые тормозили систему, но посыл был в том, что мне нужно еще бесплатно поработать 🆓 . В этот же момент я забрал свои вещи и ушел из компании 🚶‍♂️.

Самое интересное, что перед уходом я подошел к своему "тимлиду", и он сказал, что я могу к нему обратиться, если мне нужна будет помощь в будущем (в другой компании 😃. Действительно, не заступаться ж ему за своего подопечного). Через несколько дней после ухода я написал ему и попросил рекомендательное письмо, чтобы это как-то помогло мне найти работу. Удивишься ли ты, если я скажу, что он меня проигнорировал 🤔?

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

А что ты бы выбрал(а):
🗿 - год работать бесплатно только ради опыта,
😎 - подкрутить резюме и получать хоть какие-то деньги сразу?


Если ты думаешь, что получив Биг Тех оффер ты резко разбогатеешь, то спешу тебя огорчить.

Раньше я всегда думал, что если начну работать в Биг Тех где-нибудь в Европе или США, то меня неизбежно ждёт безбедная старость, но реальность немного другая.

Я буду говорить на примере Великобритании 🇬🇧, где я сейчас нахожусь 📍.

Во-первых, раз ты только переехал, то тебе нужно где-то жить.

И как только ты немного обоснуешься (благо, ипотеку тут можно брать по рабочей визе, не дожидаясь паспорта), тебе нужно будет покупать недвижимость.
За наличные, как в моей стране, жилье здесь не купить, ведь у тебя, скорее всего, нет от 500 000 до 1 000 000 🩸. Придется брать ипотеку, которую придется выплачивать 25-30 лет 😱. То есть, сразу, ты привязываешь себя к тому, чтобы работать до самой пенсии.

Это один способ инвестиций в Европе, хоть и пугающий до жути 😃.

Второй способ - правильно перераспределять акции компании.

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

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

В Британии, к примеру, если я вкладываю 5% от своей зарплаты, то работодатель обязан вложить еще 2х от моей суммы. То есть, если я вкладываю 400 фунтов в месяц, то работодатель добавляет еще 800 фунтов - итого 1200 фунтов ежемесячно падает на пенсионный фонд. Эти деньги не просто лежат, они инвестируются в рынки. На практике за 30 лет за счет сложного процента они должны не просто покрыть инфляцию, а приумножиться, так что покупательская способность этой суммы в будущем будет даже выше (надеюсь 😂).

Четвёртый способ - государственная пенсия.

В дополнение к частной пенсии, Великобритания, при условии, что я отработаю в стране 35 лет и буду платить налоги, даст мне государственную пенсию. Сейчас это около 11 500 фунтов в год (или примерно 950 фунтов в месяц).

Если отработать меньше лет, то и сумму пропорционально урежут.

Пятый способ - покупка акций компании за 85% от стоимости.

Это помогает докинуть денег в общую копилку: если компания публичная, то часто есть возможность до 10% своей зп потратить на покупку акций компании за 85% от стоимости. Есть риск, что акции просядут и выгоды не будет, но есть шанс получить дополнительные деньги прямо сейчас.

Шестой способ - счет ISA.

Это местный аналог индивидуального инвестиционного счёта, куда можно положить до 20 000 фунтов в год. Ты просто покупаешь там акции или ETF, а весь доход с них вообще не облагается налогом. И в отличие от пенсии, снять их можно в любой момент.

❗️Итого, если разложить всё по полочкам, к пенсии картина вырисовывается следующая:

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

Выглядит ли это как хороший исход событий для тебя? Или когда жить-то?


На днях наткнулся на пост в инстаграм, где говорилось, что зарплата в Яндекс Казахстан у сеньора от 3х до 6ти миллионов тенге (6 млн - это ~12 500 долларов) И ВЫШЕ 😠.

Если это действительно так, то мне пора домой 😀🇰🇿

Веришь?😃


Вот и два года пролетели с тех пор, как я собрал рюкзак и улетел в другую страну - себя показать, на других посмотреть, да и лично проверить, что это за зверь такой: Биг Тех a.k.a. FAANG.

Как любят говорить в ИТ-сообществах: не работал в ФААНГе - не программист 😂.

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

1️⃣ Иллюзия «эмиграция всё исправит».

Если ты думаешь, что уедешь и все проблемы останутся позади, то я спешу расстроить. Многие верят, что переезд лечит душевные переживания, но спойлер: это так не работает. К старым ментальным проблемам ты просто добавишь ворох новых проблем в виде абсолютно чужого мира. С другой стороны, сидя в своей квартире в Астане, я постоянно думал: «Неужели моя жизнь так и пройдет? Без авантюр, приключений и сильной встряски?». Мною всегда движет любопытство и нежелание мириться с тем, что есть. Переезд точно оголит ваши душевные травмы. И это либо поможет с ними справиться, либо сделает вам ещё хуже 😃.

Короче, если до отъезда было плохо - на новом месте лучше не станет. Сначала разгребаешь проблемы, потом покупаешь билет. 🛸

2️⃣ Работники FAANG - сверхлюди.

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

3️⃣ Твой английский - скорее всего, норм.

В постсоветских странах обожают устраивать культ идеального языка, требуя от тебя уровень С1-C2 для чтения документации. На практике в Европе большинство людей в компаниях - такие же понаехавшие, как и ты. Если ты прошёл собес, где смог внятно рассказать, как героически решал конфликты на работе, ты готов на 100%. Никто здесь не будет душнить и проверять, умеешь ли ты к месту использовать Past Perfect Continuous.

4️⃣ Социальный вакуум.

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

5️⃣ Естественный отбор.

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

6️⃣ Последующие переезды всё легче и легче.

Второй переезд НЕ легче, а зачастую даже сложнее первого. В мае 2024-го я перебрался в Амстердам 🇳🇱, а уже в июне 2025-го - в Лондон 🇬🇧. Так вот, второй раз дался куда тяжелее, потому что внутренний топливный бак был уже на нуле от адаптации на первом месте.

7️⃣ Налог на быт.

За границей любое элементарное действие требует х2 усилий. Заболел зуб? 🦷 Удачи понять, как работает стоматология в этой стране. Нужна отвёртка? 🪛 Придётся порефлексировать, где её вообще купить. Спустя год в Лондоне у меня всё ещё больше вопросов, чем ответов. В какой-то момент мой мозг был настолько перегружен, что приходилось ставить жизнь на паузу, чтобы просто передохнуть от этого бесконечного непонимания.

8️⃣ Плюсы сытой жизни.

Зато съездить на концерт к любимому исполнителю или на крутой ивент стало в разы проще. К примеру, когда в 24-м я приехал в Нидерланды, во Франции как раз шла Олимпиада 🏀. Купить билет, арендовать тачку и рвануть на баскетбол оказалось делом пары кликов. В итоге главный гештальт моей жизни - увидеть звёзд НБА - официально закрыт, можно жить спокойно 🏖.

9️⃣ Карьерный абсурд.

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

Что думаешь, стоит ли нырять во всё это или хорошо там, где нас нет?

Показано 20 последних публикаций.