Привет, Хабр! Меня зовут Лена, я iOS-разработчик в inDriver. Расскажу о том, как мы выбирали менеджер зависимостей для проекта. Название статьи звучит пессимистично, но на самом деле, все оказалось не так плохо.
Сначала поделюсь тем, как у нас обстояли дела с интеграцией сторонних решений. Затем выделю проблемы и цели, которые перед нами стояли, и перейду к сравнению менеджеров зависимостей. Расскажу, почему остановили свой выбор на Swift Package Manager (SwiftPM) и как на него переезжали.
Об истории развития такси в российском интернете написано немало. Можно вспомнить серию статей Кирилла Левина, посвященную развитию московского такси от царских времен до хрущевской оттепели. Отличный материал под названием «Генезис российского таксомотора» выпустил в 2009 году Станислав Кирилец.
Вышеперечисленные материалы богато иллюстрированы — приведены архивные фотографии, сканы газет и журналов тех лет. Не хватает одного — видеоматериалов, показывающих такси тех лет в движении.
Как раз этим и займемся — продемонстрируем ролики с транспортными средствами XX века и расскажем об их технических характеристиках. Все видео представлены в хронологическом порядке: от самого раннего к самому позднему. Время стереть пыль со старых моторов и завести их!
Привет, меня зовут Оля, я Head of Processes&Practices, занимаюсь продуктовой трансформацией в inDriver. Сейчас у нас активная продуктовая и инженерная культура, система OKR, масштабное продуктовое планирование и смелые планы на будущее. Но так было не всегда. И в этой статье я расскажу о тех вызовах, с которыми мы столкнулись в процессе трансформации и о том, чего уже удалось достичь.
В предыдущей статье мы сформулировали нашу главную проблему при масштабировании Unidirectional Data Flow (UDF) — модуляризацию. Сегодня существует много UDF-фреймворков на Swift, но мало кто уточняет, как их масштабировать на большое, многомодульное приложение. Мы решили поделиться, с какими сложностями столкнулись и к каким решениям пришли.
В статье рассмотрим 3 проблемы, с которыми столкнулись, и сравним, как разные фреймворки их решают. Для сравнения мы выбрали одни из самых популярных — ReSwift и The Composable Architecture (TCA). В конце расскажем, какое решение мы в итоге реализовали. Приступим!
Привет, я Антон, iOS-разработчик в inDriver. Год назад я присоединился к компании и стал одним из первых разработчиков в новой платформенной команде. Перед платформенными командами, в отличии от продуктовых, стоят задачи по разработке, а не по продукту как таковому. Мы выделили основные направления: создание общих компонент и стандартов разработки, а также развитие и поддержка архитектуры проекта. В этой статье остановимся на архитектуре. Разберем, с какими проблемами столкнулись в процессе ее масштабирования, какие ошибки допустили и как исправили. Обо всем по порядку.
UPD: технические детали подробнее рассказаны во второй части.
Всем привет! Меня зовут Илья, и я провожу собеседования *хлоп-хлоп-хлоп*. Сейчас работаю на позиции Principal iOS Engineer в inDriver, и мой фокус смещен в сторону технических собеседований. До этого руководил мобильной разработкой в в «Альфа-Банке» и был кем-то вроде нанимающего менеджера. Это тот человек, который говорит финальное слово по кандидату и определяет, какую циферку написать в оффере. Помимо «рабочих» собеседований, я иногда собеседую на аутсорсе, а также помогаю разработчикам к ним готовиться.
В общем, собеседования давно стали частью моей жизни. В этой статье мы верхнеуровнево пройдемся по всем этапам этого процесса, от идеи до офера, и обсудим, как успешно дойти до конца.
Всем привет! Меня зовут Дима. Я BI Engineering Manager в inDriver. В компанию я пришел в марте 2020 года развивать направление Business Intelligence. О том, как это происходило и происходит сейчас, с какими вызовами приходится сталкиваться и какие у нас планы на будущее по этому направлению, читайте далее в этой статье.
Привет, я Роман, Senior Engineer отдела QA Auto в inDriver. Примерно год назад у нашей команды возникла идея разгрузить ручных тестировщиков и автоматизировать процесс коммуникации между ними, когда они хотят прогнать тесты. Результатом стало создание сервиса Porter по автоматизации очередей тестирования, о котором я расскажу в этой статье.
Карты — один из ключевых элементов многих мобильных приложений. И наш сервис не исключение. С помощью карт пользователь указывает, куда подать автомобиль, а водитель строит маршрут поездки. Кроме того, на карте в реальном времени отображается движение водителя к пассажиру и многое другое.
Есть несколько типов онбординга: на уровне компании, когда новичку все показывают и рассказывают про ее деятельность, особенности, структуру; на уровне HR, который может еще делать акцент на впечатление от работы; и на уровне команды. О последнем мы и поговорим, особенно о том, как поменялись требования к онбордингу при удаленной работе.
Работа до удаленки и после.
Какие есть варианты онбординга?
Бросили в воду, выплыл — наш человек, не смог — сам виноват, надо было лучше стараться и учиться плавать заранее;
Вот задача, вот инструменты остальное походу поймешь;
Настоящий онбординг. В первых случаях его на самом деле не было. Новичком занимаются и аккуратно погружают в устройство компании и команды.
Все началось с того, что министерство торговли США включило Huawei в список компаний, с которыми запрещено вести бизнес американским компаниям. Ответом Huawei стала операционная система Harmony OS для своих смартфонов, и отказ использовать в ней сервисы Google. И чтобы не потерять часть рынка, мы интегрировали в inDriver ее поддержку. Хотя «интеграция OS» звучит громко – наше приложение, как и любое другое, написанное под Android, запустится на Harmony, но для полноценной работы необходимо заменить Google-сервисы на аналогичные Huawei.