[Перевод] Как я стал Google Developer Expert по Flutter

О программе

У Google есть программа для экспертов в их технологиях. Чтобы попасть в неё, нужно выступать, писать, обучать, менторить или делать open-source в технологиях Google. Программа называется «Google Developer Experts», и это самое привилегированное сообщество разработчиков, о котором я знаю.

Плюшки:

  • Ранний доступ к продуктам и экспериментальным версиям.

  • Приглашения на мероприятия Google.

  • Возможности выступать и знакомиться.

  • Официальное упоминание в Списке экспертов на сайте Google. Это увеличивает приглашения и упрощает собеседования.

4269e04aa152198cf315ff84ecf80fa2.png

Мой брат уже несколько лет в этой программе как эксперт по Angular. Говорит, что ему это сильно помогает.

Мой путь во Flutter

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

Самый большой опыт на фронте у меня был в jQuery. Моё последнее мобильное приложение — Тетрис на JavaME в 2006.

Я делал мобильные приложения до того, как это стало модно.

Я делал мобильные приложения до того, как это стало модно.

Это явно не «из одного кода», нужно было изучать что-то новое. Я вспомнил, что мой друг говорил про Flutter как про следующую большую вещь (тогда ещё Flutter не обошёл конкурентов).

Я начал его изучать, и он захватил меня сразу. За несколько месяцев я сделал 60% своего MVP, но пришлось брать подработки, потому что тратить накопления был дико некомфортно.

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

Мы закончили проект в феврале 2022, и на последней неделе заказчику заблокировали юрлицо в Великобритании. Он россиянин, и этого оказалось достаточно.

Тогда же я переехал в Грузию и стал искать работу. У меня было 14 месяцев опыта, из которых 9 под NDA, и ни одного опубликованного приложения.

В местном чате программистов одна компания агрессивно пушила вакансию, и я откликнулся, просто для галочки. Но за скучным постом оказалось примерно такое сокровище:

Привет. Нам надо сделать фронт для Apache Beam. Всё open-source. Каждый PR ревьювят инженеры Google, потому что много контрибьютеров Apache Beam это сотрудники Google. Всё это остаётся на GitHub навсегда, и ты сможешь легко доказать свою работу кому угодно потом. Если что-то не нравится во Flutter, они могут команде Flutter напрямую это передать. Хочешь?

Midjourney:

Midjourney: «apache beam».

Я искал работу на полставки, чтобы доделать стартап, поэтому сомневался. Но друзья сказали, что я буду оленем, если откажусь. Я согласился. Позиция была Senior, но меня взяли мидлом, потому что я не учил буквы в «SOLID».

Midjourney:

Midjourney: «not solid».

Всё-таки после 17 лет на бэке и с опытом архитектуры я быстро стал Senior и вскоре вёл фронты для трёх проектов.

Через год мы сдали две обёртки для Apache Beam (Playground и Tour of Beam), и меня сократили.

Прекрасный повод для чего-то нового: пора податься в GDE.

Мой open-source

С самого начала работы с Flutter я вытаскивал повторяемый код в свои пакеты. Летом 2023 у меня было 18 пакетов Dart. Самые заметные:

  • app_state: пакет навигации.

  • keyed_collection_widgets: замена стандартных табов, которая использует enum вместо индексов.

  • enum_map: map с гарантией на этапе компиляции, что в ней будут значения для всех ключей-констант enum.

Ещё я был архиректором и главным разработчиком flutter_code_editor, который мы использовали в приложениях для Apache Beam. Наш менеджер великолепно договорился, что пакет с редактором кода остаётся у компании и не передаётся в Apache Software Foundation. Это увеличило заметность моей роли.

По мелочи я что-то делал в code_text_field, web3dart, easy_localization_loader, visibility_detector и ещё нескольких пакетах, но подумал, что это слишком мелко, и не стал упоминать в своей заявке.

Мои статьи

Я начал вести блог в 2021. Ненавижу повторяться, поэтому во время ревью кода я часто не объяснял ошибку или анти-паттерн, а писал статью и прикреплял ссылку. Так я получил первых 90 подписчиков на Medium.

Потом я написал статью-хит и получил ещё 200.

Недавно я узнал, что Flutter Community на Medium возобновили приём статей от новых авторов. Я отправил им 4 статьи, но их тихо отклонили.

«Flutter Community silently rejects articles».

Моя заявка

Я всегда боюсь отказов, поэтому хотел узнать требования заранее: сколько надо подписчиков, просмотров и т.п. Но никто не говорил.

Мой брат попал в GDE по приглашению. У него было около тысячи подписчиков в Twitter, когда ему написали и позвали. И у меня тоже это число закрепилось.

С тех пор процесс поменяли: мне нужно найти сотрудника Google или существующего GDE, который выступит рекомендателем, если считает меня подходящим. Я спросил у парня из Google, с которым работали на проекте Beam, но он ничего не знал про программу, кроме официального описания. Я думал, что у всех сотрудников Google тренинги, как в «Назад в будущее», но нет:

Таких тренингов в Google нет.

Таких тренингов в Google нет.

Для программы нужно описать достижения за последний год. Работы у меня больше не было, и в Apache я уже не контрибьютил, поэтому моя анкета скоро протухла бы. Я решил не ждать, и мой бывший ревьювер из Google рекомендовал меня в программу.

Мои статистики на тот момент:

Если вы не уверены, подходят ли ваши статистики, спросите существующего GDE.

Если ваши статистики ухудшаются в скользящем окне последнего года, я советую не ждать. Иначе можно упустить возможность, которая потом долго не повторится.

Воронка

В воронке несколько этапов:

  1. Проверка анкеты: Команда Google проверяет, подходите ли вы по анкете.

  2. Community interview: Существующий GDE беседует с вами, чтобы узнать. Здесь оценивают, что вы сделали для сообщества. И немного технических вопросов.

  3. Product interview. Сотрудник Google из вашей технологии собеседует вас. Тут мы углублялись в технологии, и было приятно.

Я прошёл всё с первой попытки. К сожалению, больше рассказать не могу. :)

Всё заняло 17 дней от анкеты до финального письма, которое выкладывает каждый новый GDE:

06e6e20d4f6fb8473276b468ac12b374.png

Через некоторое время пришли все доступы, значки и т.п.

Что дальше

Я теперь буду писать много про Flutter и программу, поэтому:

  • Подпишитесь на мой канал в Telegram, теперь он — первоисточник моих новостей:

Мои тексты по Dart и Flutter, по разработке вообще, анонсы продуктов, вакансии и мысли о жизни.

Мои тексты по Dart и Flutter, по разработке вообще, анонсы продуктов, вакансии и мысли о жизни.

© Habrahabr.ru