Максим Фатин | про IT
4.12K subscribers
202 photos
4 videos
105 links
Помогаю с подготовкой к собеседованиям в RU Big Tech

https://clck.ru/3RdRKN

● Вместе с командой помогли 100+ разработчикам попасть в BigTech
● Жму 100-ку на 2 раза (есть куда расти)
● Люблю есть ночью)

Связь через Карину:
@Karina_algocode_io
Download Telegram
Как я возненавидел LINUX

4 курс универа. 5 дней до защиты курсача. 12 ночи. У меня windows ноут с ubuntu

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

И ТУТ КОМП ПРОСТО ВЫРУБАЕТСЯ

Я такой — эй братан, вставай

Нажимаю кнопку запуска


А он такой: у тебя место закончилось. И ТУТ Я ПРОСТО ВЫПАЛ

1) Я не могу включить ПК, потому что не хватает места
2) Чтобы почистить место — нужно его включить

ТАМ ДАЖЕ BIOS ЗАВИСАЛ!


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

И тут я нахожу божественный совет, как зайти в консоль

Зайти-то я зашел… но прав не хватало на удаление даже обычных папок...
Но я нашел все же несколько файлов которые можно было редачить и перезаписал их на пустые

Я думал, что сейчас он включится — и я узнаю кто былин виновник что забил мне всю память


И что вы думаете?

ВСЮ ПАМЯТЬ СОЖРАЛ ЧЕРТОВ DOCKER

Я его почистил — и все стало работать

Через 2 недели я купил мак и в ubuntu больше не возвращался

Ну и бахни 🌭если тоже кайфуешь от мака
🌭73🤣31❤‍🔥3🍓1
Как же бесят мега-ультра правила к паролям

К сервисам, где хранить-то особо и нечего

Создавал аккаунт Polar для мониторинга сердцебиения на кардиотренировке

И как будто оказался в password game

P.S. когда только запускал algocode — сам навертел пипец правил...

Больше так не делаю)

Ну и бахни 🌭 если тоже любишь усложнять
🌭51🍓8❤‍🔥3
Ультимативный гайд по алгосам

За 2 дня 1500 лайков - я такого в жизни не видел 😂

Думал, меня любит только мама, а тут такое

Максимально советую к просмотру на канале тем, кто еще не видел

Если кратко, то разложил все алгоритмические паттерны от А до Я
🌭61❤‍🔥27🤣2
Я умножил свою ЗП на 3, когда попал в Яндекс

Переход из Huawei в Яндекс дал мне ЗП 300 000. В то время я смотрел YouTube, и везде говорили, что ЗП большие

Ну вот я и решил рискнуть

Все 3 алго-секции Яндекса я щёлкнул за 30–45 минут (да-да, в те времена ещё были 3 секции алгосов)

Я понимал, что даже вслух сказать «хочу 300 000» вызывало у меня улыбку до ушей

Поэтому я тренировался с зеркалом

Смотрел в него 5 секунд и говорил «хочу 300 000» — как я думал


А по факту просто 5 секунд сдерживал улыбку, а потом ржал 2 минуты 😂

P.S. это буквально могли быть 2 минуты смеха

Спустя несколько дней — усердно тренируясь по несколько подходов в день — я освоил эту технику

И мог гордо сказать: «хочу 300 000»

Сказал так уверенно, что дали 320 000 :))) В общем, я попросил, а они согласились. Вот я ах*ел в моменте

А если наберем 100 🌭, то напишу как я просил у Авито 600 000 с двумя годами опыта и что из этого вышло
🌭193🤣3🍓1
Попросил у Авито 600 000

Тогда у меня было ~2 года коммерческого опыта

Попал туда по рекомендации очень заряженного чувака из Авито, который меня менторил

Он как раз уходил в Amazon и порекомендовал меня в соседние команды

Собесы пролетели на изи

