Как деврелу разобраться в разработке?
Автор: Арина Быкова
Узнавать о новых статьях блога в ТГ: @devrel_ru
Свою карьеру в девреле я начинала в 2021 году, когда пришла стажёром в Selectel. Тогда я и столкнулась с проблемой (или нюансом?), который, как мне кажется, знаком многим деврелам на РФ рынке: я не писала код и понятия не имела, как это делать, и вообще ничего не понимала по технической части.

Можно ли без этого опыта работать деврелом? Да, мы видим, что немало людей справляются. Но согласитесь, как же круто быть хоть немного погруженным в технику? Автоматически получаешь больше доверия инженеров и быстрее растёшь, а ещё становится проще формулировать заголовки, вытаскивать темы для докладов и чувствовать себя комфортнее.

В этой статье мне хочется поделиться с вами конкретными материалами, которые мне были полезны, чтобы разобраться в мире IT будучи нетехнарём. Надеюсь, они помогут не только изучить основные термины и разобраться в работе приложений, но и получить насмотренность в мире IT.
Начнём с майндсета
Самый простой путь без зубрёжек и курсов — общение с коллегами и базовая насмотренность.

Шаг 1. Подружитесь с вашими разработчиками

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

Заранее пишу разработчику, о чем хочу поговорить и какая у меня финальная цель. Например, разобраться, как работает <инструмент> или что такое мониторинг и как он устроен. Прошу выделить для меня 10-20 минут времени, чтобы он голосом показал и рассказал мне, как всё работает.

Только предварительно получив согласие, ставлю звонок, готовлю вопросы. Сначала прошу рассказать подробнее об инструменте, для чего он существует, есть ли у него какие-то альтернативы? Почему он помогает разработчикам? Почему разработчики могут выбрать его, а не что-то другое? Насколько использование этого инструмента популярно в компании (например, его использует только одна команда, или несколько?

Прошу привести пример на пальцах и объяснить. А ещё пробую выбить разработчика из его привычного контекста и дать мне его – так получается более “широкая” картина.

GPT World: теперь вы можете разобраться заранее, до созвона, а на созвоне задавать уточняющие вопросы ;)

Помимо таких созвонов с разработчиками есть ещё опции, как в чём-то разобраться:
  • Поставить 1х1 с лидом направления или стейкхолдером, или просто заряженным человеком, где раз или два в месяца вас будут погружать в продукт, процесс или определенный стек технологий. Самое важное помнить, что адженда встречи — с вас.
  • Ходить с командами на обеды. Когда уже подружились с коллегами, я люблю ходить и молчать (да!) с ними за обедом, пока они жалуются на закрытие багов, обмениваются новостями или что-то обсуждают из текущих задач. Грею уши, чтобы потом выхватить самую сочную тему на доклад или статью! В это же время нет ничего стремного, чтобы задать вопрос, а что такое ребята обсуждают.
Развивайте слабые связи! В моём опыте пока не было ни одного человека, который бы отказался что-то объяснять. Вы не обязаны классно разбираться во всем, но знать базу — помогает в общении.

Шаг 2. Сталкерите Ходите на внутренние встречи и изучайте базы знаний

Самый недооцененный бриллиант — страницы с заметками команд на Wiki, Сonfluence или на другой платформе. Обычно ребята складывают туда правила работы с командой, регламенты, документацию и прочие вещи. Я люблю эти страницы изучать — там правда бывает много полезного.

Попросите ваших заказчиков добавить вас во встречи вроде архитектурного ревью, обмена знаниями (часто такие есть в небольших командах), или в общие демо-дни или прочие встречи с презентациями. Так будет проще погрузиться в контекст.

Шаг 3. Погружение через мемы

О, да! Когда-то я вела TikTok для разработчиков, и чтобы придумывать шутки, смотрела мемы. Отлично помогало! Рекомендации телеграм-каналов с мемами лучше запросить у коллег, а мои любимые — Profunctor и ДЕВОПСИНА.

Шаг 4. Развиваем насмотренность

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

Например, доклады с канала известной всем конференции — Highload.

И ещё каналы конференций JUG Ru: по Java, мобильной разработке или фронтенду.

Если вы хотите закопаться в разработку — заглядывайте в плейлисты на канале Young&Yandex, например, про бэкенд-разработку.

Всей душой люблю блог Selectel: там всегда понятно раскладывают инфраструктурные вещи в небольших статьях.

Не обязательно смотреть глубокую техничку, подойдут обзорные доклады в стиле “Как устроена архитектура Яндекс Диска”, или “Архитектура API Gateway”.

Почему это работает: факты из когнитивных наук

Есть такой процесс в мозге — формирование распределённых представлений (distributed representations). Поэтому когда мы сталкиваемся с новым материалом, нам не обязательно разбираться в каждом пункте, который мы не понимаем (как бы контринтуитивно не звучало).

Мозг не ищет моментального смысла. Он активирует уже существующие нейронные сети; создаёт временные, слабые связи между нейронами и «примеряет» новую информацию к старым паттернам. Консолидация всех новых связей происходит позже.

Поэтому, если ваша цель, не стать разработчиком, а углубить понимание, такой довольно чиловый способ что-то изучить — идеален.
От майндсета к ресурсам
Что прочитать

  • Мартин Каган. “Вдохновленные” (“Inspired”)

Фундаментальная книга для продакт-менеджеров, но и деврел-менеджеру она поможет заглянуть под капот разработки: понять, как рождаются продукты, кто участвует в их запуске и что происходит за сценой релизов.

  • Роберт Мартин. «Чистый код» и «Чистая архитектура»
