Поиск работы фронтендером в 2016 году

Этой осенью я искал новую работу. Собеседовался в четырёх компаниях: в Иннове, Тинькофф Банке , Нетологии и Рамблере. Ну и напоследок успел пообщаться с ребятами из Яндекса. В этой заметке расскажу о своих впечатлениях и приведу все запомнившиеся задачи с собеседований.

Иннова

В Иннове я работал удалённо последние 10 месяцев. С компанией общался насчёт перехода с удалёнки в офис. Мне сразу сказали, что нужно будет пройти серию интервью с разными сотрудниками. В итоге я пообщался с тимлидом Фогеймера (это проект, над которым я работал в Иннове), с эйчаром и с кем-то из руководства (так и не понял, с кем).

Впечатление от собеседований осталось двоякое. Техническое собеседование с тимлидом и общение с эйчаром были вполне приятные, а вот общение с руководством было довольно странным. Задавали вопросы в духе «какие у вас планы на ближайшие десять лет», «какие у вас глобальные мечты», «чем вы можете быть полезны компании».

+ крутые проекты и интересные задачи (по собственному опыту);
+ обучение английскому языку за счёт компании;
+ классный офис с летней верандой, располагается на Таганской: http://map.inn.ru/

– длинный процесс найма.

Нетология

Пожалуй, наиболее приятные впечатления остались от Нетологии. Первое собеседование было с двумя штатными фронтендерами и с руководителем отдела разработки. Ребята (фронтендеры) поспрашивали меня минут десять, а затем мы полчаса просто непринуждённо общались на тему технологий и разработки. Затем пришёл руководитель отдела, с которым мы отдельно поговорили о моём опыте и о Нетологии. После первой встречи мне дали тестовое задание. Суть задания — сделать на Реакте и Редаксе редактируемый список сотрудников. Я не стал заморачиваться с вёрсткой и сделал только логику, сопроводив это рассказом о моём прошлом опыте вёрстки и ссылками на выполненные работы. После выполнения тестового задания посетил ещё две встречи — одну с продуктологом, другую с одним из основателей Нетологии.

+ чуваки улучшают российское онлайн-образование;
+ офис на Тульской (одна станция до кольца);

– нет ДМС;
– длинный процесс найма;
– на время испытательного срока понижают оклад.

Тинькофф Банк

Довольно прогрессивный банк, делающий ставку на онлайн-продукты. Было одно техническое собеседование, но с большим количеством вопросов на знание JS. По вёрстке почти ничего не спрашивали, по штукам вроде Реакта тоже. После собеседования попросили прислать анкету для проверки меня службой безопасности банка. Работа в банке выглядит заманчиво, но есть пара нюансов. По некоторым данным, в банке с отделом фронтенда всё не очень хорошо (в плане менеджмента). Ну и говорят, что довольно большую часть работы банк отдаёт на аутсорс.

+ корпоративный фитнес-центр;
+ большой отдел разработки, есть у кого учиться;
+ хорошая зарплата;
+ короткий процесс найма;

– офис на Водном Стадионе, что не очень близко к центру;
– часть работы отдают на аутсорс.

Рамблер

Раньше я видел список вакансий компании, но мне казалось, что я до их уровня ещё не дорос. Довольно неожиданно мне написали оттуда с предложением пообщаться о работе. Была одна встреча, с двумя эйчарами и одним разработчиком. Сперва эйчары попросили рассказать меня о своём опыте (куда без этого), затем разработчик давал разные задачи. Затем мне вкратце рассказали о компании и о том, чем нужно будет заниматься. В компании сейчас активно используется Реакт, вроде как делается своя библиотека компонентов, ну и в целом развивается инфраструктура.

+ довольно большая компания с большим количеством сотрудников и разных проектов;
+ офис на Тульской;
+ корпоративный английский;
+ бесплатные завтраки для сотрудников (по непроверенным данным);
+ короткий процесс найма.

– не все команды занимаются интересными задачами, где-то довольно жёсткие сроки;

Яндекс

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

+ крупная и известная компания;
+ серьёзные высоконагруженные проекты;
+ командировки в разные города;
+ n-ая сумма денег на бейджике для оплаты еды в близлежащих заведениях;

– высокий порог вхождения из-за БЭМ-стека.

Задания

Что выведется в консоль? Как добиться правильного вывода в консоль, не убирая setTimeout?

for (var i = 0; i < 10; i++) {
  setTimeout(function () {
    console.log(i); // ?
  }, 0);
}


Что выведется в консоль?

var a = b = {
  value: 1,
};

var b = {
  value: 2,
};

a.value = 3;

console.log(a.value); // ?
console.log(b.value); // ?


Что выведется в консоль?

var a = {
  v: 1,
};

var b = {
  v: 2,
};

function logValue() {
  console.log(this.v);
}

logValue.bind(a).bind(b)(); // ?


Что такое call, apply, bind, зачем они нужны.


Напишите полифил функции bind.


Дан массив целых чисел, найдите наибольшее из них.


Даны два массива целых чисел, найдите общие элементы.


Напишите функцию, принимающую на вход строку и проверяющую, является ли эта строка палиндромом. Приведите несколько вариантов решения.


Напишите функцию, принимающую массив произвольных слов и на выходе дающую двумерный массив анаграмм:

