воскресенье, 21 февраля 2016 г.

Geek-time (гики поймут :) )

Этот пост будет не про Антона. Но поскольку я знаю, что блог читают не только бабушки, то решила написать, вдруг кому-то пригодится. Итак, как проходить техническое интервью в Silicon Valley?
Сразу скажу, что ничего общего с собеседованиями в Харькове это не имеет (кроме разве что желания получить job offer), поэтому на сегодняшний день и существует так много книг/онлайн курсов/блогов etc посвященных этой теме. Реалии таковы, что рассылка резюме совершенно не гарантирует, что с вами свяжутся - уж слишком большая здесь конкуренция и множество позиций закрываются за счет реффералов. Но если все же вам повезло, и вам ответили, то вот примерная последовательность событий:
1) первый телефон с рекрутером - обычные вопросы про визу/статус, зарплату, текущий проект, возможно "хотелки".
После вашу кандидатуру представят хайринг менеджеру и если он решит двигаться дальше, то
2) второй раунд - технические телефоны (1 или больше - зависит от компании). На этом этапе вы будете общаться с техническими людьми на технические темы. Как правило вам звонят в оговоренное время, "шарят" документ, дают задачку и вы пишете код. Продолжительность ~45 минут на раунд. Из того, что попадалось мне - закодить хип и основные операции на нем (remove_min, add), написать класс singly/doubly linked list и метод для удаления нода, написать класс для графа и поиск в ширину на нем и прочие классические алгоритмические задачки. В зависимости от компании и позиции, телефон может быть и без кодинга, но с коварными вопросами типа "чем мьютекс отличается от семафора?" (это вопрос на тестерскую позицию). Если вы прошли, то
3) третий раунд - онсайт интервью. Это "веселье" как правило на целый день (~6 часов), когда вы приезжаете в саму компанию, где вас ожидает порядка 6-8 интервью один за другим. Здесь можно ожидать как вопросы на кодинг (с фломастером на вайт борде), так и вопросы на ООП и дизайн паттерны, архитектуру и фреймворки. Если вы прошли, то
4) вас может ожидать еще один онсайт - если компания выбирает между вами и кем-то еще, либо же job offer или "извините, вы нам не подошли".

Если у кого-то сложилось ощущение, что можно пройти без подготовки, то шансы у вас примерно нулевые. Даже если вы кодер хоть куда, помимо технической составляющей не менее важную роль играют еще и soft skills. И это как раз то, с чем у нас проблемы. Очень часто мы отвечаем чистосердечно на коварные не технические вопросы, тем самым зарабатывая себе red flags (например, как вас достал текущий проект или какой вы мега-крутой инженер, а все коллеги вас не ценят и не прислушиваются). Поэтому готовиться нужно - как по технической части, так и по части психологической.

Итак, техническая часть. Конечно, невозможно подготовиться ко всему, но будьте на 100% уверены, что алгоритмы - это обязательная составляющая, без которой не проходит ни один "собес". Здесь вам поможет ресурс coursera.org, а именно курсы от Тима Рафгардена и Роберта Седжвика. Это база, без которой, я считаю, двигаться дальше нет смысла. А дальше идут книжки (настольные для многих инженеров, которые уже прошли интервью):



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










менее распространенная, но не менее полезная книжка с меньшим количеством задач. Здесь авторы очень доходчиво объясняют ход мыслей при решении. Highly recommended, одним словом.








Также не могу не упомянуть такие полезные ресурсы, как:
- geeksforgeeks.org
- glassdoor.com
- careercup.com
По части не технической, вот весьма неплохой курс, который стартовал недавно на той же курсере - Mastering the Software Engineering Interview

ЗЫ: Независимо от позиции, выучите как "отче наш" KMP (алгоритм Кнута-Морриса-Пратта) - уж очень часто спрашивают задачку на поиск подстроки в строке и брут-форсным решением вы себе баллы не заработаете.

ЗЫ: Моя подготовка длилась полгода и увенчалась iOffer'ом :)

воскресенье, 14 февраля 2016 г.


Однажды Антоша пришел со школы домой и начал вещать в вымышленный микрофон: "Велкам эборд, песенджерс. Плиз фасен ер сит белтс." ну и все в таком духе. Оказалось, что отец его лепшего друга Джастина - пилот пассажирского самолета (и да, Джастин бывал у папки на рабочем месте пару раз!).
Когда мы ждали посадку на ЛА, публику вышел поприветствовать капитан. Антоша в этот момент не растерялся и пошел с ним говорить - а как вы водите самолет? а сложно ли это? Итог разговора - внизу :)
Не Милениум Фалкон конечно, но для начала покатит :)




понедельник, 1 февраля 2016 г.

Мишки, но не Гамми

А знаете чем местный народ развлекается в будний день после работы? Рисует!
Точнее мастерски пишет картины под руководством художника. Билеты на такие мероприятия разметаются на несколько месяцев вперед. Я свой поход планировала еще в ноябре и вот он наконец состоялся! Происходит все примерно так: человек 30 приезжают вечером в милый паб, в котором уже стоят мольберты и холсты с красками и кисточками. Берешь себе вино/пиво/еду и под руководством мастера начинаем рисовать. "Возьмите большую кисть и повозите так, а теперь возьмите среднюю кисть и дорисуйте тень так" - говорит он.
Вот, что получилось на выходе.