Две классические книги о том, как инженеры создают код и системы, которые живут годами.

Первая — про культуру написания понятного, аккуратного и поддерживаемого кода, вторая — про устойчивые архитектуры, которые можно менять без страха всё сломать.

Даже если ты не пишешь код, они помогают понять, о чём спорят разработчики на ревью, почему “чистота” кода так важна и что скрывается за словами архитектура, рефакторинг, SOLID.

  • Мартин Клеппман. «Высоконагруженные приложения» (или “та самая книга с кабанчиком”)
Книга — уровень advanced, пригодится не всем. Я бы читала только первую главу — она будет самой полезной. В ней автор объясняет, что на самом деле означает работа с данными: как их хранят, передают, копируют между серверами и защищают от потерь.

Простыми словами он показывает, из чего складывается надёжность, масштабируемость и поддерживаемость систем — три кита любой технологической платформы.

В чём разобраться самостоятельно

Я бы начала с базы: разобралась, что такое дата-центр, сервер и что такое облако (или виртуальные машины). Очень хочется порекомендовать курс про устройство дата-центров и серверов от Selectel (его как раз запускали, когда я только-только начинала там работать). Он очень подробный и нацелен скорее на системных инженеров, но посмотрите хотя бы часть видео — уверена, будет полезно.

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

Примерный промпт: “Привет, я начинаю карьеру в деврел-сфере, и хочу разобраться в том, что такое дата-центры, серверы и виртуальные облака. Можешь, пожалуйста, начать рассказывать, а я задам тебе вопросы по ходу рассуждений?”.

И разберитесь, что такое IaaS, PaaS и SaaS продукты — должно быть легче.

Изучите Roadmap.sh

На этом сайте собраны роадмапы по разным направлениям и стекам. Рекомендую открыть любой курс (допустим, про бэкенд) и изучить базу, которую там предлагают. В случае с бэкенд-разработкой это изучение существующих языков программирования, разобраться в GitHub. Единственный нюанс — вся информация на английском (но когда нас это останавливало?).
TProger

Базовый ресурс для джунов, где на пальцах объясняют, как что работает. Для понимания основных терминов — маст хев.

Инфлюенсеры

Активно читаю телеграм-канал и Youtube Гриши Скобелева. Там он проводит архитектурные каты, выкладывает видео с авторами популярных книг и с разработчиками разбирает принципы создания распределенных систем.

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

Кладезь подкастов и обсуждений технологий с экспертами — от самых “кишков” технологии до хороших обзорных рассказов. Рекомендую поискать там подкаст, если вам нужно разобраться в какой-то теме.

Подкасты

Подкаст — хороший способ посмотреть на одну и ту же тему с точки зрения разного опыта. Например, опыт бигтехов и небольших компаний, или разные взгляды на проблему коллег из смежных функций.. Мои любимые это:
  • Бреслав и Ложечкин
  • Кода Кода
  • Свободный слот у Авито и SREда

ByteByteGo

Блог и рассылки на английском про техничку, которые посоветовал мне коллега. Любопытно почитать, как что устроены сервисы зарубежных компаний. Контент уже хардкорнее, так как платформа предназначена для подготовки к собесам в зарубежные бигтехи.

GPT

Выдам базу, но может кому-то пригодится. Когда пишете промпт, делайте его конкретным, назначайте LLM-ке роль, и пишите вашу конечную цель (например, в конце я хочу понимать базовое устройство сервера/знать основные названия паттернов проектирования, и так далее).

Вот пример промпта:

Представь, что ты — экспертный ментор по /название направления разработки/ и DevRel (Developer Relations), с 10+ лет опыт. Я — DevRel-специалист в IT-компании, создаю контент для русскоязычной tech-аудитории: статьи, посты (и так далее, дописать о чем посты). Моя цель — углубить технические знания, чтобы лучше объяснять нюансы разработчикам, без потери фокуса на коммуникации.

Составь для меня персонализированный план изучения технических нюансов (направление разработки), ориентированный на практические знания для DevRel. План должен охватывать ключевые области: серверы/инфраструктура, API-дизайн, масштабирование, DevOps и производительность, и другие темы, которые ты посчитаешь важными“.
Базовый минимум знаний и с чего начать
Мне кажется, что нам, как деврелам важно понимать язык разработчиков и основные темы, как выглядит сама система целиком (клиент → API → сервис → база → инфраструктура), но не обязательно детально разбираться в алгоритмах.

Всё-таки особенность деврел-сферы в РФ — уметь слушать, задавать вопросы и переводить сложное на человеческий язык. Техническое понимание — не самоцель, а инструмент: оно не делает из вас разработчика, но делает вас более уверенным, полезным и точным в коммуникации.

Предлагаю вам выбрать один инструмент и начать с него, выделить время посмотреть доклад или послушать подкаст, а дальше всё потянется!

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

Удачи!
Об авторе
Арина Быкова – Employer Brand Lead в Яндексе.

Семь лет занимается развитием бренда работодателя, ведёт телеграм-канал про IT и путешествия: @omgitsarina

Связаться: @omgitsarina27
Хотите написать пост для devrel.ru?

Подмигните!

Вместе придумаем про вашу тему, что там внутри; насыплю фидбэка в режиме взгляда со стороны.

Почувствуйте на себе, через что проходят авторы, которых вы как деврелы отправляете делиться своими историями🙂