Результат
Мне закономерно написали, что я не прошёл менеджерский этап, да и по систем-дизайну был показатель middle+.
Что понравилось:
1. Растущая компания, которую вряд ли коснётся кризис в ближайшие годы.
2. Быстрая коммуникация и быстрые ответы.
Что не понравилось:
1. Судя по всему, тимлид там скорее менеджер, чем технарь. Согласились скипнуть техническую секцию, зато на менеджмент был большой акцент.
2. То, как именно проводили обе секции. Пожалуй, один из худших опытов собеседований за весь период поисков.
Мне закономерно написали, что я не прошёл менеджерский этап, да и по систем-дизайну был показатель middle+.
Что понравилось:
1. Растущая компания, которую вряд ли коснётся кризис в ближайшие годы.
2. Быстрая коммуникация и быстрые ответы.
Что не понравилось:
1. Судя по всему, тимлид там скорее менеджер, чем технарь. Согласились скипнуть техническую секцию, зато на менеджмент был большой акцент.
2. То, как именно проводили обе секции. Пожалуй, один из худших опытов собеседований за весь период поисков.
👍18✍5🔥2
На самом деле у меня для вас осталось всего две истории про #interview, но одна из них такая длинная, что я её разобью на две части. Завтра начну, а пока что интерлюдия: куда ещё подавался и как.
Т1 Иннотех
Интегратор, но с постоянными крупными клиентами типа Газпрома. Очень красивые сайты, хорошо оформленные вакансии. На DotNext пару лет назад я выиграл у них на стенде носки. Хорошие носки, долго носил, собственно поэтому и вспомнил про компанию.
Форма на сайте не позволила приложить файл с резюме. Написал на эйчарную (!) почту, там сказали подаваться через форму. Вакансия вскоре исчезла, в людях особо не заинтересованы, я не стал продолжать.
Авито
Подался через знакомство. Пришли с вакансией абсолютно мимо, что-то типа «Менеджер по техподдержке». Эйчар явно хотела просто хоть как-то ответить на резюме, раз ей его закинули, но не читала.
Я сказал, что я шарпист. Ответили, что шарписты не нужны, потому что переходят на Go. Предложили пройти собес на шарписта и переучиться на Go внутри. Интересный вариант, но я к тому моменту только начинал поиски, поэтому отказался. Go — унылейший язык, но платят за него много, может когда-то и перейду.
Северсталь
После Росатома первое время очень хотел снова в какую-то такую отрасль, чтобы заниматься промышленностью. Увидел вакансию .NET-сеньора. По всем ключевым пунктам идеально подходил, плюс есть опыт в смежной отрасли. Подался через почту на сайте, получил ответ, что не подхожу. Скорее всего, ответ автоматический, а на деле либо остановлен найм, либо ленивый эйчар.
Альфа-Банк
Полный игнор даже после подачи резюме через знакомства по программе реферралов.
Газпром
Через знакомства меня куда-то в подрядчиков закинули, но никакого эффекта это не возымело вообще.
Nedra Digital
Цифровизация бурения нефтяных скважин. На сайте и на hh очень пасофно расписано, как они ищут людей, но на самом деле не ищут. Полный игнор.
Lamoda Tech
Подавался через hh. Любопытно, что в вакансии были дополнительные пункты, которые обычно у разработчиков отсутствуют, а я по ним подходил: опыт программирования электроники, умение работать с Blazor, работа с промышленным оборудованием и т.д.
Игнор. Позже оказалось, вакансию забыли удалить.
Positive Technologies
Компания-разработчик систем компьютерной безопасности. Полный игнор.
Астра
Те, которые делают импортозамещение. Вакансия по моему стеку, подался через hh, полный игнор.
Касперский
Во всех выборках мне постоянно подсовывались вакансии Касперского. Но в прошлом году туда ушёл мой бывший начальник и, как я слышал, остался там. Руководитель он, на мой личный взгляд, крайне сомнительный, совершенно не хотелось бы снова с ним работать, поэтому я даже подаваться не стал.
______
В итоге я подался в 15 компаний. Из них от 9 был хоть какой-то отклик (60% от всех, считаю очень хорошим показателем). И в 6 были собеседования (40% от всех).
#dev
Т1 Иннотех
Интегратор, но с постоянными крупными клиентами типа Газпрома. Очень красивые сайты, хорошо оформленные вакансии. На DotNext пару лет назад я выиграл у них на стенде носки. Хорошие носки, долго носил, собственно поэтому и вспомнил про компанию.
Форма на сайте не позволила приложить файл с резюме. Написал на эйчарную (!) почту, там сказали подаваться через форму. Вакансия вскоре исчезла, в людях особо не заинтересованы, я не стал продолжать.
Авито
Подался через знакомство. Пришли с вакансией абсолютно мимо, что-то типа «Менеджер по техподдержке». Эйчар явно хотела просто хоть как-то ответить на резюме, раз ей его закинули, но не читала.
Я сказал, что я шарпист. Ответили, что шарписты не нужны, потому что переходят на Go. Предложили пройти собес на шарписта и переучиться на Go внутри. Интересный вариант, но я к тому моменту только начинал поиски, поэтому отказался. Go — унылейший язык, но платят за него много, может когда-то и перейду.
Северсталь
После Росатома первое время очень хотел снова в какую-то такую отрасль, чтобы заниматься промышленностью. Увидел вакансию .NET-сеньора. По всем ключевым пунктам идеально подходил, плюс есть опыт в смежной отрасли. Подался через почту на сайте, получил ответ, что не подхожу. Скорее всего, ответ автоматический, а на деле либо остановлен найм, либо ленивый эйчар.
Альфа-Банк
Полный игнор даже после подачи резюме через знакомства по программе реферралов.
Газпром
Через знакомства меня куда-то в подрядчиков закинули, но никакого эффекта это не возымело вообще.
Nedra Digital
Цифровизация бурения нефтяных скважин. На сайте и на hh очень пасофно расписано, как они ищут людей, но на самом деле не ищут. Полный игнор.
Lamoda Tech
Подавался через hh. Любопытно, что в вакансии были дополнительные пункты, которые обычно у разработчиков отсутствуют, а я по ним подходил: опыт программирования электроники, умение работать с Blazor, работа с промышленным оборудованием и т.д.
Игнор. Позже оказалось, вакансию забыли удалить.
Positive Technologies
Компания-разработчик систем компьютерной безопасности. Полный игнор.
Астра
Те, которые делают импортозамещение. Вакансия по моему стеку, подался через hh, полный игнор.
Касперский
Во всех выборках мне постоянно подсовывались вакансии Касперского. Но в прошлом году туда ушёл мой бывший начальник и, как я слышал, остался там. Руководитель он, на мой личный взгляд, крайне сомнительный, совершенно не хотелось бы снова с ним работать, поэтому я даже подаваться не стал.
______
В итоге я подался в 15 компаний. Из них от 9 был хоть какой-то отклик (60% от всех, считаю очень хорошим показателем). И в 6 были собеседования (40% от всех).
#dev
1👍35❤11🔥5🤯1
Т-Банк #interview #dev | часть 1 из 3
Компания, в которую я целился с самого начала. Если в другие места я иногда проходил собесы либо для тренировки, либо для получения запасных офферов, то сюда я сразу решил, что хочу попасть. Подался через знакомство. Система у них такая: собесят не на конкретную вакансию, а на должность, а потом ищут вакансию внутри. На должность тимлида надо было пройти: менеджмент, любой язык, систем дизайн, фит с руководителем и командой.
На скрининге эйчар спросил меня, готов ли я перейти на джаву. Запомните этот момент, я ответил, что не готов, и хотел бы оставаться в рамках привычного мне стека.
Перед каждой секцией эйчар высылал страницу со ссылками и рекомендациями, как готовиться, это сразу плюс. Там чаще всего были названия книг и ссылки на видеоролики с мок-собеседованиями.
Менеджмент
Опять же, я не понимаю, как его оценивать, и какой вопрос можно задать, чтобы отличить сеньор-менеджера от мидл-менеджера. Но, возможно, я как раз и не понимаю, потому что я не менеджер. В целом интервью прошло приятно, собеседующий поспрашивал про мой опыт, предложил решить некоторые кейсы. В процессе он намекнул, что тимлид, скорее всего, сам код писать не будет совсем, что меня не очень обрадовало.
Позже я узнал, что прошёл секцию на junior+. Не знаю, хорошо или плохо, вообще не понимаю, как сравнивать менеджеров, но для тимлида этого у них хватает. Ещё из Т-Банка после каждой секции поступала достаточно подробная обратная связь с рекомендациями литературы. Круто, нигде такого не было. Я был воодушевлён после этой секции и сразу купил книгу, которую посоветовали по результатам.
Языковая секция
По структуре точно такая же, как в Ozon: показывают на экране задачи, нужно решить, пишешь код сам, параллельно обсуждаете. Тут я блистал, потому что был очень хорошо готов. Я за секунды щёлкал все типовые вопросы, предугадывал уточнения интервьюера, пускался в неожиданную глубину устройства языка... Задача по SQL попалась в точности такая же, как в Ozon. Если помните, там я на ней затупил, но позже я конечно же обсудил все наилучшие варианты решения с DeepSeek и попробовал сам. Поэтому к некоторому удивлению интервьюера я лихо применил оконную функцию, вслух проговорив альтернативные способы. Кстати, здесь, в отличие от Озона, SQL-код можно было запускать и смотреть результат промежуточного запроса, это важный положительный аспект. Одна из задач была такая же, как в мок-интервью на ютубе, поэтому её я тоже знал. Потом буквально на полминуты притормозил на работе замыканий, но в итоге тоже дал верный ответ.
По собственным ощущениям я прошёл секцию идеально. Слишком идеально для человека. Слишком быстро и безошибочно на всё отвечал. Боялся, что подумают, будто бы мне подсказывал ИИ. В качестве обратной связи получил рекомендацию перечитать Рихтера, что тоже хороший знак: если тебе из рекомендаций советуют только адски задротную низкоуровневую литературу, значит, на всё более человеческое ты ответил прекрасно.
Много позже я узнал, что мне засчитали middle+. Что??? Я даже предложил эйчару совместно с каким-нибудь крупным техлидом пересмотреть запись собеса, настолько был поражён. Но в целом, это не очень важно, потому что общий грейд к тому моменту по всем секциям у меня был сеньорный. Просто непонятно и обидно.
System Design
Секция с самого начала пошла очень хорошо. Знакомый мне по пет-проектам и конкурсам домен: отслеживание курьеров на карте. Никаких абсурдных требований типа миллиарда запросов в секунду. Я с первых минут обсудил с интервьюером использование MongoDB ради геопространственных индексов, и, судя по всему, сразу же получил от него негласный респект. Удалось эффективно решить все проблемы, хорошо выбрать технологии. Никаких подводных камней, секцию прошёл на сеньора без вопросов.
Компания, в которую я целился с самого начала. Если в другие места я иногда проходил собесы либо для тренировки, либо для получения запасных офферов, то сюда я сразу решил, что хочу попасть. Подался через знакомство. Система у них такая: собесят не на конкретную вакансию, а на должность, а потом ищут вакансию внутри. На должность тимлида надо было пройти: менеджмент, любой язык, систем дизайн, фит с руководителем и командой.
На скрининге эйчар спросил меня, готов ли я перейти на джаву. Запомните этот момент, я ответил, что не готов, и хотел бы оставаться в рамках привычного мне стека.
Перед каждой секцией эйчар высылал страницу со ссылками и рекомендациями, как готовиться, это сразу плюс. Там чаще всего были названия книг и ссылки на видеоролики с мок-собеседованиями.
Менеджмент
Опять же, я не понимаю, как его оценивать, и какой вопрос можно задать, чтобы отличить сеньор-менеджера от мидл-менеджера. Но, возможно, я как раз и не понимаю, потому что я не менеджер. В целом интервью прошло приятно, собеседующий поспрашивал про мой опыт, предложил решить некоторые кейсы. В процессе он намекнул, что тимлид, скорее всего, сам код писать не будет совсем, что меня не очень обрадовало.
Позже я узнал, что прошёл секцию на junior+. Не знаю, хорошо или плохо, вообще не понимаю, как сравнивать менеджеров, но для тимлида этого у них хватает. Ещё из Т-Банка после каждой секции поступала достаточно подробная обратная связь с рекомендациями литературы. Круто, нигде такого не было. Я был воодушевлён после этой секции и сразу купил книгу, которую посоветовали по результатам.
Языковая секция
По структуре точно такая же, как в Ozon: показывают на экране задачи, нужно решить, пишешь код сам, параллельно обсуждаете. Тут я блистал, потому что был очень хорошо готов. Я за секунды щёлкал все типовые вопросы, предугадывал уточнения интервьюера, пускался в неожиданную глубину устройства языка... Задача по SQL попалась в точности такая же, как в Ozon. Если помните, там я на ней затупил, но позже я конечно же обсудил все наилучшие варианты решения с DeepSeek и попробовал сам. Поэтому к некоторому удивлению интервьюера я лихо применил оконную функцию, вслух проговорив альтернативные способы. Кстати, здесь, в отличие от Озона, SQL-код можно было запускать и смотреть результат промежуточного запроса, это важный положительный аспект. Одна из задач была такая же, как в мок-интервью на ютубе, поэтому её я тоже знал. Потом буквально на полминуты притормозил на работе замыканий, но в итоге тоже дал верный ответ.
По собственным ощущениям я прошёл секцию идеально. Слишком идеально для человека. Слишком быстро и безошибочно на всё отвечал. Боялся, что подумают, будто бы мне подсказывал ИИ. В качестве обратной связи получил рекомендацию перечитать Рихтера, что тоже хороший знак: если тебе из рекомендаций советуют только адски задротную низкоуровневую литературу, значит, на всё более человеческое ты ответил прекрасно.
Много позже я узнал, что мне засчитали middle+. Что??? Я даже предложил эйчару совместно с каким-нибудь крупным техлидом пересмотреть запись собеса, настолько был поражён. Но в целом, это не очень важно, потому что общий грейд к тому моменту по всем секциям у меня был сеньорный. Просто непонятно и обидно.
System Design
Секция с самого начала пошла очень хорошо. Знакомый мне по пет-проектам и конкурсам домен: отслеживание курьеров на карте. Никаких абсурдных требований типа миллиарда запросов в секунду. Я с первых минут обсудил с интервьюером использование MongoDB ради геопространственных индексов, и, судя по всему, сразу же получил от него негласный респект. Удалось эффективно решить все проблемы, хорошо выбрать технологии. Никаких подводных камней, секцию прошёл на сеньора без вопросов.
❤27👍1
Результат
Я получил грейд «Тимлид в команды до 8 человек», что оказалось весьма точной оценкой моего опыта. Поскольку я хотел именно в Т-Банк, радости моей не было предела. Сами интервью прошли прекрасно, процесс найма радовал подробной обратной связью. Я уже почти хотел завершать начатые в других местах собесы, и был уверен, что в ближайшее время получу шикарный оффер. Но...
(продолжение следует)
Я получил грейд «Тимлид в команды до 8 человек», что оказалось весьма точной оценкой моего опыта. Поскольку я хотел именно в Т-Банк, радости моей не было предела. Сами интервью прошли прекрасно, процесс найма радовал подробной обратной связью. Я уже почти хотел завершать начатые в других местах собесы, и был уверен, что в ближайшее время получу шикарный оффер. Но...
(продолжение следует)
1😱35👀11❤6😁3🤬2🔥1
Т-Банк #interview #dev | часть 2 из 3 (первая)
В предыдущих сериях: наш герой получил оффер от Ozon и отклонил его. Ещё были сравнительно неудачные серии интервью в Magnit Tech, Mindbox, Uzum. Однако, приобретённый опыт позволил очень круто пройти секции на тимлида в Т-Банк, куда герой и стремился. Получив грейд, он ждал заветного сообщения от эйчара. Т-Банку оставалось лишь найти вакансию внутри и провести фит...
...Но вакансий по нужному стеку не оказалось. Совсем. Эйчар ещё раз уточнил, хочу ли я перейти на джаву, потому что по джаве вроде как были. Я сказал, что не хочу. Через пару дней он предложил мне провести фит с руководительницей одной из команд отдела по работе с заявками юзеров в поддержку, но сразу предупредил, что не по моему стеку.
Фит 1
Очень бойкая руководительница, много спрашивала про опыт управления. Фактически, фит был похож на менеджерскую секцию, только более сжатую и с вопросами от меня. Команда оказалась фронтовой. Окей, у меня есть опыт фронта (хоть и не на Реакте, но догнать я бы смог, пожалуй). Занималась команда веб-приложением Т-Банка, которое с 2022 года стало кратно более популярным у любителей одной пафосной «just works» экосистемы.
Результат
Мне показалось, что нужен скорее менеджер, чем технарь, но я всё равно дал согласие. После встречи эйчар мне написал, что руководительница тоже ок. Ну всё, оффер?
Нет, утром следующего дня он снова мне написал, что она свой ок отозвала. Причины не объяснили.
Других вакансий не было. Эйчар предложил мне пройти ещё две секции: алгоритмическую и «архитектурную», и попробоваться на техлида. Я снова воодушевился. Алгоритмы я знаю, по архитектуре опыта тоже полно. Поехали.
Алгоритмическая секция
Код писать нужно было в местном редакторе без подсказок и автокомплита. Но можно было глянуть в документацию языка, я разок глянул. Две задачи решил целиком, для третьей придумал всё решение и написал 80% кода до того, как час закончился.
Задача 1
Два массива интов, могут быть разной длины. Отсортированы по возрастанию. Вывести объединение без дублей, сохранив сортировку и использовав константу дополнительной памяти.
Моё решение не сохранилось, но вот вам более красивое синтаксически, но точно такое же по смыслу решение Димы Тюрникова: MergeSortedLists. Сложность по времени:линейная .
Задача 2
У Пети сломалась клавиатура. Когда он вводит b, то вместо этого стирается последняя введенная строчная буква. Когда вводит B (большая английская бэ), то стирается последняя введенная заглавная буква. Остальные работают нормально. Дана строка из больших и маленьких английских букв, показывающая последовательность нажатия клавиш. Нужно вывести, что будет введено по факту.
Вот тоже код Димы, изменённый с учётом моего решения. То есть моё совершенно такое же: BrokenKeyboard. Сложность по времени:линейная , по памяти: линейная .
Задача 3
Дан массив неотрицательных интов. Нужно найти непрерывный подмассив с наибольшей суммой элементов такой, в котором не более двух разных типов чисел. И вывести сумму. Например можно [10,10,5,5] тут всего два типа чисел: десятка и пятерка.
Моё решение: MaxSubarraySum. Решение Димы с другим подходом: ArrayFound. И там и там сложность по времени:линейная , по памяти: константа .
«Архитектурная» секция
Пишу в кавычках, потому что, к моему ужасу, оказалось, что они так называют вторую менеджерскую секцию. Я не понимаю, почему. Вопросов по настоящей архитектуре не задавали. Поскольку систем-дизайн я уже прошёл раньше, то здесь ожидал, что будет солюшен архитектура: DDD, паттерны, low coupling / high cohesion и так далее. Эти темы я знаю хорошо, даже преподавал их студентам, поэтому был уверен, что пройду. Но это оказалась менеджерская беседа, прошёл я её предсказуемо ровно так же, как предыдущую менеджерскую: на junior+.
В предыдущих сериях: наш герой получил оффер от Ozon и отклонил его. Ещё были сравнительно неудачные серии интервью в Magnit Tech, Mindbox, Uzum. Однако, приобретённый опыт позволил очень круто пройти секции на тимлида в Т-Банк, куда герой и стремился. Получив грейд, он ждал заветного сообщения от эйчара. Т-Банку оставалось лишь найти вакансию внутри и провести фит...
...Но вакансий по нужному стеку не оказалось. Совсем. Эйчар ещё раз уточнил, хочу ли я перейти на джаву, потому что по джаве вроде как были. Я сказал, что не хочу. Через пару дней он предложил мне провести фит с руководительницей одной из команд отдела по работе с заявками юзеров в поддержку, но сразу предупредил, что не по моему стеку.
Фит 1
Очень бойкая руководительница, много спрашивала про опыт управления. Фактически, фит был похож на менеджерскую секцию, только более сжатую и с вопросами от меня. Команда оказалась фронтовой. Окей, у меня есть опыт фронта (хоть и не на Реакте, но догнать я бы смог, пожалуй). Занималась команда веб-приложением Т-Банка, которое с 2022 года стало кратно более популярным у любителей одной пафосной «just works» экосистемы.
Результат
Мне показалось, что нужен скорее менеджер, чем технарь, но я всё равно дал согласие. После встречи эйчар мне написал, что руководительница тоже ок. Ну всё, оффер?
Нет, утром следующего дня он снова мне написал, что она свой ок отозвала. Причины не объяснили.
Других вакансий не было. Эйчар предложил мне пройти ещё две секции: алгоритмическую и «архитектурную», и попробоваться на техлида. Я снова воодушевился. Алгоритмы я знаю, по архитектуре опыта тоже полно. Поехали.
Алгоритмическая секция
Код писать нужно было в местном редакторе без подсказок и автокомплита. Но можно было глянуть в документацию языка, я разок глянул. Две задачи решил целиком, для третьей придумал всё решение и написал 80% кода до того, как час закончился.
Задача 1
Два массива интов, могут быть разной длины. Отсортированы по возрастанию. Вывести объединение без дублей, сохранив сортировку и использовав константу дополнительной памяти.
Моё решение не сохранилось, но вот вам более красивое синтаксически, но точно такое же по смыслу решение Димы Тюрникова: MergeSortedLists. Сложность по времени:
Задача 2
У Пети сломалась клавиатура. Когда он вводит b, то вместо этого стирается последняя введенная строчная буква. Когда вводит B (большая английская бэ), то стирается последняя введенная заглавная буква. Остальные работают нормально. Дана строка из больших и маленьких английских букв, показывающая последовательность нажатия клавиш. Нужно вывести, что будет введено по факту.
Вот тоже код Димы, изменённый с учётом моего решения. То есть моё совершенно такое же: BrokenKeyboard. Сложность по времени:
Задача 3
Дан массив неотрицательных интов. Нужно найти непрерывный подмассив с наибольшей суммой элементов такой, в котором не более двух разных типов чисел. И вывести сумму. Например можно [10,10,5,5] тут всего два типа чисел: десятка и пятерка.
Моё решение: MaxSubarraySum. Решение Димы с другим подходом: ArrayFound. И там и там сложность по времени:
«Архитектурная» секция
Пишу в кавычках, потому что, к моему ужасу, оказалось, что они так называют вторую менеджерскую секцию. Я не понимаю, почему. Вопросов по настоящей архитектуре не задавали. Поскольку систем-дизайн я уже прошёл раньше, то здесь ожидал, что будет солюшен архитектура: DDD, паттерны, low coupling / high cohesion и так далее. Эти темы я знаю хорошо, даже преподавал их студентам, поэтому был уверен, что пройду. Но это оказалась менеджерская беседа, прошёл я её предсказуемо ровно так же, как предыдущую менеджерскую: на junior+.
👍10❤3🔥3
Результат
Эйчар написал, что для техлида псевдо-архитектурная секция должна быть на middle. Так что вернулись к тому, с чего начали. Дальше ситуация продолжилась: шли дни, параллельно проходили собесы в другие компании, а вакансий в Т-Банк всё не было. В какой-то момент я сказал, что можно и джаву попробовать. Уж очень нужна работа, активных офферов в тот момент не имелось, а Т-Банк, как компания, меня всё ещё привлекал. Я впал в отчаяние и думал, что это конец.
(продолжение следует)
Эйчар написал, что для техлида псевдо-архитектурная секция должна быть на middle. Так что вернулись к тому, с чего начали. Дальше ситуация продолжилась: шли дни, параллельно проходили собесы в другие компании, а вакансий в Т-Банк всё не было. В какой-то момент я сказал, что можно и джаву попробовать. Уж очень нужна работа, активных офферов в тот момент не имелось, а Т-Банк, как компания, меня всё ещё привлекал. Я впал в отчаяние и думал, что это конец.
(продолжение следует)
🤔9😢5
2ГИС #interview #dev
(UPD: чуть обновил текст, вспомнил еще часть)
Отвлечёмся на секунду от Т-Банка, там в реальности была затяжная пауза, я находился в подвешенном состоянии и не понимал, считать ли попытку устроиться туда проваленной или нет. Но параллельно никто не мешал ходить на другие собесы.
Увидел вакансию C#-разработчика в 2ГИС. О 2ГИС у меня много приятных воспоминаний. Помню, что был классный продукт, самобытный, и в него я заходил, когда информации в Яндексе не хватало. Со временем Яндекс сократил этот отрыв, задавил брендом и экосистемой. Как оказалось, 2ГИС никуда не делся, и даже растёт: 80 млн пользователей на текущий момент. А ещё карты, как я рассказывал, очень близкий мне домен по пет-проектам и конкурсам.
Этап первичной коммуникации с эйчаром пришёлся как раз на время, когда я считал, что завтра у меня будет оффер от Т-Банка. К тому же, эйчар отвечала с очень большими паузами: по несколько дней. Поэтому я, честно говоря, особо ни на что здесь не рассчитывал. Вообще думал, что она в какой-то момент забила на меня. А при первом созвоне честно предупредил, что я нахожусь в состоянии почти получения оффера от другой компании. Ха-ха.
Скрининг, к слову, был достаточно подробный, не просто по ключевым словам, а эйчар нормально расспросила об опыте, пожеланиях и так далее. Дальше планировался короткий технический скрининг, большая универсальная техническая секция и итоговый фит с руководителем.
Технический скрининг
Интервьюер сказал, что был на моем докладе на DotNext, и помнит меня. Круто, уже второй, кто узнал меня, в процессе этих собеседований. В целом он понимал, что я вроде не самозванец, поэтому пробежались с ним довольно быстро, и часть времени я позадавал вопросы о работе в компании.
Техническая секция
С моей точки зрения это был почти образцовый собес. В одной секции, не продлившейся дольше двух часов, задавали вопросы сразу и по языку, и по БД, и по архитектуре, и даже задачку на алгоритмы. Пожалуй, единственный минус — секция полностью разговорная. Код не писали, схемы не рисовали. Этого очень не хватило, и рассказывать устно алгоритмическое решение было не слишком прикольно.
Собственно, думаю, что такой разговорный стиль интервью ухудшил точность оценки хард-скиллов, поэтому я получил senior-.
Фит
Эйчар, технический руководитель, общая руководительница. Задавали вопросы по опыту, рассказывали про проект и команду. В принципе, ничего необычного. Спросили, чем хочу заниматься, а чем не хочу. Подумал, что самое неприятное в моей работе — дополнять чужой плохо спроектированный (!) код. Дополнять хорошо спроектированный это ок. Рефакторить говно в конфетку тоже ок. А вот если нужно дописать функцию, но рефакторить нельзя — это, конечно, боль.
Что понравилось
1. Роль эйчара не номинальная, задавались довольно подробные вопросы по опыту и пожеланиям
2. Собес почти в один ход, при этом спросили всё нужное
3. Интересный самобытный продукт, а сама компания при этом бигтех (2ГИС это контур Сбера)
Что не понравилось
1. Коммуникация со стороны эйчара поначалу была с огромными паузами
2. Вся основная секция сугубо разговорная, ей не хватило практических частей
3. В компании нет премий и индексации
Результат
Эйчар написала, что готовы сделать оффер, отправила анкету службы безопасности. К этому моменту Т-Банк пропал, Mindbox и Uzum отвалились. На фите спрашивали, какая сумма мне интересна, и я сказал, что меньше X вообще не буду рассматривать. Раз после этого пришли с инфой об оффере, то я логично подумал, что предложат как минимум X (так и оказалось). Поэтому ещё до конкретных цифр я уже понимал, что оффер, вероятнее всего, хороший, и был готов сразу его принять. Мне и компания нравится, и собес понравился, и вариантов других не было. Но тут вернулся Т-Банк...
(UPD: чуть обновил текст, вспомнил еще часть)
Отвлечёмся на секунду от Т-Банка, там в реальности была затяжная пауза, я находился в подвешенном состоянии и не понимал, считать ли попытку устроиться туда проваленной или нет. Но параллельно никто не мешал ходить на другие собесы.
Увидел вакансию C#-разработчика в 2ГИС. О 2ГИС у меня много приятных воспоминаний. Помню, что был классный продукт, самобытный, и в него я заходил, когда информации в Яндексе не хватало. Со временем Яндекс сократил этот отрыв, задавил брендом и экосистемой. Как оказалось, 2ГИС никуда не делся, и даже растёт: 80 млн пользователей на текущий момент. А ещё карты, как я рассказывал, очень близкий мне домен по пет-проектам и конкурсам.
Этап первичной коммуникации с эйчаром пришёлся как раз на время, когда я считал, что завтра у меня будет оффер от Т-Банка. К тому же, эйчар отвечала с очень большими паузами: по несколько дней. Поэтому я, честно говоря, особо ни на что здесь не рассчитывал. Вообще думал, что она в какой-то момент забила на меня. А при первом созвоне честно предупредил, что я нахожусь в состоянии почти получения оффера от другой компании. Ха-ха.
Скрининг, к слову, был достаточно подробный, не просто по ключевым словам, а эйчар нормально расспросила об опыте, пожеланиях и так далее. Дальше планировался короткий технический скрининг, большая универсальная техническая секция и итоговый фит с руководителем.
Технический скрининг
Интервьюер сказал, что был на моем докладе на DotNext, и помнит меня. Круто, уже второй, кто узнал меня, в процессе этих собеседований. В целом он понимал, что я вроде не самозванец, поэтому пробежались с ним довольно быстро, и часть времени я позадавал вопросы о работе в компании.
Техническая секция
С моей точки зрения это был почти образцовый собес. В одной секции, не продлившейся дольше двух часов, задавали вопросы сразу и по языку, и по БД, и по архитектуре, и даже задачку на алгоритмы. Пожалуй, единственный минус — секция полностью разговорная. Код не писали, схемы не рисовали. Этого очень не хватило, и рассказывать устно алгоритмическое решение было не слишком прикольно.
Собственно, думаю, что такой разговорный стиль интервью ухудшил точность оценки хард-скиллов, поэтому я получил senior-.
Фит
Эйчар, технический руководитель, общая руководительница. Задавали вопросы по опыту, рассказывали про проект и команду. В принципе, ничего необычного. Спросили, чем хочу заниматься, а чем не хочу. Подумал, что самое неприятное в моей работе — дополнять чужой плохо спроектированный (!) код. Дополнять хорошо спроектированный это ок. Рефакторить говно в конфетку тоже ок. А вот если нужно дописать функцию, но рефакторить нельзя — это, конечно, боль.
Что понравилось
1. Роль эйчара не номинальная, задавались довольно подробные вопросы по опыту и пожеланиям
2. Собес почти в один ход, при этом спросили всё нужное
3. Интересный самобытный продукт, а сама компания при этом бигтех (2ГИС это контур Сбера)
Что не понравилось
1. Коммуникация со стороны эйчара поначалу была с огромными паузами
2. Вся основная секция сугубо разговорная, ей не хватило практических частей
3. В компании нет премий и индексации
Результат
Эйчар написала, что готовы сделать оффер, отправила анкету службы безопасности. К этому моменту Т-Банк пропал, Mindbox и Uzum отвалились. На фите спрашивали, какая сумма мне интересна, и я сказал, что меньше X вообще не буду рассматривать. Раз после этого пришли с инфой об оффере, то я логично подумал, что предложат как минимум X (так и оказалось). Поэтому ещё до конкретных цифр я уже понимал, что оффер, вероятнее всего, хороший, и был готов сразу его принять. Мне и компания нравится, и собес понравился, и вариантов других не было. Но тут вернулся Т-Банк...
👍24🔥7
Т-Банк #interview #dev | часть 3 из 3 | (первая, вторая)
На самом деле, они объявились не внезапно. Когда я сказал, что, так и быть, несите вашу джаву, кушать то хочется, мне предложили ещё один фит. Сказали, что команда на Kotlin с использованием собственного т-банковского фреймворка Kora. Kotlin мне интереснее, чем голая Java, потому что Kotlin это как раз попытка превратить джаву в C# (об этом говорили сами авторы Котлина на презентации в JetBrains). Должность тимлида.
Фит 2
Классический фит, много спрашивали про мои цели и пожелания, как хочу развиваться. Я несколько раз подчеркнул, что хочу уходить не в менеджмент, а в тесную связку с техническими задачами: техлидом, архитектором и так далее. Интервьюер довольно долго пытался объяснить, чем именно занимается команда. Было что-то вроде «уменьшение числа повторных обращений в поддержку, но только в рамках функциональности, которая касается первичного контакта пользователя с банком/приложением». И оказалось, что вообще-то команда мобильных разработчиков, отсюда и Котлин. Наверное, было наивно полагать, что Котлин используют в продакшене на вебе в большой компании (ни разу не встречал). И всё-таки, моя сфера это веб-разработка. Даже фронт более менее могу. Но нативные мобилки это то, с чем я вообще не контактировал никогда. Даже микроконтроллеры или, скажем, игры и то в большей степени попадают в мой опыт, чем мобильные приложения.
Тут стало окончательно понятно, что в Т-Банке тимлиды это всё-таки больше менеджеры, именно поэтому технический стек не важен. Зачем собесили на язык, да ещё так подробно, да ещё и занизив оценку за идеальную секцию?
Результат
Эйчар написал, что команда не слишком поняла мою мотивацию, готов ли я вообще уходить в менеджмент. И предложили ещё одно интервью для корректировки. Тут я уже не выдержал. Это было бы восьмое интервью в Т-Банк. Я сказал, что нет, с меня довольно. Компания потратила пару десятков человеко-часов дорогих специалистов, чтобы меня прособесить, и не может ничего подходящего предложить. Если будет вакансия на .NET, и именно разработчиком, не тимлидом (в том значении, которое у них), то я схожу ещё на последний фит, иначе до свидания.
Здесь как раз я узнал, что получаю оффер в 2ГИС, так что отпустил Т-Банк. Но он вернулся за пару дней до, собственно, презентации оффера. Предложили фит разработчиком .NET (не тимлидом, в данном случае это плюс), вакансия с пылу с жару, запускается новый проект.
Фит 3
Из всех фитов, наверное, самый прикольный. Наконец-то мне задавали вопросы в духе: «Топ-3 книги по специальности», «Топ-3 книги не по специальности». Я вообще не очень сильно отделяю работу от своей личности, и уверен, что вкусы и увлечения человека в том числе влияют на его профессиональные навыки и поведение, поэтому с удовольствием пообщался на подобные темы.
Кстати, мои топ-3 книги по специальности:
1. Эрик Эванс, «Предметно-ориентированное проектирование». Это библия DDD, и с неё по факту началось моё изучение солюшен-архитектуры.
2. Генрих Альтшуллер, книги по ТРИЗ. Разработчик это инженер, а инженеру полезно знать ТРИЗ и применять иногда мышление оттуда.
3. Кит Бургун, «Теория геймдизайна». Фундаментальный взгляд на поведение интерактивных систем, полезно, даже, если вы не делаете игры. Писал о ней вам раньше.
Однако, домен, в котором работает команда, оказался с моей точки зрения этически-неоднозначным. А именно система по продаже имущества, которое должники не смогли выкупить из залога. Дело даже не в том, что нужно делать что-то якобы плохое. Просто это как работа в ритуальных услугах: ты постоянно будешь сталкиваться с негативными и болезненными сценариями в жизнях людей.
Результат
Команда меня одобрила, эйчар написал, что будут готовить оффер. Я напомнил, что у меня скоро выходит срок ответа по офферу от 2ГИС, так что надо поторопиться, чтобы я мог принять взвешенное решение. Договорились на преоффер, чтобы узнать цифры, так как общие условия я в целом знал: в Т-Банке есть премии и индексация, предлагали мне должность сеньор-разработчика .NET в новый проект, домен известен.
На самом деле, они объявились не внезапно. Когда я сказал, что, так и быть, несите вашу джаву, кушать то хочется, мне предложили ещё один фит. Сказали, что команда на Kotlin с использованием собственного т-банковского фреймворка Kora. Kotlin мне интереснее, чем голая Java, потому что Kotlin это как раз попытка превратить джаву в C# (об этом говорили сами авторы Котлина на презентации в JetBrains). Должность тимлида.
Фит 2
Классический фит, много спрашивали про мои цели и пожелания, как хочу развиваться. Я несколько раз подчеркнул, что хочу уходить не в менеджмент, а в тесную связку с техническими задачами: техлидом, архитектором и так далее. Интервьюер довольно долго пытался объяснить, чем именно занимается команда. Было что-то вроде «уменьшение числа повторных обращений в поддержку, но только в рамках функциональности, которая касается первичного контакта пользователя с банком/приложением». И оказалось, что вообще-то команда мобильных разработчиков, отсюда и Котлин. Наверное, было наивно полагать, что Котлин используют в продакшене на вебе в большой компании (ни разу не встречал). И всё-таки, моя сфера это веб-разработка. Даже фронт более менее могу. Но нативные мобилки это то, с чем я вообще не контактировал никогда. Даже микроконтроллеры или, скажем, игры и то в большей степени попадают в мой опыт, чем мобильные приложения.
Тут стало окончательно понятно, что в Т-Банке тимлиды это всё-таки больше менеджеры, именно поэтому технический стек не важен. Зачем собесили на язык, да ещё так подробно, да ещё и занизив оценку за идеальную секцию?
Результат
Эйчар написал, что команда не слишком поняла мою мотивацию, готов ли я вообще уходить в менеджмент. И предложили ещё одно интервью для корректировки. Тут я уже не выдержал. Это было бы восьмое интервью в Т-Банк. Я сказал, что нет, с меня довольно. Компания потратила пару десятков человеко-часов дорогих специалистов, чтобы меня прособесить, и не может ничего подходящего предложить. Если будет вакансия на .NET, и именно разработчиком, не тимлидом (в том значении, которое у них), то я схожу ещё на последний фит, иначе до свидания.
Здесь как раз я узнал, что получаю оффер в 2ГИС, так что отпустил Т-Банк. Но он вернулся за пару дней до, собственно, презентации оффера. Предложили фит разработчиком .NET (не тимлидом, в данном случае это плюс), вакансия с пылу с жару, запускается новый проект.
Фит 3
Из всех фитов, наверное, самый прикольный. Наконец-то мне задавали вопросы в духе: «Топ-3 книги по специальности», «Топ-3 книги не по специальности». Я вообще не очень сильно отделяю работу от своей личности, и уверен, что вкусы и увлечения человека в том числе влияют на его профессиональные навыки и поведение, поэтому с удовольствием пообщался на подобные темы.
Кстати, мои топ-3 книги по специальности:
1. Эрик Эванс, «Предметно-ориентированное проектирование». Это библия DDD, и с неё по факту началось моё изучение солюшен-архитектуры.
2. Генрих Альтшуллер, книги по ТРИЗ. Разработчик это инженер, а инженеру полезно знать ТРИЗ и применять иногда мышление оттуда.
3. Кит Бургун, «Теория геймдизайна». Фундаментальный взгляд на поведение интерактивных систем, полезно, даже, если вы не делаете игры. Писал о ней вам раньше.
Однако, домен, в котором работает команда, оказался с моей точки зрения этически-неоднозначным. А именно система по продаже имущества, которое должники не смогли выкупить из залога. Дело даже не в том, что нужно делать что-то якобы плохое. Просто это как работа в ритуальных услугах: ты постоянно будешь сталкиваться с негативными и болезненными сценариями в жизнях людей.
Результат
Команда меня одобрила, эйчар написал, что будут готовить оффер. Я напомнил, что у меня скоро выходит срок ответа по офферу от 2ГИС, так что надо поторопиться, чтобы я мог принять взвешенное решение. Договорились на преоффер, чтобы узнать цифры, так как общие условия я в целом знал: в Т-Банке есть премии и индексация, предлагали мне должность сеньор-разработчика .NET в новый проект, домен известен.
❤9🔥5👍4
Спросили про цифры. Напомню, что в 2ГИС предлагали X. Здесь я запросил на 20-25% больше с учётом всех премий. Сумма не выглядела завышенной, потому что прошёл я на высокий грейд, и потому что чистый оклад X приводил в итоге к среднемесячному доходу ~1.17X, если разбить годовую премию по месяцам. Стал ждать преоффера, больше интервью в Т-Банк не было.
Что понравилось:
1. Классические энтерпрайзные секции, известно, как готовиться
2. Перед интервью всегда скидывали рекомендации по подготовке с книгами и видеороликами
3. После интервью была очень детальная обратная связь, тоже с рекомендациями литературы
4. Хорошо размялся на алгоритмической секции
5. На языковой секции в задаче на SQL можно было выполнять запросы и смотреть результаты, в отличие от Озона, где требовалось по памяти составить нужный запрос с первого раза
Что не понравилось:
1. Чисто менеджерская секция без вопросов по архитектуре почему-то названа архитектурной и засчитывается, как архитектурная
2. Идеальную языковую секцию засчитали на middle+ по неизвестной причине
3. Постоянные качели: то есть вакансии, то нет, то тимлид, то техлид, то не техлид
4. Даже очень хорошее прохождение секций ничего не значит, и работу можешь не получить
5. Тимлиды это менеджеры без технических задач, поэтому предлагать им могут должность мимо стека. Даже очень сильно мимо стека.
Что бы вы выбрали с учётом всех вводных? Представьте, что вам предложили в Т-Банке 1.2X-1.25X. Не хочу запускать опрос, так что ставьте реакцию ангела 😇, если бы выбрали 2ГИС, и демона 😈, если бы выбрали Т-Банк )
Что понравилось:
1. Классические энтерпрайзные секции, известно, как готовиться
2. Перед интервью всегда скидывали рекомендации по подготовке с книгами и видеороликами
3. После интервью была очень детальная обратная связь, тоже с рекомендациями литературы
4. Хорошо размялся на алгоритмической секции
5. На языковой секции в задаче на SQL можно было выполнять запросы и смотреть результаты, в отличие от Озона, где требовалось по памяти составить нужный запрос с первого раза
Что не понравилось:
1. Чисто менеджерская секция без вопросов по архитектуре почему-то названа архитектурной и засчитывается, как архитектурная
2. Идеальную языковую секцию засчитали на middle+ по неизвестной причине
3. Постоянные качели: то есть вакансии, то нет, то тимлид, то техлид, то не техлид
4. Даже очень хорошее прохождение секций ничего не значит, и работу можешь не получить
5. Тимлиды это менеджеры без технических задач, поэтому предлагать им могут должность мимо стека. Даже очень сильно мимо стека.
Что бы вы выбрали с учётом всех вводных? Представьте, что вам предложили в Т-Банке 1.2X-1.25X. Не хочу запускать опрос, так что ставьте реакцию ангела 😇, если бы выбрали 2ГИС, и демона 😈, если бы выбрали Т-Банк )
😇91😈31❤1
Финал #interview #dev
Собственно, да. Выбор не единогласный, но вполне очевидный, и вы это тоже показали голосованием. Я два дня прокручивал в голове варианты, спрашивал у друзей и родственников их мнение, и в итоге не стал дожидаться преоффера. Написал Т-Банку отказ, а 2ГИС согласие. Вот завтра уже выхожу, первый рабочий день. Так что, сколько денег бы предложили в Т-Банке, мы так и не узнаем. Спросили, могут ли вернуться через год, если что. Конечно, пообщаться я всегда за. Кстати, в 2ГИС много акцента делали на простую и понятную систему повышения дохода, и она как раз через год должна будет себя показать.
В целом, конечно, наша современная система найма в айти сфере — никуда не годится. Собственно, нашумевший на днях случай с индусом по имени Сохам Парекх говорит сам за себя. Но кроме вероятности нанять шарлатана, есть и обратный эффект: не нанять нормального спеца. Я уже говорил, что без подготовки не прошёл бы даже на мидла нигде, хотя за счёт подготовки как специалист я не стал лучше, не получил никакого нового профессионального опыта.
В чём заключалась подготовка:
1. DeepSeek. Очень круто объясняет. Ты прямо ему задаёшь вопросы, которые в книгах затронуты поверхностно. Можно задавать максимально стыдные вопросы. Например, вот один из моих вопросов:
Я:
— Что является узлами кучи, в которой хранятся ссылочные типы в C#? Куча это отсортированное дерево, но я не понимаю, что такого можно извлечь из ссылочных объектов, чтобы по этому сортировать. И зачем.
DeepSeek:
— Понимаю вас, но здесь есть путаница в именовании. Куча (Heap), как структура данных — это не то же самое, что Куча (Heap) , как область памяти в C#, Java и других языках. Они называются одинаково, но имеют разное устройство и поведение...
...
2. Книги. Целиком я ни одну не прочитал, но погрузился в:
• Крис Ричардсон, «Микросервисы». Собственно, это один из авторов идеи микросервисов, хорошо объясняет, как и зачем.
• Алекс Сюй, System Design. Это просто книга с шаблонными примерами для шаблонной же секции.
• Ганс-Юрген Шёниг, PostgreSQL. Описаны, пожалуй, все существующие функции и особенности СУБД, но без разъяснения. В целом я делал так: узнавал у Шёнига о существовании чего-то и шёл в дипсик уточнять.
3. Видео
• Мок-собеседования. Некоторые компании даже прям свои собесы выкладывают на ютуб, удобно.
• Доклады, в основном с DotNext. Кстати, я в программе на эту осень, приходите слушать :)
Верно ли говорить, что от твоих настоящих умений вообще никак не зависит прохождение современных собеседований? Скажу так: к сожалению, софт-скиллы очень сильно решают. Если ты уверенно говоришь, обладаешь хорошим словарным запасом, активен, не делаешь больших пауз, то это даёт тебе огромный буст. Но полное прохождение на одних софтах это всё равно скорее запредельный случай.
Ещё хочу упомянуть, что нигде не спросили ничего по солюшен-архитектуре. Хотя от умения разработчика её выстраивать зависит, например, поддерживаемость его кода. Да и процент ошибок тоже.
______________________
Вижу, что многие подписались в разгар историй о собеседованиях. Конечно же, эти истории не могли продолжаться вечно. Но, если вам нравится мой слог, предлагаю попробовать остаться и почитать два-три следующих поста. Если потом поймёте, что не заходит, и отпишетесь, я не обижусь.
Обычно на этом канале я рассказываю о гиковых хобби: фантастика, 3D-печать, DIY, настольные игры. Иногда высказываю своё восприятие айти-новостей и технологий. Вот для примера мой типичный обзор на фантастическую книгу, а вот электронное устройство.
И ещё я очень люблю организацию пространства, много этим занимаюсь, поэтому друзья в шутку прозвали такие посты «ОКР-контент», так что я добавил специальный тег #окр. Типичные примеры вот и вот. Stay tuned )
Собственно, да. Выбор не единогласный, но вполне очевидный, и вы это тоже показали голосованием. Я два дня прокручивал в голове варианты, спрашивал у друзей и родственников их мнение, и в итоге не стал дожидаться преоффера. Написал Т-Банку отказ, а 2ГИС согласие. Вот завтра уже выхожу, первый рабочий день. Так что, сколько денег бы предложили в Т-Банке, мы так и не узнаем. Спросили, могут ли вернуться через год, если что. Конечно, пообщаться я всегда за. Кстати, в 2ГИС много акцента делали на простую и понятную систему повышения дохода, и она как раз через год должна будет себя показать.
В целом, конечно, наша современная система найма в айти сфере — никуда не годится. Собственно, нашумевший на днях случай с индусом по имени Сохам Парекх говорит сам за себя. Но кроме вероятности нанять шарлатана, есть и обратный эффект: не нанять нормального спеца. Я уже говорил, что без подготовки не прошёл бы даже на мидла нигде, хотя за счёт подготовки как специалист я не стал лучше, не получил никакого нового профессионального опыта.
В чём заключалась подготовка:
1. DeepSeek. Очень круто объясняет. Ты прямо ему задаёшь вопросы, которые в книгах затронуты поверхностно. Можно задавать максимально стыдные вопросы. Например, вот один из моих вопросов:
Я:
— Что является узлами кучи, в которой хранятся ссылочные типы в C#? Куча это отсортированное дерево, но я не понимаю, что такого можно извлечь из ссылочных объектов, чтобы по этому сортировать. И зачем.
DeepSeek:
— Понимаю вас, но здесь есть путаница в именовании. Куча (Heap), как структура данных — это не то же самое, что Куча (Heap) , как область памяти в C#, Java и других языках. Они называются одинаково, но имеют разное устройство и поведение...
...
2. Книги. Целиком я ни одну не прочитал, но погрузился в:
• Крис Ричардсон, «Микросервисы». Собственно, это один из авторов идеи микросервисов, хорошо объясняет, как и зачем.
• Алекс Сюй, System Design. Это просто книга с шаблонными примерами для шаблонной же секции.
• Ганс-Юрген Шёниг, PostgreSQL. Описаны, пожалуй, все существующие функции и особенности СУБД, но без разъяснения. В целом я делал так: узнавал у Шёнига о существовании чего-то и шёл в дипсик уточнять.
3. Видео
• Мок-собеседования. Некоторые компании даже прям свои собесы выкладывают на ютуб, удобно.
• Доклады, в основном с DotNext. Кстати, я в программе на эту осень, приходите слушать :)
Верно ли говорить, что от твоих настоящих умений вообще никак не зависит прохождение современных собеседований? Скажу так: к сожалению, софт-скиллы очень сильно решают. Если ты уверенно говоришь, обладаешь хорошим словарным запасом, активен, не делаешь больших пауз, то это даёт тебе огромный буст. Но полное прохождение на одних софтах это всё равно скорее запредельный случай.
Ещё хочу упомянуть, что нигде не спросили ничего по солюшен-архитектуре. Хотя от умения разработчика её выстраивать зависит, например, поддерживаемость его кода. Да и процент ошибок тоже.
______________________
Вижу, что многие подписались в разгар историй о собеседованиях. Конечно же, эти истории не могли продолжаться вечно. Но, если вам нравится мой слог, предлагаю попробовать остаться и почитать два-три следующих поста. Если потом поймёте, что не заходит, и отпишетесь, я не обижусь.
Обычно на этом канале я рассказываю о гиковых хобби: фантастика, 3D-печать, DIY, настольные игры. Иногда высказываю своё восприятие айти-новостей и технологий. Вот для примера мой типичный обзор на фантастическую книгу, а вот электронное устройство.
И ещё я очень люблю организацию пространства, много этим занимаюсь, поэтому друзья в шутку прозвали такие посты «ОКР-контент», так что я добавил специальный тег #окр. Типичные примеры вот и вот. Stay tuned )
👍51❤27🔥17❤🔥2
Раз всем так зашло, опубликовался на Хабре. Там, конечно, своя атмосфера, но по крайней мере делиться такой ссылкой проще, чем серией постов в Телеграме.
P.S. Текст тот же самый, кто читал тут, можно не смотреть. Вам показываю ради картинки )
https://habr.com/ru/articles/926214/
P.S. Текст тот же самый, кто читал тут, можно не смотреть. Вам показываю ради картинки )
https://habr.com/ru/articles/926214/
Хабр
Как я собеседовался в Ozon, Т-Банк, Mindbox и другие крупные компании
Всем привет. Я сеньор и тимлид на .NET (C#). До недавнего времени работал в Росатоме, пока там внезапно не сократили целую дирекцию по цифровизации. Так что пришлось срочно выходить на рынок, причём,...
👍44❤26😁16🔥5✍2
История одного прикольного проекта.
Многие знают, что я постоянно вписываюсь во всякие конкурсы, соревнования, хакатоны и прочий движ. Так вот где-то с полгода назад было объявление от фонда поддержки инновационных проектов при участии Ростеха: присылайте, дескать, нам идеи для улучшения оборудования, а мы вам денег дадим. Список оборудования прилагался, и там было всякое: например, огнетушитель, насосная станция, рециркулятор и так далее.
Вот как можно улучшить огнетушитель? Особенно, если вы не профессиональный специалист по борьбе с огнём. Скорее всего, с точки зрения его способности тушить пожар вы ничего крутого не придумаете. Я бы не придумал. Но улучшить огнетушитель, тем не менее можно: достаточно решить какую-то из проблем, которые возникают при работе с ним. На поверхности проблема UX: если у вас нет практического опыта, то с первого раза вы можете запутаться и не суметь его правильно открыть. Так что я предложил на каждый огнетушитель клеить QR, который запускает на телефоне вебсайт с трёхмерной интерактивной моделью, на которой можно прямо пальцами по экрану вытянуть чекувыдавить стекло и нажать на рукоятку. Конечно, когда уже горит, то возиться в приложении как-то странно, но вот во всяких очередях и залах ожидания люди вполне могли бы сканировать от скуки огнетушители и играться с их запуском, попутно обучаясь.
Увы, эту идею совсем не оценили. А жаль, мне и сейчас она кажется неплохой.
Ещё в списке были газоанализаторы от одного российского предприятия. «Ага!» — подумал я, и описал в заявке историю, как мы с другом проходили практику на заводе высоковольтных выключателей Siemens. Выключатели наполнены элегазом, в котором размыкается дуга. Он бесцветный и без запаха, но человек в присутствии этого газа быстро теряет сознание. И я подумал: что если газоанализатор помимо уведомления непосредственного владельца будет ещё и передавать телеметрию на какой-то центральный сервер?
Фонд эту идею тоже не оценил. Но через пару недель мне позвонили с завода по производству газоанализаторов и пригласили в гости. Большой комплекс в Москве, на базе советских промышленных помещений, но часть зданий уже обновлены. Было довольно интересно: всё показали, рассказали, дали покрутить платы, посмотреть на датчики. Ну и, собственно, заказали мне разработку под ключ, оплачиваемую, разумеется. Совместно позже составили ТЗ и заключили договор.
Дальше несколько месяцев я в перерывах между основной работой кодил на C# + Vue (TypeScript) фулстек-приложение. В качестве БД по условиям нужно было что-то локальное и с шифрованием, так что я взял SQLCipher. Библиотеки для UI, графиков. Отдельный модуль для чтения данных через ModbusRTU. Конфигурации для регистров, отдельная программа для создания сборок разным заказчикам. Завёл в программу систему триггеров, чтобы при разных условиях можно было дёргать вебхуки и/или менять статусы устройств. Ну, например, если концентрация с датчика N уже пять минут превышает некоторый порог, то сигналим тревогу. Или если устройство M не в сети полчаса. И так далее. Поначалу сделал очень гиково: интерпретатор выражений с переменными. Можно было ввести в параметры триггера что-то типа
Приехал показывать. Думал: ну всё, сейчас расскажу им про все функции, задам вопросы для доработок. Собрали внезапно целый конференц-зал в присутствии большого начальника. Но оказалось, что 80% присутствующих абсолютно ничего не знали об этом проекте (завод очень большой, в нём много отделений, я взаимодействовал с небольшой группой интересантов). Через пятнадцать минут как раз на рассказе про язык выражений большое начальство прервало меня с вопросом о том, что это вообще такое, и что конкретно я пытаюсь продемонстрировать. Я безуспешно пытался что-то промямлить о ТЗ и о том, что это вообще-то их заказ, и вроде как им должно быть интересно, что я в итоге сделал, как оно работает, и вообще выполняет ли поставленную задачу.
Многие знают, что я постоянно вписываюсь во всякие конкурсы, соревнования, хакатоны и прочий движ. Так вот где-то с полгода назад было объявление от фонда поддержки инновационных проектов при участии Ростеха: присылайте, дескать, нам идеи для улучшения оборудования, а мы вам денег дадим. Список оборудования прилагался, и там было всякое: например, огнетушитель, насосная станция, рециркулятор и так далее.
Вот как можно улучшить огнетушитель? Особенно, если вы не профессиональный специалист по борьбе с огнём. Скорее всего, с точки зрения его способности тушить пожар вы ничего крутого не придумаете. Я бы не придумал. Но улучшить огнетушитель, тем не менее можно: достаточно решить какую-то из проблем, которые возникают при работе с ним. На поверхности проблема UX: если у вас нет практического опыта, то с первого раза вы можете запутаться и не суметь его правильно открыть. Так что я предложил на каждый огнетушитель клеить QR, который запускает на телефоне вебсайт с трёхмерной интерактивной моделью, на которой можно прямо пальцами по экрану вытянуть чеку
Увы, эту идею совсем не оценили. А жаль, мне и сейчас она кажется неплохой.
Ещё в списке были газоанализаторы от одного российского предприятия. «Ага!» — подумал я, и описал в заявке историю, как мы с другом проходили практику на заводе высоковольтных выключателей Siemens. Выключатели наполнены элегазом, в котором размыкается дуга. Он бесцветный и без запаха, но человек в присутствии этого газа быстро теряет сознание. И я подумал: что если газоанализатор помимо уведомления непосредственного владельца будет ещё и передавать телеметрию на какой-то центральный сервер?
Фонд эту идею тоже не оценил. Но через пару недель мне позвонили с завода по производству газоанализаторов и пригласили в гости. Большой комплекс в Москве, на базе советских промышленных помещений, но часть зданий уже обновлены. Было довольно интересно: всё показали, рассказали, дали покрутить платы, посмотреть на датчики. Ну и, собственно, заказали мне разработку под ключ, оплачиваемую, разумеется. Совместно позже составили ТЗ и заключили договор.
Дальше несколько месяцев я в перерывах между основной работой кодил на C# + Vue (TypeScript) фулстек-приложение. В качестве БД по условиям нужно было что-то локальное и с шифрованием, так что я взял SQLCipher. Библиотеки для UI, графиков. Отдельный модуль для чтения данных через ModbusRTU. Конфигурации для регистров, отдельная программа для создания сборок разным заказчикам. Завёл в программу систему триггеров, чтобы при разных условиях можно было дёргать вебхуки и/или менять статусы устройств. Ну, например, если концентрация с датчика N уже пять минут превышает некоторый порог, то сигналим тревогу. Или если устройство M не в сети полчаса. И так далее. Поначалу сделал очень гиково: интерпретатор выражений с переменными. Можно было ввести в параметры триггера что-то типа
{КАНАЛ1.КОНЦЕНТРАЦИЯ} + 5 > {КАНАЛ1.ПОРОГ1}
.Приехал показывать. Думал: ну всё, сейчас расскажу им про все функции, задам вопросы для доработок. Собрали внезапно целый конференц-зал в присутствии большого начальника. Но оказалось, что 80% присутствующих абсолютно ничего не знали об этом проекте (завод очень большой, в нём много отделений, я взаимодействовал с небольшой группой интересантов). Через пятнадцать минут как раз на рассказе про язык выражений большое начальство прервало меня с вопросом о том, что это вообще такое, и что конкретно я пытаюсь продемонстрировать. Я безуспешно пытался что-то промямлить о ТЗ и о том, что это вообще-то их заказ, и вроде как им должно быть интересно, что я в итоге сделал, как оно работает, и вообще выполняет ли поставленную задачу.
🔥24❤2
Вопросы не задавали, и мне задать не дали. Презентацию прервали, я ушёл. Позже в коридорах уже конкретные мужики инженеры, с кем я изначально обсуждал проект, нормально высказали пожелания и дали мне ответы. А ещё упаковали с собой коробку с несколькими газоанализаторами и ПЛК к ним.
В общем, настроение моё было смешанное. Вроде у нас договор, так что кинуть меня не должны были. Но вроде как начальству пофиг. Но по меньшей мере я понял, что делать нужно попроще, и после возвращения домой выпилил движок с выражениями, оставив набор выпадающих условий. А ещё подключил к настоящим устройствам и погонял дома у себя с помощью зажигалки.
В итоге всё закончилось хорошо. Проект я сдал, оплату получил. Используют ли его, я не знаю, надеюсь, что хотя бы экспериментально установили кому-нибудь из клиентов на производство. Но это первый мой заказ, который включал сразу бэк, фронт, работу с железом, шифрование, формирование установочных пакетов. Короче, опыта набрал прилично. На первом фото сборка газоанализаторов у моего компьютера, на втором дашборд с графиками концентраций.
#dev #gadgets
В общем, настроение моё было смешанное. Вроде у нас договор, так что кинуть меня не должны были. Но вроде как начальству пофиг. Но по меньшей мере я понял, что делать нужно попроще, и после возвращения домой выпилил движок с выражениями, оставив набор выпадающих условий. А ещё подключил к настоящим устройствам и погонял дома у себя с помощью зажигалки.
В итоге всё закончилось хорошо. Проект я сдал, оплату получил. Используют ли его, я не знаю, надеюсь, что хотя бы экспериментально установили кому-нибудь из клиентов на производство. Но это первый мой заказ, который включал сразу бэк, фронт, работу с железом, шифрование, формирование установочных пакетов. Короче, опыта набрал прилично. На первом фото сборка газоанализаторов у моего компьютера, на втором дашборд с графиками концентраций.
#dev #gadgets
🔥54❤7👍7
Тут незаметно подъехала свежая статистика по разработчикам от Stackoverflow. Каждый год я думаю о том, что надо бы принять участие в опросе, и каждый год пропускаю его. Судя по всему, его не рекламируют по почте, не присылают никаких уведомлений, не продвигают. В итоге мы получаем абсурдную картину, когда в статистике по странам разработчики из России представлены на одном уровне с Нигерией. Хотя понятно, что айти сектор в России очень развит и влияет на глобальные процессы (взять тот же Kotlin).
Так что, на эту статистику стоит смотреть, как на данные по США и чуть-чуть Германии. Ещё довольно высоко стоит Индия, но мы-то знаем :)
Ладно. Принципиально нового по сравнению с предыдущими годами почти нет. Три года назад я делал анализ графиков, чтобы дать ответ на вопрос: «Какой язык программирования учить?». С тех пор общие тренды остались плюс-минус такими же: вся [американская] разработка до сих пор сидит на Винде и пишет на JavaScript,потому что нет выхода, много использует проприетарщины и коммерческих облаков от монополистов.
В статистике Web-фреймворков React вдвое популярнее у разработчиков, чем jQuery, хотя, вроде как, 73% сайтов до сих пор на jQuery. Вывод понятен: значительная часть этих сайтов в сети не поддерживается, никакой активной разработки по ним нет. Это, кстати, важная причина, по которой не стоит использовать аргументы вроде: «На PHP до сих пор весь интернет, поэтому язык востребован».
Стоит отметить, что среди профессионалов наконец C# стал самым популярным языком с нормальной системой типов, если не считать TypeScript. Позиции Java уверенно падают который год. А ASPNET Core самый популярный Web-фреймворк с нормальной системой типов (но так было и раньше, даже три года назад).
Остальное ожидаемо: PostgreSQL, Docker, VS Code в топах по использованию.
Ну, и большая секция про ИИ. Почти все используют LLM, но почти все просто общаются в чатах, а не применяют какой-нибудь агентный режим. 66% опрошенных сказали, что в ИИ их фрустрирует приближенность ответа к правильному, но всё-таки не до конца («AI solutions that are almost right, but not quite»). И почти половина отмечает, что дебаг нейросетевого кода отнимает больше времени. Хотя тут, мне кажется, эффект в том, что дольше дебажить код, который писал не ты, и не важно, ИИ там или другой разработчик.
Я кстати и сам после первых восторгов от Cursor немного поубавил свой пыл: реально большой проект на C# он не умеет правильно читать и понимает происходящее там довольно посредственно. DeepSeek, ChatGPT, Claude Sonnet — за всеми нужно внимательно следить и править их ошибки, ловить галлюцинации, не позволять творить дичь. Я бы сказал, что в моей рабочей практике ИИ это просто очень быстрый поиск и агрегация материала по тому, как что-то сделать. Но делать нужно самому.
#dev
Так что, на эту статистику стоит смотреть, как на данные по США и чуть-чуть Германии. Ещё довольно высоко стоит Индия, но мы-то знаем :)
Ладно. Принципиально нового по сравнению с предыдущими годами почти нет. Три года назад я делал анализ графиков, чтобы дать ответ на вопрос: «Какой язык программирования учить?». С тех пор общие тренды остались плюс-минус такими же: вся [американская] разработка до сих пор сидит на Винде и пишет на JavaScript,
В статистике Web-фреймворков React вдвое популярнее у разработчиков, чем jQuery, хотя, вроде как, 73% сайтов до сих пор на jQuery. Вывод понятен: значительная часть этих сайтов в сети не поддерживается, никакой активной разработки по ним нет. Это, кстати, важная причина, по которой не стоит использовать аргументы вроде: «На PHP до сих пор весь интернет, поэтому язык востребован».
Стоит отметить, что среди профессионалов наконец C# стал самым популярным языком с нормальной системой типов, если не считать TypeScript. Позиции Java уверенно падают который год. А ASPNET Core самый популярный Web-фреймворк с нормальной системой типов (но так было и раньше, даже три года назад).
Остальное ожидаемо: PostgreSQL, Docker, VS Code в топах по использованию.
Ну, и большая секция про ИИ. Почти все используют LLM, но почти все просто общаются в чатах, а не применяют какой-нибудь агентный режим. 66% опрошенных сказали, что в ИИ их фрустрирует приближенность ответа к правильному, но всё-таки не до конца («AI solutions that are almost right, but not quite»). И почти половина отмечает, что дебаг нейросетевого кода отнимает больше времени. Хотя тут, мне кажется, эффект в том, что дольше дебажить код, который писал не ты, и не важно, ИИ там или другой разработчик.
Я кстати и сам после первых восторгов от Cursor немного поубавил свой пыл: реально большой проект на C# он не умеет правильно читать и понимает происходящее там довольно посредственно. DeepSeek, ChatGPT, Claude Sonnet — за всеми нужно внимательно следить и править их ошибки, ловить галлюцинации, не позволять творить дичь. Я бы сказал, что в моей рабочей практике ИИ это просто очень быстрый поиск и агрегация материала по тому, как что-то сделать. Но делать нужно самому.
#dev
❤19👍7
Программисты пока могут не бояться ИИ.
В Росатоме работать с ИИ-агентами было нельзя, а вот тут в 2ГИС это даже поощряется, и компания сама оплачивает нужные доступы и лицензии. Практически любые модели на выбор, чаты, Copilot и так далее. Поэтому я попробовал выполнять прям настоящую энтерпрайзную работу при поддержке ИИ, и вот что скажу.
Во всех рекламах нейросеток говорят о том, как вам эта сетка позволит создать программу по текстовому описанию без разработчиков. Пожалуй, если создавать программу с нуля и аккуратно итеративно описывать требования, это может сработать. Только дело в том, что в реальной разработке мало работы по созданию с нуля и много работы по внедрению фич и исправлению ошибок. А для этого ИИ-агенту нужно, кроме умения хорошо кодить, ещё и знать (и понимать!) предметную область.
И тут начинаются проблемы.
Во-первых, в большинстве компаний предметная область нигде целиком не формализована в виде какого-то текста, который можно было бы передать в контекст. Я бы сказал, что единственный более-менее полный документ, описывающий предметную область программы — исходный код этой программы. И хорошо, если она сделана по какому-нибудь DDD, а если там хаотичные процедуры с высоким зацеплением?
Во-вторых, и это более важно, мы используем свои человеческие навыки и опыт жизни в окружающем мире, чтобы правильно понимать предметную область. Нужно именно что пожить в мире, чтобы понимать, как пить из пресловутого перевёрнутого стакана. И пока моделькам не получается передать всё многообразие человеческого опыта, люди в относительной безопасности. Ну, кроме тех, чья работа это просто кодить без обдумывания.
#dev
В Росатоме работать с ИИ-агентами было нельзя, а вот тут в 2ГИС это даже поощряется, и компания сама оплачивает нужные доступы и лицензии. Практически любые модели на выбор, чаты, Copilot и так далее. Поэтому я попробовал выполнять прям настоящую энтерпрайзную работу при поддержке ИИ, и вот что скажу.
Во всех рекламах нейросеток говорят о том, как вам эта сетка позволит создать программу по текстовому описанию без разработчиков. Пожалуй, если создавать программу с нуля и аккуратно итеративно описывать требования, это может сработать. Только дело в том, что в реальной разработке мало работы по созданию с нуля и много работы по внедрению фич и исправлению ошибок. А для этого ИИ-агенту нужно, кроме умения хорошо кодить, ещё и знать (и понимать!) предметную область.
И тут начинаются проблемы.
Во-первых, в большинстве компаний предметная область нигде целиком не формализована в виде какого-то текста, который можно было бы передать в контекст. Я бы сказал, что единственный более-менее полный документ, описывающий предметную область программы — исходный код этой программы. И хорошо, если она сделана по какому-нибудь DDD, а если там хаотичные процедуры с высоким зацеплением?
Во-вторых, и это более важно, мы используем свои человеческие навыки и опыт жизни в окружающем мире, чтобы правильно понимать предметную область. Нужно именно что пожить в мире, чтобы понимать, как пить из пресловутого перевёрнутого стакана. И пока моделькам не получается передать всё многообразие человеческого опыта, люди в относительной безопасности. Ну, кроме тех, чья работа это просто кодить без обдумывания.
#dev
3❤15🤔9👍7💯4🤓1
Forwarded from Гришкин блог
Тут неистово завирусился мой твит с жалобой на современные ущербные UX-практики на примере Яндекса, и в процессе срача в комментах я, наконец, смог сформулировать своё главное требование к "нормальным" интерфейсам: интерфейс никогда не должен брать инициативу на себя. Абсолютно никогда. Не существует вообще таких случаев, когда это было бы допустимо.
Как познакомить пользователя с новыми фичами в приложении или на сайте? Нет, не модалками при запуске, как это делают, например, Яндекс и Discord, потому что модалки вылезают по инициативе самого приложения мешают, блин, им пользоваться, требуя прервать поток мыслей и подумать отдельно, как бы это убрать побыстрее, чтобы вернуться к тому, что ты хотел сделать. И даже не тултипы или поповеры, как любит делать гугл, потому что они тоже вылезают по инициативе самого приложения, и тоже часто закрывают нужные тебе элементы.
Самый оптимальный способ — интегрировать информирование об обновлениях в UX самого приложения. Например, собственно, телеграм так делает — после обновления клиента тебе приходит системное сообщение с описанием новых фич. И сторисы ещё. В соцсети это может быть плашка в ленте (прокручиваемая вместе с лентой) или уведомление (но ни в коем случае не пуш). ВК при Дурове знакомил пользователей с новыми фичами через маленькие плашки под левым меню со ссылками на страницы с подробным описанием изменений, тоже очень хорошо. Я такое даже в Smithereen сделал вот недавно.
Адекватный способ, если интегрировать в UX невозможно или сложно — показывать красную точку на иконке настроек, а в настройках сделать отдельный пункт "новые возможности" или "история обновлений", на котором показывать что-нибудь привлекающее внимание после обновлений. Внутри, соответственно, либо список фич по времени добавления, либо просто чейнджлоги, те же, что во всяких там гугл плеях.
Пора бы мне, всё-таки, добавить себе в резюме, что я не только программист, а ещё и специалист по user experience :)
Как познакомить пользователя с новыми фичами в приложении или на сайте? Нет, не модалками при запуске, как это делают, например, Яндекс и Discord, потому что модалки вылезают по инициативе самого приложения мешают, блин, им пользоваться, требуя прервать поток мыслей и подумать отдельно, как бы это убрать побыстрее, чтобы вернуться к тому, что ты хотел сделать. И даже не тултипы или поповеры, как любит делать гугл, потому что они тоже вылезают по инициативе самого приложения, и тоже часто закрывают нужные тебе элементы.
Самый оптимальный способ — интегрировать информирование об обновлениях в UX самого приложения. Например, собственно, телеграм так делает — после обновления клиента тебе приходит системное сообщение с описанием новых фич. И сторисы ещё. В соцсети это может быть плашка в ленте (прокручиваемая вместе с лентой) или уведомление (но ни в коем случае не пуш). ВК при Дурове знакомил пользователей с новыми фичами через маленькие плашки под левым меню со ссылками на страницы с подробным описанием изменений, тоже очень хорошо. Я такое даже в Smithereen сделал вот недавно.
Адекватный способ, если интегрировать в UX невозможно или сложно — показывать красную точку на иконке настроек, а в настройках сделать отдельный пункт "новые возможности" или "история обновлений", на котором показывать что-нибудь привлекающее внимание после обновлений. Внутри, соответственно, либо список фич по времени добавления, либо просто чейнджлоги, те же, что во всяких там гугл плеях.
Пора бы мне, всё-таки, добавить себе в резюме, что я не только программист, а ещё и специалист по user experience :)
FxTwitter
@grishka@mastodon.social (@grishka11)
Дорогой @yandex, я рад за вас, что у вас карты работают без интернета, но давайте вы не будете мешать мне ими пользоваться? Вы реально никогда не задумывались о том, что люди могут открывать ваше приложение не просто со скуки, а чтобы срочно в нём что-то…
👍31❤13💯2
Друг делал уборку у себя и обнаружил мою книжку. Двадцать лет у него хранилась. Именно с неё де-факто началось моё изучение программирования. Первые две части про то, как во флэше рисовать, а вот третья — о программировании на ActionScript 2 (тогда ещё), причем очень подробно, с самых основ.
До сих пор считаю убийство Флэша одним из наиболее деструктивных и вредных для человечества действий компании Apple.
Кстати, изучать программирование на движущихся графических объектах было прям очень вдохновляюще. Ничто не давало такую мотивацию, как созерцание того, как тела летают по экрану согласно заданному тобой принципу.
Еще в комплекте с Флэшем был набор демок, и, запуская каждую из них, я думал "Хочу уметь так делать!". Одна из мечт, которые сбылись полностью.
#dev
До сих пор считаю убийство Флэша одним из наиболее деструктивных и вредных для человечества действий компании Apple.
Кстати, изучать программирование на движущихся графических объектах было прям очень вдохновляюще. Ничто не давало такую мотивацию, как созерцание того, как тела летают по экрану согласно заданному тобой принципу.
Еще в комплекте с Флэшем был набор демок, и, запуская каждую из них, я думал "Хочу уметь так делать!". Одна из мечт, которые сбылись полностью.
#dev
❤24🔥8👍2