— Платформу решил минут за 40-50 на senior
— Алго-секцию закрыл за 40 минут на senior
— Даже System Design умудрился пройти на middle+ (хотя я только начинал его изучать)

Да и в целом рекрутер мне написал

МАКСОН! ТЫ МАШИНА! ЩАС БУДЕМ ИСКАТЬ ТЕБЕ СИНЬОРНУЮ ВАКАНСИЮ...


А я знал, что синьор в Авито тогда — это примерно 450 000 net

И думаю:
а что если попросить 600 000… вдруг прокатит

Ну и попросил 😄

---

И вот тут началось интересное

После финала мой senior-грейд внезапно испарился
И меня позвали уже на middle+ (E4)

А финальные вопросы тогда казались вообще странными:

• Как ты решаешь задачи?
• Что важнее: клиент или бизнес?

Сейчас понимаю, что это ключевые вопросы, которые меня и подвели...


---

Ни одна команда мне не зашла
И я решил: ну ок, попробую дожать по максимуму, все равно идти не собираюсь

И отказался от оффера 360 000 net

Дальше было:

→ 380 000
→ + welcome бонус

Но я продолжал упираться

---

В итоге меня просто… слили 😄
И больше не зовут на собесы 😂


---

Пообщавшись после этого на отдельных созвонах с лидами из Авито, я уже понял:

— как реально проходить на senior
— почему мне дали middle+
— как правильно отвечать на такие "странные" вопросы

О чем и проводил стрим в сообществе algocode.io, а если уже в сообществе, то глянуть можно по ссылке (много инсайдерской инфы)
🌭39❤‍🔥2
Как СБЕР ДЕВАЙСЫ меня нанимали

История из примерно 2022, когда всё ещё был айтишный пайм и нанимали как не в себя

Я слышал, что ПРЕМИИ в СБЕРе такие БОЛЬШИЕ, перебить могут только web3-скамеры

И думаю — а почему бы не сходить и не посмотреть

Все тех. секции прошёл — всё ОК

А потом финал...

Я прихожу, и вот такой незатейливый ДИАЛОГ был
И — интервьюер, CTO

И: "Ну что, как прошёл все секции?"
Я: "Мне не показались они сложными"
И: "А как ты вообще себя оцениваешь?"
Я: "Senior"
И: "Ну вот давай поподробнее, что тебе интервьюер говорил и как он тебя оценил"
Я: "Не уточнял, но думаю, что он у вас есть — я сам как интервьюер заполняю отчёты"
И: "Проблема в том, что мы ПОТЕРЯЛИ ВЕСЬ ФИТБЕК ПО ТВОИМ СОБЕСАМ"


Меня просто разорвало от смеха

Такой фигни я ещё нигде не видел, прям подняли настроение

Может, кто недавно гонял к ним и расскажет, как сейчас с процессами?

P.S. но премии там действительно прям высокие оказались
🤣43🌭17
Я не общался с лидом 3 месяца

1-2-1 — вполне понятная практика

Так вот, после НГ у меня не было ни одного 1-2-1

Пару мыслишек о моём отношении к этому и как я ДЕЛАЮ ИЗ ЭТОГО КОНКУРЕНТНОЕ ПРЕИМУЩЕСТВО:

———

СТАДИЯ: да зачем мне 1-2-1

В целом, с текущим лидом больше обсуждали всегда технические моменты не же ли мотивацию и т д

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

Так что появление этого вопроса вполне закономерно

———

СТАДИЯ: а что происходит


Тут я уже начал писать в личку, спрашивать, что там по 1-2-1

Но, видимо, затерялось сообщение, а я его и не поднимал особо вверх

———

СТАДИЯ: а может, мне и не нужны 1-2-1

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

И в целом мне понятно, что и с каким приоритетом делать

———

Так что посмотрю, что из этого получится

Знаю, что у лида завал, и, пожалуй, лучший способ помочь — максимальная автономность, насколько это возможно (о чем он уже говорил, что ценит мою автономность)

