В свободное время, между непрекращающимся путешествием и трудным поиском работы, я работаю разработчиком программного обеспечения в City of Wind Design. CWD — это стартап, который я помогал запускать и развивать вместе с другими выпускниками Flatiron. Эти выпускники состоят из талантливых дизайнеров UX, дизайнеров пользовательского интерфейса и разработчиков программного обеспечения. По мере того, как наше путешествие продолжается, мы сталкиваемся со многими новыми проблемами и обязанностями. Некоторые из немногих, с которыми я сталкивался, поднимались на должности руководителей групп и отделов. Одной из последующих обязанностей было создание задачи кода для будущих разработчиков.

Если вы хотите попробовать это, не стесняйтесь! https://github.com/alinan-vn/cwd-coding-challenge-1

Готовый продукт будет выглядеть примерно так:

Не очень сложный или трудный, а? Суть не в том, чтобы кого-то утомить и посмотреть, насколько он чрезвычайно умен в решении проблем, а в том, чтобы проверить различные социальные и технические навыки, которые помогут мне определить, подходит ли нам этот человек!

Основной навык, который я хотел проверить, заключался в том, чтобы разработать что-то только на основе вайрфрейма. Хотя в данном случае это скорее высокоточный вайрфрейм, чем лоу- или мид-фай, которые обычно передаются первыми. Большая часть работы по разработке, которую мы делаем, основана на исследованиях дизайнеров и вайрфреймах, поэтому очень важно следить за визуальным направлением.

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

Часть проблемы с кодом, на самом деле основная часть, заключается в той единственной карточке в компоненте Home. Разработчику предоставляется API погоды, которому поручено манипулировать данными, которые должны отображаться желаемым образом. Часть проблемы здесь заключается в переводе вывода MoMo:DD:HH:MiMi:SS в 12-часовой цикл AM/PM. Другой целью было отображение определенных изображений (разных размеров) на основе данных и в пределах одного размера карты без растяжения или сжатия изображения (без причины).

Поначалу было трудно придумать правильный вызов кода. Я взял пару для интервью и для практики, и я заметил, что они могут сильно различаться. Некоторые могут тестировать структуры данных и алгоритмы, некоторые могут тестировать знакомство с JavaScript, создавая простые компоненты, а некоторые могут тестировать расплывчатые компоненты/функции JavaScript или React, которые служат для того, чтобы показать тестировщику, насколько полезны ваши навыки работы с Google. Я долго думал и решил просто проверить навыки, характерные для нашей практики и наших текущих потребностей. Это, наряду с упорством в росте, достаточно важно.