В этом выпуске серии Обзор разработчиков Cosmic JS мы познакомились с Лесли Кон-Вайном, фронтенд-разработчиком и уроженцем Остина, сейчас проживающим в Далласе, штат Техас. В последнее время Лесли работала фронтенд-инженером в Canvas United, цифровом агентстве из Нью-Йорка, прежде чем начать работу в качестве фронтенд-разработчика в Netlify. Следуйте за Лесли в Twitter или LinkedIn и получайте ответы на вопросы.

Cosmic JS: Когда вы впервые начали создавать программное обеспечение?
Лесли: В начале 2000-х я изучил основы CSS, чтобы настроить фон MySpace и LiveJournal. К моему удивлению, этот опыт пробудил непреходящий интерес к коду.

После изучения цифровых медиа в колледже и стажировки в Denver Open Media Foundation, разрабатывая сайты Drupal для некоммерческих организаций, я переехал в Нью-Йорк на роль менеджера по связям с общественностью. Несколько лет спустя я успешно перешел на постоянную фронтенд-разработку, работая в рекламных агентствах с такими клиентами, как Nintendo, Comedians in Cars Getting Coffee и Crunch Fitness. Я профессионально занимаюсь разработкой программного обеспечения последние 5 лет.

Какой стек разработки вы предпочитаете?
Я большой сторонник JAMstack, современной архитектуры веб-разработки, основанной на клиентском JavaScript, API и разметке. Приложения JAMstack невероятно производительны, масштабируемы и безопасны и идут рука об руку с нашими современными рабочими процессами.

В мире агентств я обнаружил, что могу быстрее запускать новые проекты, используя генераторы статических сайтов, такие как Middleman и Gatsby, которые дали мне строительные леса, систему шаблонов, горячую перезагрузку и многое другое без утомительной настройки. Развернуть на Netlify было так же просто, как подключить мою учетную запись GitHub и опубликовать мой код (полное раскрытие: теперь я работаю фронтенд-разработчиком в Netlify).

JAMstack предоставил мне возможность разрабатывать и развертывать динамические приложения, не требуя внутреннего разработчика или обслуживания сервера. Я такой фанат разработки со стеком, что покинул агентство еще в октябре и присоединился к команде Netlify.

Какими прошлыми проектами вы больше всего гордитесь и почему?
Помимо моей недавней работы над приложением Netlify, я должен сказать, что одним из моих любимых проектов агентства было создание веб-сайтов для Отель Паркер Палм Спрингс в Калифорнии. В то время я работал в магазине Ruby on Rails, поэтому мы выбрали разработку с помощью Middleman, управление контентом с помощью автономной CMS и автоматическое развертывание в Netlify с помощью стандартного рабочего процесса Git.

Создание с помощью JAMstack означало, что я тратил время на совместную работу с моим арт-директором, совершенствуя интерактивный опыт рассказывания историй на домашней странице ー без подключения просмотров или координации с DevOps для запуска промежуточного сайта. Мне нравилось работать над чисто интерфейсным стеком с таким забавным дизайном, и мне не помешало то, что мы в конечном итоге выиграли за него 2018 Communication Arts Interactive Award.

Какие были самые большие проблемы при создании приложений в агентской среде Canvas?
Доставка нового автономного сайта каждые 2 или 3 месяца была воодушевляющей, но этот процесс требует невероятно хорошо скоординированного рабочего процесса. Использование генераторов статических сайтов для ускорения процесса сборки изменило для меня правила игры.

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

Вопреки распространенному мнению, мы также обнаружили, что проба новых технологий иногда улучшает нашу скорость. Переход с CoffeeScript, jQuery и включений, размещенных на CDN, на ES6, React, Jest и npm потребовал инвестиций в обучение, но в конечном итоге улучшил опыт нашей команды в разработке и значительно сократил цикл контроля качества.

Что послужило вдохновением для присоединения к Netlify? Каким был ваш опыт?
Я просматривал свою ленту в Твиттере в прошлом году, когда увидел ретвит умной и плодовитой Амелии Беллами-Ройдс об открытии внешнего интерфейса в Netlify. Я подал заявку сразу.

Присоединение к команде в октябре прошлого года было до странности знакомым; За последние несколько лет я несколько раз связывался со службой поддержки Netlify за советом, а недавно работал с отделом продаж, чтобы расширить возможности моего агентства. Я все еще набираю скорость, но технология тоже мне знакома: интерфейс app.netlify.com построен на React, и, конечно же! ー развернут на Netlify. Итак, мета.

Я только что вернулся с недельного собрания в Сан-Франциско, где мы рассмотрели план развития компании и начали придумывать некоторые из новых функций, которые я собираюсь помочь в создании. В отличие от мира агентств, команда Netlify искренне верит в междисциплинарный подход ー У меня есть возможность каждый день работать бок о бок с дизайнерами, разработчиками API и платформ, техническими писателями и другими ведущими, чтобы донести новое видение сеть к жизни.

Какие технологии вам нравятся или о которых вы хотите узнать больше?
Их слишком много, чтобы перечислить их все! На самом деле у меня есть «план обучения», в котором я излагаю концепции, курсы и статьи, в которые я хочу углубиться, и у меня есть напарник по подотчетности, который держит меня честным в моем прогрессе.

Вот несколько важных моментов прямо сейчас:

  • Бессерверные технологии стремительно набирают обороты, поэтому узнавать больше о функциях как услуге (FAAS) занимает важное место в моем списке.
  • Новые функции React, такие как Hooks и Suspense, близки к прайм-тайму, поэтому я хочу сосредоточиться на некоторых практических примерах.
  • Я использую GraphQL с Gatsby в течение многих месяцев, но всегда есть что освоить!
  • Мой коллега swyx научил нас использовать Cypress для интеграционных тестов, и я постепенно начал его осваивать.
  • Я тестировал CSS-in-JS в своем последнем агентском проекте и считаю, что стоит изучить его подробнее.
  • Команда дизайнеров в моем последнем агентстве все еще использовала Adobe Creative Suite, поэтому я продолжаю повышать уровень Sketch и начинаю играть с Figma и Webflow.

Есть ли у вас какие-либо советы по удаленной работе в коллективной среде?
Я работаю удаленно уже более двух лет, и хотя поначалу было сложно приспособиться, я не могу представить, чтобы вернуться назад. Я обнаружил, что необходим последовательный распорядок; Я готовлюсь, как будто иду в офис (без тапочек!), Работаю за столом в своем домашнем офисе и выгуливаю своего пса Мака за обедом. Это помогло разделить рабочее время и игровое время и обычно не дает мне выдвигать небрежный код с дивана в полночь.

Ежедневные стендапы гарантируют, что у меня будет хотя бы несколько минут «лицом к лицу» каждый день (спасибо, Google Meet!). Slack также мне очень помог в этом отношении, позволяя мне «заскочить к кому-нибудь за столом», когда это необходимо. Как удаленный человек, я считаю, что лучше ошибиться в сторону чрезмерного общения.

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

Заключение
Серия Spotlight Cosmic JS посвящена демонстрации разработчиков, которые создают приложения с использованием современных инструментов. Узнайте, как внести свой вклад. Чтобы оставаться с нами на связи, подписывайтесь на нас в Twitter и присоединяйтесь к разговору в Slack.