Ну а раз я ей обладаю, почему бы и не выделиться

Считаю, что в этой ситуации это является крутым преимуществом, которое в дальнейшем можно и раскешить

Ну и в целом эксперимент интересный

———

Йоу! Бахни 🌭 по-братски, если твой 1-2-1 отменяли
🌭55❤‍🔥1🍓1
Всю пятницу ЛЕГЕНДАРНО КАТИЛ НОВЫЙ СЕРВИС

Напомню, что я работаю в AB-платформе

В общем, сервис, чтобы проводить эксперименты и смотреть, какая кнопка больше привлекает пользователя

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

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

В общем, распил монолита!

И как же я с*ка сгорел, когда затащили всю эту адскую миграцию, а потом нам говорят

А вы когда переливать данные хотите?

Я такой: мы же все перелили...

А это да, но нас тут попросили все пересчитать, и данные вообще новые, и у вас сейчас невалидные...


ЭХ СУУУУМКА ЕБУЧАЯ, думаю я

Но что ж, вот 17:00, а мы в легендарном дуо делаем переливку и все тестируем перед демо во вторник

Накидайте плз 🌭, а то я уже есть хочу, но нужно все доделать 😄
🌭105🤣1🍓1
У меня инсульт
🤣37🌭23❤‍🔥2
+1 хардкорный Яндексоид

Недавно прилетел вот такой вот отзыв
по подготовке на algocode.io

=============

Привет!
Только что был алго-собес в Яндекс.
Вот задачи с него:
- К ближайших чисел (algocode)
- Последовательность с суммой K (algocode)

обе решил за 40 мин)))

Макс, огромное тебе спасибо за твой титанический труд в алгосах))) Ты пушка-бомба, курсы просто охренительные!))))
Теперь пойду готовиться к TDD и SD, благо по ним курсы от Дани тоже есть))))

=============

А в посте хочу разобрать "К ближайших чисел" (условие на скриншоте)

В общем, дан отсортированный массив nums, индекс idx и число k. Нужно найти k ближайших чисел к nums[idx]

И ЯНДЕКС ЖДЁТ ОТ ТЕБЯ САМОЕ ПРЯМОЛИНЕЙНОЕ РЕШЕНИЕ

Решаем просто в лоб:
• ставим указатели l и r слева и справа от idx
• добавляем в ответ ближайшее число к nums[idx] и смещаем указатели

Главное НЕ ЗАБЫТЬ:
• Отслеживать выход за границы массива
• При равной удалённости чисел nums[l] и nums[r] от nums[idx] отдать предпочтение левому

И получим O(k) времени и O(k) памяти (память только на ответ тратим)
—-

И вуаля, ты в Яндексе 😏
Please open Telegram to view this post
VIEW IN TELEGRAM
🌭35🤣3
Самая важная новость текущей недели

Состоялась сделка по объединению ООО Отус (ярдовая компания) и algocode

И я КАПЕЦ РАД!

Это мега выгодная сделка вообще для всех: для клиентов, которые получат бОльше контента, для меня с Данилом (кореш с которым начинали делать algocode с самого начала) и для Отуса

6 месяцев шло обсуждение, и вчера всё подписали

Так что скоро в резюме напишут "Руководитель отдела разработки"

———

Я вот смотрю на весь путь, что прошёл, и вообще не жалею

Попробовал не только микросервисы пораспиливать и пообъединять, но и бизнесы 😂

P.S. микросервисы вообще фигня по сравнению с этим
🌭59❤‍🔥26🍓6🤣2
Гонял тут на конфу amoConf

Один из спикеров на полном серьёзе сказал:

"Промпты для AI — это прошлый век" ))))))))

Вот сижу и думаю — а может, это я отсталый…
Уже так сходу и не разберёшься 😂
🌭16🤣14🍓1
Почему никто не работает?

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

Тем быстрее меня хотят отфутболить 😂

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

