iOS-разработчик в команду Speed

Вакансия закрыта. Посмотреть похожие

В работе мы ставим амбициозные цели и не останавливаемся на достигнутом. Поэтому для нас так важно, чтобы каждый участник большой команды Авито разделял культуру компании. Погрузиться в неё помогает Манифест, в котором собраны наши основные ориентиры — миссия, ценности, принципы работы manifesto.avito.com

О команде

Наша команда отвечает за то, чтобы новые фичи после разработки оказывались в продукте. Мы работаем над CI/CD-инфраструктурой, поддерживаем свою ферму из 115 Mac mini, развиваем нативные фреймворки для тестирования и занимаемся релизами приложений.

Примеры будущих задач:

Меня зовут Артем и я iOS-разработчик в команде Speed. Задача моей команды – помогать продуктовым разработчикам быстрее доставлять фичи пользователям. Процесс разработки фичи включает в себя этапы, время выполнения которых не всегда напрямую зависит от скорости написания кода. На общее время разработки фичи влияют, например, скорость компиляции проекта и время прохождения автоматических проверок  изменений при влитии изменений в master. 

Недавно я общался с бывшим коллегой, он много лет проработал в Avito, а теперь работает в одной FAANG компании. Он с воодушевлением рассказывал про подход,  используемый в его текущей компании для ускорения компиляции iOS проектов. Это внутренний инструмент компании с кодовым названием Focus. Его суть заключается в том, что разработчики работают с исходным кодом только тех частей проекта, в которые вносят изменения, а остальной код поставляется уже в виде скомпилированных бинарных файлов. Таким образом, тачка разработчика компилирует только исходный код, с которым он работает, а все остальное просто линкуется в готовом виде. Такой подход позволяет снизить время компиляции проекта в разы. В масштабах команды из десятков разработчиков экономия времени на компиляции проекта может составлять несколько человеко-дней за неделю.

Меня воодушевил успешный опыт с подходом Focus и мне захотелось попробовать внедрить его у нас. По моим оценкам профит от внедрения выглядел значительно более перспективным чем текущее решение по ускорению разработки на базе демо проектов модулей, которым я занимался последний квартал.
Особенность нашей команды в том, что у нас нет менеджеров продукта, которые приносят нам задачи, мы сами являемся продактами и можем брать в работу задачи, которые считаем наиболее перспективными. Если осознаешь, что идешь неверным путем, можешь в любой момент изменить курс в нужном направлении, штурвал у тебя в руках.

Перед планированием очередного квартала я набросал TDR (Tech Design Review) по ускорению разработки, где описал идею с Focus, а затем обсудил ее с командой. Ребятам идея тоже зашла и мы договорились исследовать внедрение этого подхода в следующем квартале и более предметно оценить профит.

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

  • получить бинари остальных модулей проекта
  • научить Indep подкладывать бинари модулей вместо исходников. Indep – это внутренний инструмент Avito для генерации iOS проектов, наподобие open source инструмента Tuist.

После этого я смогу замерить скорость компиляции проекта до / после и сделать выводы о перспективности подхода на нашем проекте. Если гипотеза оправдается, я составлю план по доведению инструмента до production состояния с учетом удобства использования разработчиками, оценю подзадачи и мы возьмем их в работу в следующем квартале.

По этой задаче как и по большинству других у нас нет экспертизы в команде и разработчики часто делают что-то впервые. И когда получается результат – испытываешь огромный кайф от работы! На продуктовых задачах подобных эмоций у меня не было.

И кстати, мы ищем коллегу iOS-разработчика в нашу команду. Подобных идей много, а рук не хватает. Приходи на собес, пообщаемся :)

Работа у нас — это:

  • интересные и важные задачи в большом проекте;
  • опытные и заинтересованные коллеги, готовые оказать поддержку;
  • комфортные условия работы: ДМС, фитнес, компенсация питания;
  • красивый и комфортный опенспейс с видом на центр города: два десятка переговорок, зоны отдыха, гамаки и скейтборды;
  • обучение за счёт компании: мы оплачиваем профильные курсы, участие в российских и международных конференциях, во внутренних митапах, хакатонах, тренингах и доступ к онлайн-библиотеке издательства «МИФ»;
  • развитие софт скиллов: на курсах для сотрудников можно прокачать своё мастерство коммуникаций или выучить английский;
  • гибкое начало рабочего дня по согласованию с руководителем;
  • заботу о здоровье: с первого дня работы вы получите страховку со стоматологией, в офисе ведут приём терапевт, психолог и массажист;
  • достойную зарплату, бонусы и премии — размер обсудим на собеседовании.