Собеседовал кандидата, не понял, как он на full loop попал
На full loop процент прохождение кодинг части собеса, обычно, сильно выше, чем на screen. Более того, те, кто не проходят, все равно показывают хоть какой-то перфоманс и могут просесть по части осей или по конкретной задаче.
Этот кандидат не смог решить ни одной задачи оптимальным способом. Он предлагал только брутфорс решения.
Посмотрел, какие задачи у него спрашивали на скрине - там были 2 простые задачи на массивы.
Я всегда спрашиваю задачи на 2 разные темы и разные структуры данных и разные подходы в решении. И почти все, кто прошел скрин со мной, проходят кодинг часть на full loop. Может ~5% не прошли потом.
На full loop процент прохождение кодинг части собеса, обычно, сильно выше, чем на screen. Более того, те, кто не проходят, все равно показывают хоть какой-то перфоманс и могут просесть по части осей или по конкретной задаче.
Этот кандидат не смог решить ни одной задачи оптимальным способом. Он предлагал только брутфорс решения.
Посмотрел, какие задачи у него спрашивали на скрине - там были 2 простые задачи на массивы.
Я всегда спрашиваю задачи на 2 разные темы и разные структуры данных и разные подходы в решении. И почти все, кто прошел скрин со мной, проходят кодинг часть на full loop. Может ~5% не прошли потом.
👍27❤7
Топ вещей, которые меня удивили, когда я пришел работать в Facebook
До Facebook у меня было 13 лет опыта, в том числе 3.5 года опыта в Amazon. Казалось, что меня уже ничем не удивить, но достаточно много вещей меня удивили.
1) On-demand машины и cloud коммитов. Мы не чекаутим код локально. Мы открываем среду разработки, нажимаем кнопку для подключения к машине в облаке, и код в локальной среде разработке отображается так, как будто он не в клауде, а локально. Подключение занимает несколько секунд и у вас за эти несколько секунд up-to-date код. Более того, ваши коммиты, которые вы еще не запушили и делали их на другой машине в другой день - отображаются и вы можете их зачекаутить нажатием одной кнопки.
2) Монорепа. Несмотря на огромное число команд(тысячи) и огромное число продуктов, тут очень ограниченное число репозирориев. Большая часть фейсбука в одном репозитории. Т.е. десятки тысяч разрабов коммитят в один репозиторий.
3) Реально работающий CI/CD. Несмотря на монорепу и тысячи коммитов в день в одну репу - ваш код окажется в проде за несколько часов после code review.
4) Слабое покрытие тестами. Покрытие тестами небольшое. В Амазоне в нашей команде было 97%. Тут над тестами меньше запариваются. При этом число багов не очень большое.
5) Монолиты. Большая часть фейсбука и большая часть инсты - это монолиты. Понятное дело, что вспомогательные вещи вынесены в отдельные сервисы(периодические джобы, ETL) и слои с хранилищами(файловые для видео, картинок, кэш, база, nosql и т.д.), но основная часть бизнес логики в монолитах. Все это в комбинации с монорепой и CI/CD очень впечатлило.
6) Не используются электронные письма для коммуникации. Тут есть Facebook Workplace, которые похож на внутренную соцсеть. Есть чаты, группы, видеозвонки, стриминг. Люди вместо писем пишут посты. Люди лайкают, репостят, пишут комментарии.
7) Встроенные мемы в код ревью тул. Вместо тестов, описания изменения кода и комментариев, можно вставлять мемы, что часто и происходит. Вместо плана тестирования вставляют какой-нибудь мем.
8) Регулярные Q&A с Цукербергом. Для тех, кто в главном офисе - можно присутствовать физически. В других - можно удаленно сидеть на стриме. Можно задавать вопросы и т.д.
9) Крутые внутренние тулы. Легко искать и навигироваться по коду, писать запросы, строить дашборды и метрики и много всего другого.
До Facebook у меня было 13 лет опыта, в том числе 3.5 года опыта в Amazon. Казалось, что меня уже ничем не удивить, но достаточно много вещей меня удивили.
1) On-demand машины и cloud коммитов. Мы не чекаутим код локально. Мы открываем среду разработки, нажимаем кнопку для подключения к машине в облаке, и код в локальной среде разработке отображается так, как будто он не в клауде, а локально. Подключение занимает несколько секунд и у вас за эти несколько секунд up-to-date код. Более того, ваши коммиты, которые вы еще не запушили и делали их на другой машине в другой день - отображаются и вы можете их зачекаутить нажатием одной кнопки.
2) Монорепа. Несмотря на огромное число команд(тысячи) и огромное число продуктов, тут очень ограниченное число репозирориев. Большая часть фейсбука в одном репозитории. Т.е. десятки тысяч разрабов коммитят в один репозиторий.
3) Реально работающий CI/CD. Несмотря на монорепу и тысячи коммитов в день в одну репу - ваш код окажется в проде за несколько часов после code review.
4) Слабое покрытие тестами. Покрытие тестами небольшое. В Амазоне в нашей команде было 97%. Тут над тестами меньше запариваются. При этом число багов не очень большое.
5) Монолиты. Большая часть фейсбука и большая часть инсты - это монолиты. Понятное дело, что вспомогательные вещи вынесены в отдельные сервисы(периодические джобы, ETL) и слои с хранилищами(файловые для видео, картинок, кэш, база, nosql и т.д.), но основная часть бизнес логики в монолитах. Все это в комбинации с монорепой и CI/CD очень впечатлило.
6) Не используются электронные письма для коммуникации. Тут есть Facebook Workplace, которые похож на внутренную соцсеть. Есть чаты, группы, видеозвонки, стриминг. Люди вместо писем пишут посты. Люди лайкают, репостят, пишут комментарии.
7) Встроенные мемы в код ревью тул. Вместо тестов, описания изменения кода и комментариев, можно вставлять мемы, что часто и происходит. Вместо плана тестирования вставляют какой-нибудь мем.
8) Регулярные Q&A с Цукербергом. Для тех, кто в главном офисе - можно присутствовать физически. В других - можно удаленно сидеть на стриме. Можно задавать вопросы и т.д.
9) Крутые внутренние тулы. Легко искать и навигироваться по коду, писать запросы, строить дашборды и метрики и много всего другого.
👍47🤣3
This media is not supported in your browser
VIEW IN TELEGRAM
Vibe coding идет хорошо, осталось сделать vibe debugging.
Угадайте изначальный промт.
Угадайте изначальный промт.
😁20🔥5👍4
Задача с собеседования в Meta, Bloomberg: Вертикальный обход бинарного дерева
Задача.
Дано бинарное дерево. Нужно обойти дерево вертикально. Т.е. столбец за столбцом. В рамках одного столбца элементы должны быть сверху вниз.
Для элементов, которые в одном столбце и одной строке, в результате они должны быть слева направо.
Ссылка на leetcode: https://leetcode.com/problems/binary-tree-vertical-order-traversal
Решение.
Решение описал тут: Вертикальный обход бинарного дерева. 314. Binary Tree Vertical Order Traversal.
Задача.
Дано бинарное дерево. Нужно обойти дерево вертикально. Т.е. столбец за столбцом. В рамках одного столбца элементы должны быть сверху вниз.
Для элементов, которые в одном столбце и одной строке, в результате они должны быть слева направо.
Ссылка на leetcode: https://leetcode.com/problems/binary-tree-vertical-order-traversal
Решение.
Решение описал тут: Вертикальный обход бинарного дерева. 314. Binary Tree Vertical Order Traversal.
LeetCode
Binary Tree Vertical Order Traversal - LeetCode
Can you solve this real interview question? Binary Tree Vertical Order Traversal - Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
👍18✍4❤2
Задача с собеседования в Amazon и Google: Valid Sudoku
Задача.
Определить, является ли корректным заполнение доски Судоку размером 9×9. Проверять нужно только заполненные клетки по следующим правилам:
- Каждая строка должна содержать цифры от 1 до 9 без повторений.
- Каждый столбец должен содержать цифры от 1 до 9 без повторений.
- Каждый из девяти блоков размером 3×3 должен содержать цифры от 1 до 9 без повторений.
Ссылка на leetcode: https://leetcode.com/problems/valid-sudoku
Решение.
Решение описал тут: 36. Valid Sudoku.
Код решение:
Задача.
Определить, является ли корректным заполнение доски Судоку размером 9×9. Проверять нужно только заполненные клетки по следующим правилам:
- Каждая строка должна содержать цифры от 1 до 9 без повторений.
- Каждый столбец должен содержать цифры от 1 до 9 без повторений.
- Каждый из девяти блоков размером 3×3 должен содержать цифры от 1 до 9 без повторений.
Ссылка на leetcode: https://leetcode.com/problems/valid-sudoku
Решение.
Решение описал тут: 36. Valid Sudoku.
Код решение:
public boolean isValidSudoku(char[][] board) {
int rows[] = new int[9];
int cols[] = new int[9];
int squares[][] = new int[3][3];
for (int i = 0; i < board.length; i++) {
for (int j = 0; j < board[i].length; j++) {
if (board[i][j] == '.') {
continue;
}
if (board[i][j] < '1' || board[i][j] > '9') {
return false;
}
int index = board[i][j] - '0' - 1;
int value = 1 << index;
if ((rows[i] & value) > 0) {
return false;
}
rows[i] |= value;
if ((cols[j] & value) > 0) {
return false;
}
cols[j] |= value;
if ((squares[i/3][j/3] & value) > 0) {
return false;
}
squares[i/3][j/3] |= value;
}
}
return true;
}LeetCode
Valid Sudoku - LeetCode
Can you solve this real interview question? Valid Sudoku - Determine if a 9 x 9 Sudoku board is valid. Only the filled cells need to be validated according to the following rules:
1. Each row must contain the digits 1-9 without repetition.
2. Each column…
1. Each row must contain the digits 1-9 without repetition.
2. Each column…
👍11✍3🤯1
Простой вопрос с собеседование на Java программиста
Как внутри устроен HashSet?
Ответ:
Под капотом это HashMap, в котором ключи - это объекты, которые мы хотим хранить в HashSet, а значения - объект класса Object.
Конкретно,
конструктор:
Добавление:
Как внутри устроен HashSet?
Ответ:
Под капотом это HashMap, в котором ключи - это объекты, которые мы хотим хранить в HashSet, а значения - объект класса Object.
Конкретно,
конструктор:
public HashSet() {
map = new HashMap<>();
}Добавление:
// Dummy value to associate with an Object in the backing Map
private static final Object PRESENT = new Object();
public boolean add(E e) {
return map.put(e, PRESENT)==null;
}
👍18🥱6❤2
Бессмысленные поведенческие собеседования в маленькие и средние компании
Я проходил поведенческие собеседования во все типы компаний, от стартапов на начальной стадии до компаний вроде Amazon и Facebook.
Раньше я считал, что это просто разговор о жизни и опыте. Но после прохождения поведенческих собеседований в FAANG я понял, что они гораздо более структурированы: у них есть чётко определённый и ограниченный перечень вопросов, а также понятные ожидания и критерии оценки.
И после поведенческих собесов в FAANG я поучаствовал в поведенческих собесах в не FAANG компании и понял что почти никто понятия не имеет как собеседовать и как оценивать. Многие спрашивают вопрос вроде: расскажи ченить про свой опыт. Это достаточно бессмысленный вопрос и вы на него получите такой же бессмысленный ответ. Все пытаются услышать какой-то опыт, который совпадает с тем как и что делает данная компания или команда. Но это можно узнать прочитав резюме + надо задавать конкретный вопрос, про какой-то опыт. Т.к. у человека может быть десяток-сотня проектов за карьеру и нужно понять, что вы хотите услышать. Но если ваша цель только в том, чтобы услышать ровно такой же опыт и такой же стиль работы, то зачем кандидату вообще нужна ваша компания, если он ровно над тем же и так же работает в другом месте.
И если ты выбрал не тот пример, который хочет услышать интервьюер, то это может быть прямым путем к реджекту. Хотя интервьюер не задавал четких вопросов. Т.е. это по сути бросание монетки.
Более того, собеседующие не имеет четких критериев оценки. Они просто смотрят на соответствие опыта и стиля работы (cultural fit) по их мнению.
FAANG компании же задают конкретные вопросы, на которых они хотят услышать пример, где вы продемонстрировали то или иное поведение или оказались в конкретного типа ситуации и какое поведение вы продемонстрировали. Также спрашивают конкретные примеры, которые помогают понять ваш уровень по масштабу проектов, масштабу конфликтов, масштабу direction, который вы задавали.
Я проходил поведенческие собеседования во все типы компаний, от стартапов на начальной стадии до компаний вроде Amazon и Facebook.
Раньше я считал, что это просто разговор о жизни и опыте. Но после прохождения поведенческих собеседований в FAANG я понял, что они гораздо более структурированы: у них есть чётко определённый и ограниченный перечень вопросов, а также понятные ожидания и критерии оценки.
И после поведенческих собесов в FAANG я поучаствовал в поведенческих собесах в не FAANG компании и понял что почти никто понятия не имеет как собеседовать и как оценивать. Многие спрашивают вопрос вроде: расскажи ченить про свой опыт. Это достаточно бессмысленный вопрос и вы на него получите такой же бессмысленный ответ. Все пытаются услышать какой-то опыт, который совпадает с тем как и что делает данная компания или команда. Но это можно узнать прочитав резюме + надо задавать конкретный вопрос, про какой-то опыт. Т.к. у человека может быть десяток-сотня проектов за карьеру и нужно понять, что вы хотите услышать. Но если ваша цель только в том, чтобы услышать ровно такой же опыт и такой же стиль работы, то зачем кандидату вообще нужна ваша компания, если он ровно над тем же и так же работает в другом месте.
И если ты выбрал не тот пример, который хочет услышать интервьюер, то это может быть прямым путем к реджекту. Хотя интервьюер не задавал четких вопросов. Т.е. это по сути бросание монетки.
Более того, собеседующие не имеет четких критериев оценки. Они просто смотрят на соответствие опыта и стиля работы (cultural fit) по их мнению.
FAANG компании же задают конкретные вопросы, на которых они хотят услышать пример, где вы продемонстрировали то или иное поведение или оказались в конкретного типа ситуации и какое поведение вы продемонстрировали. Также спрашивают конкретные примеры, которые помогают понять ваш уровень по масштабу проектов, масштабу конфликтов, масштабу direction, который вы задавали.
👍24
Получается ли у вас копить деньги работая программистом?
Расскажу как это было у меня.
Первые 9 лет карьеры у меня прошли в Москве. От интерна/джуна до тим лида. Первые несколько лет я работал part-time. В пике я зарабатывал $3500 gross в месяц. С учетом инфляции это $4600 или 380k рублей на современные деньги в месяц до уплаты налогов.
Мог ли я что-то откладывать тогда? Да, но не значительные суммы. Примерная математика: $3.5k в месяц это $42k в год. После налогов это $36.5k в год. Расходы: аренда однушки $7.2k в год, $10k еда, транспорт и другие текущие расходы, $5k - пару отпусков за границей в год, $5k - электроника, одежда, развлечения, рестораны и т.д. Итого примерно $27k расходов в год. $36.5k-$27k = $9.5k в год. Т.е. в пике я мог откладывать порядка $10k в год. С учетом инфляции это $13k в год или 1 миллион рублей на современные деньги.
Все это было в пике. Первые несколько лет я зарабатывал сильно меньше. В итоге за первые 9 лет карьеры (част из которых была парт тайм) я смог накопить ~$50k. С учетом инфляции это $66k или 5.5 миллионов рублей.
Когда я переехал в Германию, то я сначала ушел в минус. Нужно было снимать квартиру, покупать мебель и т.д. За год я примерно вышел в ноль.
За время работы в Amazon за 3.5 года я смог накопить более 100k евро. В учетом инфляции это $140k на современные деньги (11.5 миллионов рублей на современные деньги).
В Facebook я смог откладывать все деньги полученные с продажи акций. Это около $1.2M (После уплаты налогов это $600k или 50 миллионов рублей).
Получается ли у вас что-то откладывать?
Расскажу как это было у меня.
Первые 9 лет карьеры у меня прошли в Москве. От интерна/джуна до тим лида. Первые несколько лет я работал part-time. В пике я зарабатывал $3500 gross в месяц. С учетом инфляции это $4600 или 380k рублей на современные деньги в месяц до уплаты налогов.
Мог ли я что-то откладывать тогда? Да, но не значительные суммы. Примерная математика: $3.5k в месяц это $42k в год. После налогов это $36.5k в год. Расходы: аренда однушки $7.2k в год, $10k еда, транспорт и другие текущие расходы, $5k - пару отпусков за границей в год, $5k - электроника, одежда, развлечения, рестораны и т.д. Итого примерно $27k расходов в год. $36.5k-$27k = $9.5k в год. Т.е. в пике я мог откладывать порядка $10k в год. С учетом инфляции это $13k в год или 1 миллион рублей на современные деньги.
Все это было в пике. Первые несколько лет я зарабатывал сильно меньше. В итоге за первые 9 лет карьеры (част из которых была парт тайм) я смог накопить ~$50k. С учетом инфляции это $66k или 5.5 миллионов рублей.
Когда я переехал в Германию, то я сначала ушел в минус. Нужно было снимать квартиру, покупать мебель и т.д. За год я примерно вышел в ноль.
За время работы в Amazon за 3.5 года я смог накопить более 100k евро. В учетом инфляции это $140k на современные деньги (11.5 миллионов рублей на современные деньги).
В Facebook я смог откладывать все деньги полученные с продажи акций. Это около $1.2M (После уплаты налогов это $600k или 50 миллионов рублей).
Получается ли у вас что-то откладывать?
🔥21👍8
This media is not supported in your browser
VIEW IN TELEGRAM
Перфоманс ревью сотрудников/Собеседование в 2025
😁25🤔4
Когда AI заменит программистов?
Final Results
4%
Уже заменил
5%
Меня заменили
1%
В 2025
12%
В течение 3 лет
10%
5 лет
14%
10 лет
12%
30 лет
35%
Никогда
2%
100 лет
5%
>100 лет
В UK намечаются изменения миграционного законодательства
1) Планируется увеличить время для получение ILR(ВНЖ) с 5 до 10 лет
2) Повысить требования по английскому языку с B1 до B2
3) Усложнить тест по Life in the UK
4) Добавить требование по высшему образованию для Skilled Worker Visa
И много других изменений. В дополнение все же планируют ввести бальную систему, которая может позволить сократить требуемое время для получения ВНЖ.
Не известно, сколько займет принятие и имплементация этих изменений.
Надеюсь меня это не заденет, т.к. у меня уже давно ВНЖ и в этом году надеюсь подать на гражданство.
1) Планируется увеличить время для получение ILR(ВНЖ) с 5 до 10 лет
2) Повысить требования по английскому языку с B1 до B2
3) Усложнить тест по Life in the UK
4) Добавить требование по высшему образованию для Skilled Worker Visa
И много других изменений. В дополнение все же планируют ввести бальную систему, которая может позволить сократить требуемое время для получения ВНЖ.
Не известно, сколько займет принятие и имплементация этих изменений.
Надеюсь меня это не заденет, т.к. у меня уже давно ВНЖ и в этом году надеюсь подать на гражданство.
😢14🤔9👍5
Кандидат из Microsoft
Собеседовал сегодня кандидата из Microsoft. В очередной раз убедился в разнице требований к перфомансу на собеседовании в MSFT и Facebook.
Такое чувство, что он слабо знаком с процессом и критериями оценки впринципе.
Не задавал уточняющие вопросы, молчал во время написания кода. То, что он говорил, было сложно разобрать.
Код писал кривой, с кучей багов.
Во время тестирования не мог найти ни одной ошибки, мне приходилось указывать на каждую. Не мог придумать фикс.
Было чувство, что он первый раз проходит такого типа собес. Или снова фейковое резюме...
С кандидатами из Google такого ни разу не было. Все спокойно проходили кодинг часть.
Собеседовал сегодня кандидата из Microsoft. В очередной раз убедился в разнице требований к перфомансу на собеседовании в MSFT и Facebook.
Такое чувство, что он слабо знаком с процессом и критериями оценки впринципе.
Не задавал уточняющие вопросы, молчал во время написания кода. То, что он говорил, было сложно разобрать.
Код писал кривой, с кучей багов.
Во время тестирования не мог найти ни одной ошибки, мне приходилось указывать на каждую. Не мог придумать фикс.
Было чувство, что он первый раз проходит такого типа собес. Или снова фейковое резюме...
С кандидатами из Google такого ни разу не было. Все спокойно проходили кодинг часть.
🤔18🗿7👍5
Какой процент прохождения собеседований в Facebook?
Число проведенных мной собеседований в Facebook приближается к 200.
Примерная статистика по собеседованиям
1) Процент прохождения tech screen (coding) собеседования - 40%.
2) Процент прохождения одного кодинг раунда на full loop ~60%.
3) Процент прохождения full loop (2 coding, 1-2 system design, 1-2 поведенческих раундов) 20-30%
4) Общий процент прохождения всех собеседований (tech screen + full loop) ~10%.
Общий процент от поданых резюме ниже 10%, но статистику реджектов по резюме не знаю. То есть, лишь несколько процентов от подавших резюме получают оффер.
Число проведенных мной собеседований в Facebook приближается к 200.
Примерная статистика по собеседованиям
1) Процент прохождения tech screen (coding) собеседования - 40%.
2) Процент прохождения одного кодинг раунда на full loop ~60%.
3) Процент прохождения full loop (2 coding, 1-2 system design, 1-2 поведенческих раундов) 20-30%
4) Общий процент прохождения всех собеседований (tech screen + full loop) ~10%.
Общий процент от поданых резюме ниже 10%, но статистику реджектов по резюме не знаю. То есть, лишь несколько процентов от подавших резюме получают оффер.
👍21
Кандидаты из Microsoft пошли кучно
Сегодня собесил еще одного. Тоже Senior. В резюме также указано, что он решил 2000+ задач на литкоде, он в топ 700 на литкоде из 5 миллионов. Также какой-то рейтинг на codeforces.
Он также не задал ни одного уточняющего вопроса. Молчал или бормотал что-то во время кодинга. Не отвечал на уточняющие вопросы, игнорировал подсказки. Неверно оценил space и time complexity. Не смог продебажить шаг за шагом решение. Не смог назвать нормальные тест кейсы.
При этом первую задачу сначала коряво решил, потом что-то бормоча переделал под оптимальное решение. Вторую ничего не спрашивая и не обьясняя начал писать оптимальный код, но не правильно оценил space&time complexity и не смог обьяснить почему это лучше брутфорса.
Думайте, не предвзят ли я к кандидатам из MSFT...
Сегодня собесил еще одного. Тоже Senior. В резюме также указано, что он решил 2000+ задач на литкоде, он в топ 700 на литкоде из 5 миллионов. Также какой-то рейтинг на codeforces.
Он также не задал ни одного уточняющего вопроса. Молчал или бормотал что-то во время кодинга. Не отвечал на уточняющие вопросы, игнорировал подсказки. Неверно оценил space и time complexity. Не смог продебажить шаг за шагом решение. Не смог назвать нормальные тест кейсы.
При этом первую задачу сначала коряво решил, потом что-то бормоча переделал под оптимальное решение. Вторую ничего не спрашивая и не обьясняя начал писать оптимальный код, но не правильно оценил space&time complexity и не смог обьяснить почему это лучше брутфорса.
Думайте, не предвзят ли я к кандидатам из MSFT...
😁23🤯5🤔3
Почему в IT-секторе в последние 3 года столько сокращений?
Всех программистов заменяет AI?😬
Нет, никого AI пока не заменяет. Причины другие, но AI в этом тоже играет свою роль.
Основные причины:
1) Зрелось IT-сектора. Число пользователей facebook и instagram уже не растет экспоненциальными темпами, оно достигло предела и даже сокращается. Аналогично с числом пользователей google поиска и youtube. Производительность процессоров не растет в десятки раз за несколько лет, как в 90е. Т.е. большинство крупных игроков достигли предела развития своих ключевых продуктов. И уже не нужно столько программистов по сравнению с тем, чтобы придумать facebook или instagram и масштабировать его с нуля до миллиардов пользователей, не нужно масштабировать под картинки и видео. Все эти задачи были решены в предыдущие 20 лет.
2) Чрезмерный найм в ковид. Во время ковида спрос на online-сервисы быстро начал снова расти. Росло число пользователей, вовлеченность, потребность в online сервисах. Как только ковид закончился, все вернулось в доковидное состояние и очень быстро. При этом нанимали как не в себя. Revenue компаний не особо вырос или остался в прежних значениях, но число сотрудников выросло на десятки процентов. Т.е. доходы остались такими же, а расходы выросли на 10%-40%. Что и побудило многие компании прибегнуть к массовым сокращениям.
3) Постковидный экономический кризис. После ковида, большинство секторов мировой экономики, начали стагнировать или расти хуже, чем обычно. Сильно увеличилась инфляция. Спрос на большинство товаров и услуг снизился. Многие IT-компании от этого также пострадали. Те, кто зарабатывают на рекламе (google, meta и т.д.), стали меньше получать заказов на размещение рекламы от бизнеса.
4) AI-hype. Одновременно, с постковидом, начался хайп вокруг AI. Большинство развитых и больших IT-компаний всегда находятся в поиске новых точек роста (как раньше был блокчейн для всего, потом виртуальная реальность и т.д.). AI это большая потенциальная возможность. Более того, если это станет большим и успешным, а ты не вложишься в это по полной на ранней стадии, то проиграешь как компания. Есть вероятность превратиться в новый Yahoo или Kodak. Поэтому все крупные игроки в это вкладывают коллосальные деньги и ресурсы. При тех же не сильно растущих доходах это требует перераспределения ресурсов компании, что и приводит к массовым сокращениям в одних отделах и раздуванием новых.
5) Чрезмерный рост компенсации программистов. Цены на акции крупных компаний падали и росли в несколько раз. А т.к. компенсация программистов в крупных компаниях, в основном, состоит из акций компаний, то компенсации многих сотрудников превысили миллион или несколько миллионов долларов. Поэтому многие компании сокращают таких сотрудников. Иногда называя это сокращениями по перфомансу (как это было 10 февраля).
Всех программистов заменяет AI?😬
Нет, никого AI пока не заменяет. Причины другие, но AI в этом тоже играет свою роль.
Основные причины:
1) Зрелось IT-сектора. Число пользователей facebook и instagram уже не растет экспоненциальными темпами, оно достигло предела и даже сокращается. Аналогично с числом пользователей google поиска и youtube. Производительность процессоров не растет в десятки раз за несколько лет, как в 90е. Т.е. большинство крупных игроков достигли предела развития своих ключевых продуктов. И уже не нужно столько программистов по сравнению с тем, чтобы придумать facebook или instagram и масштабировать его с нуля до миллиардов пользователей, не нужно масштабировать под картинки и видео. Все эти задачи были решены в предыдущие 20 лет.
2) Чрезмерный найм в ковид. Во время ковида спрос на online-сервисы быстро начал снова расти. Росло число пользователей, вовлеченность, потребность в online сервисах. Как только ковид закончился, все вернулось в доковидное состояние и очень быстро. При этом нанимали как не в себя. Revenue компаний не особо вырос или остался в прежних значениях, но число сотрудников выросло на десятки процентов. Т.е. доходы остались такими же, а расходы выросли на 10%-40%. Что и побудило многие компании прибегнуть к массовым сокращениям.
3) Постковидный экономический кризис. После ковида, большинство секторов мировой экономики, начали стагнировать или расти хуже, чем обычно. Сильно увеличилась инфляция. Спрос на большинство товаров и услуг снизился. Многие IT-компании от этого также пострадали. Те, кто зарабатывают на рекламе (google, meta и т.д.), стали меньше получать заказов на размещение рекламы от бизнеса.
4) AI-hype. Одновременно, с постковидом, начался хайп вокруг AI. Большинство развитых и больших IT-компаний всегда находятся в поиске новых точек роста (как раньше был блокчейн для всего, потом виртуальная реальность и т.д.). AI это большая потенциальная возможность. Более того, если это станет большим и успешным, а ты не вложишься в это по полной на ранней стадии, то проиграешь как компания. Есть вероятность превратиться в новый Yahoo или Kodak. Поэтому все крупные игроки в это вкладывают коллосальные деньги и ресурсы. При тех же не сильно растущих доходах это требует перераспределения ресурсов компании, что и приводит к массовым сокращениям в одних отделах и раздуванием новых.
5) Чрезмерный рост компенсации программистов. Цены на акции крупных компаний падали и росли в несколько раз. А т.к. компенсация программистов в крупных компаниях, в основном, состоит из акций компаний, то компенсации многих сотрудников превысили миллион или несколько миллионов долларов. Поэтому многие компании сокращают таких сотрудников. Иногда называя это сокращениями по перфомансу (как это было 10 февраля).
👍21❤6🤔6
Угадайте с одного раза, кандидата из какой компании я собеседовал сегодня.
Ответ: Кандидат был из майкрософта. Видимо такое число кандидатов связано с недавними массовыми сокращениями.
Ответ: Кандидат был из майкрософта. Видимо такое число кандидатов связано с недавними массовыми сокращениями.
😁32🤔4👍3💯2
Не прошло и дня, как я снова собеседовал кандидата из Майкрософт...
Код писал на Java.
Выглядел он примерно так:
Табуляция, заглавная/не заглавная буквы в нейминге, отсутствие пробелов и конкретные конструкции в коде сохранены.
Код писал на Java.
Выглядел он примерно так:
Class treeNode....
{
....
while(node!null&&node.left==null)
{
.....
if(node==null){
return node.right;
}
}
}
Табуляция, заглавная/не заглавная буквы в нейминге, отсутствие пробелов и конкретные конструкции в коде сохранены.
🙈22🤯16😁11😱8😭3🙉1