Если у тебя так же, ТО ТУТ ДЛЯ ТЕБЯ АФИГИТЕЛЬНЫЙ ШАНС

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

НО КАК ИМЕННО?

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

90% всех с кем общаюсь не знают как пользователи пользуются продуктом, не знают конкурентов, да даже весь функционал не знают (в голове не собрана вся система) и т д

А без этого НЕРЕАЛЬНО ВЫСТРОИТЬ СВОЕ ВИДЕНЬЕ ПРОДУКТА

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

У тебя сходу начнут появляться фразы:
• Это не главный приоритет, давайте сфокусируемся на...
• Я бы хотел взять XYZ - это критично для пользователей и понимаю как пофиксить...
• Мы упускаем XYZ функционал которые есть у конкурента...

А это уже следующий уровень от "хочу вот эту интересную задачу"

И бахни 🌭 если заходят посты такого формата
🌭102🍓6
Новая техника разработки: WATERFALL (водопад)

Применяется исключительно в больших юнитах и горячих проектах

Стратегия такая:

1) Пару раз обсудить планирующиеся изменения с продактами, смежнми командами

2) Сделать пару митингов почему важно сделать это как можно быстрее

3) Убедиться, что фича настолько большая, что ее откат не возможен и проще все будет другим переделать чем вам откатывать

4) Зарелизить без уведомления смежных команд и наблюдать очень быструю перестройку всех процессов

----

Так вот, наша команда буквально попала ПОД этот ВОДОПАД задач

Фантастическая схема)))))
🤣37🌭12
Нанять, чтобы уволить !

Недавно написал знакомый с вопросом:

Устраиваюсь в компанию и меняю стек. Собесы прошёл, оффер есть, и как понять, что меня не уволят?"

Я вообще не понял вопроса сначала 😂


А потом такая история от него:

Слашал, что в компаниях нужно нанимать X человек в месяц и увольнять Y человек в месяц

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

Я, конечно, офигел

Поспрашивал корешей и понял, что какие-то единичные случаи действительно бывают

Вот так в 2026 доводят до ручки соискателей

Ну и ставь 🌭, если уже думал/гонял к психологу
🌭61🍓9
Кто отвечает за карьерный рост?

В начале своей карьеры я всегда выбирал BigTech из-за понятности карьерного трека

На сайте было написано:
• завтра Junior
• через полгода Junior+
• через год Middle
• через полтора года Middle+

Афигительный оффер! Я смотрел на это и уже видел свою ЗП — 600 000 зеленых в секунду через полтора года

И компании тут афигительно постарались, на мой взгляд

Но почему нет трека дальше?

Почему ведут не до Senior или Lead?

На мой взгляд, тут такие причины:
1) Дорого во всех смыслах
2) Не нужно в большом объеме
3) От Senior ждут глубокой экспертизы в некоторой теме + своего опыта

Нет смысла в одинаковых Senior — задача Senior повышать предел некомпетентности команды в конкретной области

Например:
• Петя может решить задачу сложностью 5 по математике и 2 по информатике
• Вадим — 3 по математике и 3 по русскому
• Женя — 1 по математике и 5 по информатике

Вопрос: кто Senior?

КОНЕЧНО, Петя и Женя — они могут решить то, что не решат другие

А Вадим — классический Middle

И КОНЕЧНО компании очень хотят к себе Женю и Петю, потому что у них самих дофига Вадимов и нужно, чтобы кто-то всех их направлял

В общем, карьера — это только твоя ответственность!

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

А если не знаешь - пора выбирать

Йоу! Ну и 🌭 не забывай ставить)
🌭91
Вайб пятничной разработки

1) Активно пушить все возможные активности на уставших коллег

2) Мега активно отвечать в чатах

3) Возмущаться, что в 17:00 половина не в онлайне, а я хочу катить релиз

Что не сделаешь ради повышения...

