Главная » Хабрахабр » [Из песочницы] От var b до собеседования

[Из песочницы] От var b до собеседования

Вы почти закончили универ или колледж? Вас пригласили на собеседования, но вы идете туда без подготовки? У вас нет образования (высшего), но хотите работать программистом или в сфере IT? Речь пойдёт по большей степени о поиске работы, я буду говорить лишь за свой город (Челябинск) т.к. искал работу именно здесь.

От верстальщиков до Deep learning, от тех. image
Когда начинал искать работу, будучи на втором курсе в колледже, я и не подозревал сколько различных компаний есть в нашем городе. сети, desktop). поддержки bitrix до разработчика игр (мобильных, соц.

Все они были в разных направлениях. Я был примерно на 8 собеседованиях (не считая онлайн). От чего-то отказался сам, куда-то не взяли т.к. Верстка, десктоп разработка игр, веб-разработчик (c#+.net), веб разработчик (bitrix+php), front-end (js+react). мало знаю.

Ближе к делу, ближе к коду

Хочется рассказать, что спрашивают на таких собеседованиях и для чего они это делают (объяснить используемые технологии).

Начнем с простого. Верстка

В большинстве случаев всем требовалась скорость верстки. Мне давали два таска (две разные компании). Первое это верстка карточек товаров на сайте. За один час мне нужно было сделать верстку как на картинке, которую мне предварительно скидывали. Ничего сложного в таске нет, но одно из условий это Pixel Perfect (пиксель в пиксель). У меня было пару ошибок: расхождение с макетом (неверное отображение окна оповещения и логика hover эффекта).

image

Есть ТЗ (Техническое задание) с правками и их нужно выполнить на сайте. Второй таск был еще проще (pixel perfect не требовался). Правки в отображение элементов, что-то под мобилки настроить, изменить отступы, цвет элементов.

В наше время очень мало компаний, которая ищет именно верстальщиков, поэтому важна скорость работы. Почему так? На такую должность часто требуется еще препроцессоры (sass,pug) и сборщики проектов (gulp,webpack). Меньше времени на работу больше заказов, а значит и больше прибыль у компании. ТЗ у всех разное, в большинстве случаев это текстовый документ со списком правок. А что касается ТЗ, вы будите получать его на любой работе, и следовать ему необходимо!

Веб программист (bitrix)

Было 3 попытки в разных компаниях. В одной мне лишь объяснили что придется делать. Поддержка корпоративных сайтов (разработка под нужды этих сайтов) + работа с сервером (настройка и развертывания сайтов). Ни единого вопроса что я могу и что знаю.

А вот на втором собеседовании только и спрашивали что я делал на прошлом месте работы, что могу в bitrix и что вообще изучал.

Здесь были и вопросы о скиллах, и описание тасков компании, и задачи, которые нужно было выполнить на месте. Ну и самое интересное, это последнее собеседование. Предупрежу сразу, не было условия на каком языке нужно писать код, я выбрал JS. Рассказать о себе, я надеюсь, вы сможете сами, а вот вопросами я готов поделиться. Вычислить факториал, что такое бинарное дерево и какие способы его обхода есть, алгоритмы сортировки, обращение к БД (простые запросы), что такое class.php в bitrix.

Реализуете это через рекурсию. Вычислить факториал очень просто, не важно какой язык программирования. Дерево используется для работы с большими объемами данных, не удивительно, что при приеме на работу с интернет магазинами спрашивают именно это. Про бинарное дерево уже сложней… двоичное дерево (бинарное) = структура данных. Ну и обращение к БД, большинство сайтов в сети используют БД. Сортировка тоже относится к работе с данными. Это вывод новостей сайта, товаров, список популярных статей и прочие элементы.

Самое интересное, попытка устроиться desktop разработчиком

image

Сразу отмечу общие темы: ООП и паттерны.

Ну современная разработка без ООП… это очень странно, точно так же, как разработке без паттернов. Зачем? ООП позволяет делить программу на блоки, а паттерны, например SOLID, позволяет делить код на независимые блоки, чтобы в будущем можно было с легкостью дополнять их. Да, вы можете делать курсовую во время учебы и не использовать паттерны+ООП, но без минимального понимания, что такое класс, наследование и полиморфизм вас на работу не возьму.

Например, если это разработчики игр, то требовалось написать тестовую игру используя их движок + документацию, которую они предоставляли по нему. Все остальные вопросы были специфичные, смотря с чем работала компания. Суть игры: есть два стакана, один пустой, а во втором лежат карандаши, когда игрок нажимает на ПКМ, то один карандаш перемещается в пустой стакан и на экране обновляет счетчик очков. Мне давали детскую 2Д игру (c# + XAML). Требовалось банально посчитать карандаши.

и игру давали 3Д, и за кодом следили, чтобы не было мусора в нем + присутствие паттернов, у меня даже на github’e все еще лежит этот проект. Так же был опыт собеседования и на Unity разработчика, здесь уже было сложней т.к.

Если это разработка приложений, то здесь нужно знать TDD (разработка через тестирование), SOLID, ООП. Вернемся к компаниям, если это разработка back-end части (c#+.net) то вопросы были по .net платформе и ее подводным камням.

Зачем спрашивают про TDD? Про ООП и паттерны я уже объяснил. SOLID — это 5 паттернов объединенных вместе, после того, как меня спрашивали на собеседовании об этом паттерне, я сразу же принялся за его изучение. Честно, я не знаю… сам не до конца понимаю преимущество данного подхода, да это используют некоторые компании, но мне приходилось писать код, таким образом, лишь один раз. Если вам интересен SOLID, то попробуйте написать калькулятор при помощи данного паттерна. Скажу вам честно, мне было сложно понять его, но по итогу получается очень стойкий код, который можно дополнять без вреда уже написанному приложению. Я, помнится, писал на c# (консольная программа). Реализуйте сначала + и -, а потом добавьте и другие возможности калькулятору.

Да здесь есть и разработчики SPA (reactJS требуется в основном), и разработчики web игр (всё тот же react, в большинстве случаев, а иногда лишь нативный JS), и разработчики python, 1C, JAVA и прочие. Пожалуй, это все, что я могу вам рассказать о собеседование в своем городе. На этом у меня всё, пожалуй. Я был сильно удивлен разнообразию используемых технологий и языков. До встречи.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Два успеха частной космонавтики

На прошлой неделе произошло два достаточно важных события для частной космонавтики. Прежде всего, два пилота Virgin Galactic могут сверлить дырки в своих костюмах под значки астронавтов — поднявшийся 13 декабря до 82,7 км SpaceShipTwo оказался выше линии 50 миль, которая ...

Дайджест свежих материалов из мира фронтенда за последнюю неделю №343 (10 — 16 декабря 2018)

Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.     Медиа    |    Веб-разработка    |    CSS    |    Javascript    |    Браузеры Медиа • Подкаст «Frontend Weekend» #83 – Илья Климов о том, как и зачем был создан образовательный проект JavaScript.Ninja• Девшахта #61: TypeScript и его ...