['стол', 'барокко', слот', 'кот', 'кошка', 'ток', 'коробка']
// ->
[
  ['стол', 'слот'],
  ['кот', 'ток'],
  ['барокко', 'коробка'],
]


Есть два класса: принтер с методом print() и сканер с методом scan(). Нужно получить класс МФУ, имеющий оба этих метода.


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


Дано поле морского боя с размеченными на нём кораблями. Спроектируйте решение для подсчёта количества кораблей на этом поле.


Напишите функцию для сложения чисел, поддерживающую неограниченное количество вызовов:

sum(2)(3)(); // -> 5
sum(1)(2)(3)(4)(); // -> 10


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

[1, [2, [3, 4], 5], 6, [7]]
// ->
[1, 2, 3, 4, 5, 6, 7]


Чем поведение скрипта с атрибутом defer отличается от async?


Есть массив с адресами картинок. Как загрузить все картинки и выполнить какую-либо операцию после окончания загрузки всех картинок?


Дан односвязный список. Напишите функцию, которая вернёт значение n-ого с конца списка элемента.

{
  value: 0,
  next: {
    value: 5,
    next: {
      value: 2,
      next: null,
    },
  },
};


Расскажите всё, что вы знаете о событиях в JS.


В соцсети выложили фото котят, под ним динамически добавляются комментарии. У каждого комментария есть кнопка «лайк», при нажатии на которую нужно отправлять запрос к АПИ. Как эффективно реализовать сценарий с нажатием кнопки?


Как расположить элемент по центру экрана с помощью CSS (назовите все известные вам варианты).


Опишите процесс отрисовки страницы браузером.

Share
Send
6 comments
Максим Гатилин

Куда в итоге пошел?

Андрей Романов

В Рамблер

Ринат Муллаянов

Спасибо за ценную информация.
+1 к предыдущему комментатору, какую компанию в итоге выбрал?

Андрей Романов

Ответил выше :–)

Андрейка Лечев

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

Доброе утро.

Почти во все компании, куда проходил интервью, мне задавали такие вопросы, не только в Иннове... Яндекс, например. Интересно, почему нашли это странным?

Андрей Романов

Имхо, такие вопросы более уместно задавать менеджеру. «Чем вы можете быть полезны компании» — ну вот зачем это спрашивать у фронтендера? Фронтендер будет закрывать свои задачи, какая тут может быть кроме этого польза, если речь не о стартапе, а о серьёзной крупной компании.

Степан Зубашев

Интересные задачки. По правде говоря, я ожидал куда более сложных. В особенности от yandex-а. Могу поделиться 1-ым этапом собеседования в Hola:

  1. Дана строка, последовательность скобок разного вида ([], ()). В строке также могут быть и не скобки. Написать метод, которые вернёт true, если вложенность скобок и их закрытость не нарушена.
  2. Дан длинный метод, без комментариев, написанный как будто после страшного бодуна. Задача: разобраться что сий метод делает, и переписать его так, чтобы там было не 30 строк, а где-то 5-6. И желательно при этом не проиграть в производительности. Мне попалась своеобразная реализация String.findLastIndex, которая находит индекс одного из двух, переданных в аргументах, char-ов с конца.

Задачи на 1-ом этапе простые. Правда я собеседование провалил. Ибо дают 30 минут и писать нужно в Google Docs документе. Отрываться от него и что-нибудь гуглить, проверять, запускать нельзя. Полагаю, на следующих этапах задачи гораздо сложнее.

Лев Солнцев

Расположение на Тульской не такой уж и плюс. Это за пределами ТТК, да ещё от метро добираться 15–20 минут в зависимости от того чей офис. Мне, как живущему на севере Москвы, это в два раза дольше добираться чем до центра. Соответственно, эти офисы я просто не рассматривал.

Был в Тинькове, мне до него даже ближе. Анкета безопасников абсолютно совковая. Адский опенспейс: жаркий и шумный. Обязательно приходить к 10 часам утра, говорили, что стоит контроллёр у входа и проверяет. Очень задавала в грубом тоне вопросы стиле «если ты такой умный, то чего такой бедный». Ребята там все напряжённые и грустные. Проблемы менеджмента налицо, неудивительно, что их раскритиковали на Хабре летом. Их что-то не устроило (я после всего этого особо не выяснял что), но большую зарплату явно предлагать не собирались. (Хотя всё равно больше чем в Яндексе.)

В Яндексе, кстати, обедом кормили? А то обещали, что будут кормить соискателей.

А по поводу работы в Яндексе, на опыте Поиске, то там надо фигачить обычные продуктовые задачи. Буквально, очередные колдунщики пилить, иногда спецпроекты (Олимпиада там). Тупо перекладываешь данные из одного места в другое на бэкенде (BEMJSON + lodash) и немного фронтэнда (его не так сложно освоить, но там не особо много разработки). Никакого ES6, Реакта, Вебпака и близко нет. Всякими рефакторингами там занимаются специальные выделенные ребята, которые уже хорошо знают стек, с бухты-барахты туда не попадёшь. Есть инфраструктурщики (то, что Лёша Колмаков летом рассказывал), там есть Нода посвежее и ES6, а также нужна «стрессоустойчивость». Требования высокие, но непонятно зачем, да и уровень зарплаты не соответствует.

В Метрике по-другому, но уже не помню, что там говорили. Кажется, там БЭМ-стек ещё подревнее.

Лев Солнцев

s/Очень задавала/HR задавала/

Your comment
won’t be published

HTML will not work

Ctrl + Enter
Popular