Ну и бахни 🌭, если хоть раз делал так же
🌭48🤣19
Как торговаться за ЗП?

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

ВЕДЬ ТОЛЬКО ТОГДА ты находишься в сильной переговорной позиции

Приведу пример: вот сервис упал и тут два варианта

1) ты просто прошелся по ранбуку и пофиксил

2) ты отловил аномальный наплыв событий в kafka, поскейлил сервис и починил все, а другие сидели и не могли понять, в чем проблема

——

Только во 2 случае ты получишь афигительный респект, потому что другие не знали, что делать

Твоя услуга по починке уникальна

——-

Чем больше у тебя есть таких "услуг", тем ты ценнее в глазах руководителя

Так, Максон, а как ТОРГОВАТЬСЯ-ТО ЗА ЗП???

Що ты тут затираешь...

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

Я придерживаюсь простой философии: если не ценят, нет смысла сидеть и пытаться подбирать афигеть замудреную комбинацию

Зачем все усложнять

Да, нужно сделать это вежливо

Да, лучше сходить и еще офер иметь больше текущего на 20–30%

НО!

Простого: "Привет, хочу обсудить твои ожидания по моей работе и получить фидбек"

Потом: "Рад, что фидбек положительный, я бы хотел и дальше расти и быть полезным для команды

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

Можем ли мы с тобой сделать коммитмент..."

Вообще должно быть достаточно, чтобы обо всем договориться

Кста, если есть интересные истории, как за ЗП торговался — пиши в комменты

И бахни 🌭
🌭54🍓2
Закат битовых задач в алгосах

Все началось с простой задачи:

Дан массив чисел nums. Каждое число повторяется 2 раза, кроме одного. Нужно найти это число

Ввод: [1,3,2,1,2,8,8]
Вывод: 3


Естественно, все очень быстро выучили оптимальное решение: нужно сделать xor всех элементов и получится число

А решение вот такое:

def find_single(nums):
result = 0
for n in nums:
result ^= n
return result


P.S. Работает чисто на битовой магии и честном слове

——

Потом, значица, компании ультанули и насоздавали вот таких задачек:
https://leetcode.com/problems/single-number-ii/description/
https://leetcode.com/problems/single-number-iii/

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

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

——

И сейчас мы наблюдаем закат этого битового безумия

Кстати, в своем старом ролике (https://www.youtube.com/watch?v=MSrv3iH65ow) на Ютабчике разбирал прикольные подходы к таким задачкам

Так что если все еще считаешь биты, пока выходить на следующий уровень 🌭)
🌭34❤‍🔥5🍓2
Ну что, готов проектировать мессенджер?

А это, между прочим, ТОП-3 задачка на проектирование по популярности, встречающаяся в Т-Банке, Авито и Яндексе

Вся сложность системы связана с real time и просто офигительной нагрузкой

В требованиях RPS на чтение может улетать под 100 000, а на запись — под 12 000 и выше

В этом посте хочу разобрать, в какой БД все это хранить, на примере продакшен опыта Discord-а

1) Discord начал с MongoDB

НО!

Не прошло и года, как съехали на Cassandra, ибо индексы перестали помещаться в память и запросы выполнялись нестабильно по времени

2) С Cassandra переехали на ScyllaDB

ИБО Cassandra написана на Java, и GC стал сильно аффектить на большой нагрузке

А ScyllaDB — та же Cassandra, но написанная на C++

3) В общем, ScyllaDB FOREVER

До сих пор ее используют

Нагрузка у Discord-а такого же порядка: десятки тысяч RPS на запись и сотни тысяч на чтение

—-

В общем, на собесе не вздумай брать MongoDB, PostgreSQL или MySQL для мессенджера при десятках тысяч RPS на запись. Бери или Cassandra, или ScyllaDB

Ну и это, бахни 🌭, если хочешь еще посты с System Design тематикой
🌭176🤣6❤‍🔥1🍓1