Начало основного контента

Доклады

  • ЯзыкRU

    В докладе рассказывается о том, как устроена одна из ключевых концепций Jetpack Compose — позиционная мемоизация, а также рассматриваются различные примеры оптимизации кода, связанные с концепцией.

    • ЯзыкRU

      Доклад посвящен анимациям в Jetpack Compose. Спикер обсудит способы создания анимаций, типы анимаций, их отличия друг от друга и примеры реализации анимаций. Также рассматриваются способы кастомизации и настройки анимаций.

      • #android
      • #mobiusconf
    • ЯзыкRU

      В докладе рассказывается про атрибут inlinable — как он влияет на компилируемый код и на производительность. Показано, как применять его в проектах. Спикер сравнит, как код работает с атрибутом inlinable и без него. Также будут затронуты атрибуты: dynamicCallable, _alwaysEmitIntoClient и другие.

      • ЯзыкRU

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

        • #crossplatform
        • #mobiusconf
      • ЯзыкRU

        Тимур расскажет, как можно организовать взаимодействие между нативным кодом Android-приложений и веб-страницами. При качественном исполнении можно получить унифицированный и кроссплатформенный UI, который можно менять на сервере по щелчку пальцев.

        • ЯзыкRU

          Стояла задача: расширить покрытие контента приложения новыми Deep Link-ами. Все звучало просто, но, когда спикеры начали тестировать решение, появились неочевидные проблемы. Копнули глубже и провели 280+ тестов на 7 разных устройствах, 7 версиях Android, 6 оболочках, 7 приложениях. И откопали кучу инсайтов, которые сэкономят ваше время и силы при работе с Deep Link!

          • ЯзыкRU

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

            • #partner
            • #techtalk
          • ЯзыкRU

            Кратко о том, кто такие Flutter и Dart (не Вейдер) и с чем их есть (плюсы/минусы/нюансы).

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

            • #partner
            • #techtalk
          • ЯзыкRU

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

            • #partner
            • #techtalk
          • ЯзыкRU

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

            • ЯзыкRU

              Спикер расскажет, в каком состоянии (спойлер: заброшенном) было принято мобильное приложение для сотрудников розничной сети МТС и что было сделано, чтобы это исправить.

              • ЯзыкRU

                Если приложение работает без падений, это еще не всё. Что если за этим стоит полнейшее легаси с нулевым покрытием тестами, многочасовые сборки и несколько недель на регресс? Как это понять? Сергей расскажет о критериях качества продукта, разработки и тестирования. А также о том, как собирать метрики и визуализировать их.

                • ЯзыкRU

                  Почему все вдруг начали делать декларативный UI в мобилке? В чем его плюсы и минусы? Какой из подходов наиболее «православный»? Обо всем этом пойдет речь в докладе. 

                  • ЯзыкRU

                    Применение Dependency Injection в Android-разработке. Какие DI-фреймворки существуют, и как они применяются в проектах Android-приложений сегодня — их достоинства и недостатки.

                    • ЯзыкRU

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

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

                      Спикеры расскажут, как работают под капотом приложения для путешественников. И покажут словарик для айтишников, погружающихся в тему авиаперевозок.

                      • #partner
                      • #smoking_room
                      • Андрей Мацуленко
                      • Ариэль Лейва Литвиненко
                      • Алексей Зайцев
                      • Иван Садовой
                    • ЯзыкRU

                      У большинства айтишников найдутся свои истории о собеседованиях: забавные, печальные, странные. Из одних можно сделать полезные выводы, а другие просто дают понять «что в индустрии бывает».  Обсудим, вспомним, поделимся лайфхаками. 

                      Подключайтесь!

                        • Александр Бонель
                        • Вероника Макаровская
                        • Кирилл Клебанов
                        • Антон Смирнов
                      • ЯзыкRU

                        Доклад том, как для общения с сервером по протоколу JSON-RPC была создана своя библиотека в стиле Retrofit. Речь пойдет о том, что такое JSON-RPC, почему не были использованы готовые решения, что в Retrofit под капотом, при чем тут рефлексия и как реализовать аналог Interceptor-ов из OkHttp.

                        • #partner
                        • #techtalk
                      • ЯзыкRU

                        Декларативный UI активно интегрируется в мобильную разработку: новые интерфейсы, технологии. Что-то модно, что-то вышло из моды, а что-то вечно.

                        Андрей и Анатолий обсудят основные прогнозы использования декларативного UI и попробуют выяснить, куда же все это движется.

                        • ЯзыкRU

                          Разработка для бизнес-сегмента может сильно отличаться от разработки для рядовых пользователей App Store. Открываются дополнительные возможности, основанные на Apple MDM (Mobile Device Management), также для приложения становятся доступны некоторые технологии, использование которых ограничено при распространении через App Store.

                          • ЯзыкRU

                            Доклад посвящен использованию Koin в активно растущем Android-приложении. В частности, переходу на многомодульную архитектуру с API и impl модулями. Будет рассмотрена возможность использования Koin в качестве DI фреймворка в контексте многомодульности.

                            • ЯзыкRU

                              Тимофей расскажет, как в Авито плохо жилось с CocoaPods и как хорошо живется с Independency. Речь пойдет про линкинг и сборку проекта.

                              • #swift
                              • #optimization
                              • #tools
                            • ЯзыкRU

                              Спикер расскажет об используемом подходе к визуализации бизнес-логики по исходному коду программы и реализации MVI-архитектуры, которая этому способствует. 

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

                              • ЯзыкRU

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

                                Доклад будет интересен тем, кому близка тема построения релизного процесса, любителям автоматизации и скриптов.

                                • ЯзыкRU

                                  В компании спикера есть три основных проекта, и в какой-то момент команда начала создавать артефакты (дизайн-система, Server-Driven UI , целые feature flow), которые может подключать каждый проект.

                                  Абакар расскажет, какие плюсы это принесло, и с какими минусами пришлось столкнуться.

                                  • ЯзыкRU

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

                                    Но даже если этот этап успешно преодолен, то по мере роста возникает новый вызов — как оставаться друзьями с теми, кем сегодня нужно управлять?

                                    В студии соберутся тимлиды с разработчиками и обсудят тонкости взаимоотношений на работе. 

                                    Как стать частью команды? Как максимально быстро и комфортно для себя адаптироваться? Как оставаться друзьями с теми, кем управляешь? И надо ли это вообще?
                                    Подключайтесь!

                                      • Тимофей Таленфельд
                                      • Тати Рябова
                                      • Евгений Сатуров
                                    • ЯзыкRU

                                      Доклад о том, как упростить жизнь разработчика в Kotlin Multiplatform при разработке мультиплатформенного фиче-модуля. Архитектура, Redux, DI. Проблемы и способы их решения.

                                      • ЯзыкRU

                                        Спикер расскажет про проблемы, с которыми столкнется команда при затаскивании корутин в свой проект. Доклад сфокусирован на обработке ошибок — вы не услышите про то, что такое launch и async, но вспомните про try-catch. Узнаете про coroutineExceptionHandler и про то, как эти инструменты стреляют в ногу. Спикер расскажет, как по его мнению обезопасить себя от этих выстрелов.

                                        • ЯзыкRU

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

                                          Flutter-приложение, будучи адаптированным под веб, с удивительной лёгкостью превращается в полноценное PWA, которое весьма убедительно мимикрирует под настоящее мобильное приложение. Ну а пока час Х не наступил, вы можете собирать привычные артефакты из той же кодовой базы.

                                          Из доклада вы узнаете о том, с какими проблемами вы столкнетесь на пути конвертации вашего мобильного Flutter-приложения в веб, а также будут освещены вопросы UX, безопасности, тестирования и деплоя. Поговорим и о неизбежных ограничениях.

                                          • ЯзыкRU

                                            Абакар, Лёша и Виталий прошли тернистый путь упорядочивания хаоса в процессе адаптации новичков в команде мобильной разработки. В этой BOF-сессии ребята решили собраться и поговорить про все боли и сложности, с которыми они столкнулись, и поделиться тайной того, как можно решить раз и навсегда проблему адаптации новых разработчиков. Они расскажут про процесс подбора, наставничество, флоу работы, инструменты адаптации и лайфхаки.

                                            • #partner
                                            • #smoking_room
                                            • Абакар Магомедов
                                            • Алексей Кирсанов
                                            • Виталий Рамазанов
                                          • ЯзыкRU

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

                                            Среди прочего, вы узнаете, как меняется техническое интервью в зависимости от позиции и как кандидат может использовать это в свою пользу.

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

                                            Все с примерами, ссылками и ответами на вопросы.

                                            • #partner
                                            • #smoking_room
                                          • ЯзыкRU

                                            Вы узнаете, как в рамках Яндекс.Маркета был запущен эксперимент по использованию Flutter, реализован BDU на нем, к чему это привело и с чем столкнулись в процессе.

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

                                            • ЯзыкRU

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

                                              Но что если нужно еще и проверить авторизацию? Что если экраны связаны друг с другом, а нужный экран уже открыт где-то в приложении?

                                              Рано или поздно все команды сталкиваются с вопросом, как построить навигацию в iOS-приложении, чтобы ее было удобно поддерживать и расширять. В hh.ru прошли долгий путь в построении навигации для приложений. Пробовали разные подходы: от одного большого enum, который знал обо всех экранах в приложении, до координаторов.

                                              В поисках идеального решения для навигации в hh.ru пришли к собственному, которым и хотят поделиться с сообществом в виде опенсорс-библиотеки для iOS- и tvOS-приложений.

                                              • ЯзыкRU

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

                                                • #partner
                                                • #smoking_room
                                                • Антон Пименов
                                                • Анастасия Лиходиевская
                                                • Дмитрий Дёмин
                                              • ЯзыкRU

                                                В докладе рассмотрим, как сделать использование Kotlin-модуля со стороны Swift комфортным, а код — надежным. Увидим, почему и как был создан Gradle-плагин moko-kswift и какими еще средствами можно улучшать опыт iOS-разработчиков в KMM.

                                                • ЯзыкRU

                                                  Фантазируем, что изменится в разработке через 20 лет. Будем ли мы кодить с телефона и программировать холодильники? Заменят ли программистов нейросети? Выживет ли кроссплатформа и умрет ли натив?

                                                  • #partner
                                                  • #smoking_room
                                                • ЯзыкRU

                                                  Поговорим на популярную в последнее время тему: инфраструктурные команды в мобильной разработке.

                                                  Кто они? Для чего нужны и нужны ли вообще? Где искать людей в такие команды?

                                                  Рассмотрим основные функции: настройки скорости сборок, запуск проверок на CI/CD, метрики, самописные плагины и прочую магию. А потом подискутируем на тему общей инфраструктурной команды в Android и iOS.

                                                  • #partner
                                                  • #smoking_room
                                                • ЯзыкRU

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

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

                                                  • ЯзыкRU

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