Start of main content
2 offline days
November 9–10 10:00–19:30 (UTC+3)
Offline: Park Inn by Radisson Pulkovskaya, 1 Pobedy Square, Saint Petersburg, Russian Federation
Online broadcast
Why It’s Worth Going
- To see old friends. To discuss current problems. To come up with new ideas. To debate and just chat.
Switch the format to offline
To have a change of scenery, to distract and have a good time. To gain fresh impressions and new acquaintances.
Broadcast
There will be a broadcast on the offline part of the conference, which is available to participants with any ticket. If you want to meet and interact with the speakers and other participants live, we are waiting for you at the venue. And if you are not ready to get to the venue, recordings of all the talks and activities will be waiting for you on this website.
See for yourself
Program
The time in the program is for the time zone UTC+3 (Europe/Moscow).
November 9
Talk type: Conversation
Hall 1Opening of the Offline Part of Mobius 2023 Autumn
We'll talk about schedules, sessions, and share relevant information. Join us in the conference hall or online to find out what's on the air soon!
Yury Dubovoy
Company: Delimobil
Timur Gasymov
Company: Zen
Talk type: Talk
Hall 1SwiftData as a Replacement for CoreData. Deep Dive
A deep dive into the details of the new SwiftData framework, comparison with CoreData, performance metrics and a plan for integration into the project. And at the end — a conclusion about the need to migrate to the new framework, possible ways to use it in versions before iOS 17.
Andrei Zonov
Company: Tinkoff
Talk type: Talk
Hall 2Instant Start: How VK Clips Handle Video Playback on Android
At VK Clips, Dmitry and his team constantly optimize the feed, handling recommendations, storage and playback on the client. The speaker will discuss what helps them achieve an instant video start. We'll also consider the effective use of ExoPlayer, video integration into RecyclerView and potential pitfalls that may be encountered along the way.
Dmitriy Rychagov
Company: VK Clips
Talk type: Talk
Hall 3Killing Lottie? Bringing in Rive?
The speaker will talk about Lottie: we will discuss its limitations and see how it works under the hood as well as how the rendering mechanism works in particular.
We will also discuss a new tool from the creator of Lottie – Rive. Evgeniy will show how Rive solves problems that Lottie can't handle – as an example, we'll look at Rive's under-the-hood interactivity. In addition, we'll implement an interactive animated element with Rive and without coding.
Evgeniy Prokopev
Company: SberMarket
Talk type: Talk
Hall 1Is Swift Modern Concurrency Really That Necessary?
Not in a hurry to switch to Swift Modern Concurrency or are already actively using it, but don't understand its pluses except for its nice syntax? Then it will be useful for you to learn what concept lies inside the new model of concurrency and what its pros and cons are.
Vasily Usov
Company: VK / VK Maps
Talk type: Talk
Hall 2How to Stop Picking Up a Project and Start Working
We've all read dozens of papers with how-to articles on speeding up the build of an Android project. But what to do when the tips have been applied, optimizations have been performed, the project has long passed 1000 modules and you have time to go to lunch during the cold build? Alyona will tell you how the Sberbank Online platform team managed to reduce the local build time by 3 times using a customized approach and a pinch of Gradle magic.
Alyona Tarasova
Company: Sber
Talk type: Talk
Hall 3A Recipe for Making a Cross-platform Mobile Video Editor
We will learn:
– How to combine several different multimedia products and technologies into one super app project.
– How to bring together C++ and Kotlin Multiplatform.
– How different memory management mechanisms (Swift, Objective-C, KMM, C++, C) co-exist.
– How to design a presentation layer so that only the layout is on the platform.
– What KMM features helped the team during development, and which ones did not.At the end of the talk, we'll find out what you should expect from using KMM, and what is "the recipe for making a cross-platform mobile application".
Dmitriy Kuznetsov
Company: Movavi
Lunch break
Lunch break is at different times for different participants. Please refer to the printed program for details.
Talk type: Talk
Hall 1SwiftUI Navigation: Simple, Native and Declarative
We'll discuss how to make simple, feature-rich declarative-style navigation without routers and coordinators, relying on SwiftUI technology standards. The final solution will have iOS 14 support and NavigationStack capabilities, and it will be free of SDK flaws and bugs.
Sergey Balalaev
Company: Ozon
Talk type: Talk
Hall 2How We Developed a Design System on Jetpack Compose
Nowadays, every modern mobile app needs a convenient design system.
The speaker will tell us about the path his UI team went through when implementing the design system on Jetpack Compose. We will look at the difficulties they encountered while developing and conducting a design review, discuss ways to interact with Material, and pay special attention to the tools for implementing non-standard UI that performed the best.
Mikhail Struchkov
Company: Tinkoff
Talk type: Talk
Hall 3Code Review in Action
The rapid growth of the team and the project led to the need to change many processes. Many problems were not solved: a large number of bugs, heterogeneity of the code base, lack of proper experience sharing between employees, and many others. A well-built code review process became an effective solution for these issues. Konstantin will talk about how they overcame toxicity and improved internal competition between engineers during the review, what stages they went through as a team, and how their process looks like today. Of course, it wasn't without extensive automation of routine. They have created a system that makes life easier for everyone involved in the process and allows for easy modifications. Konstantin will also talk about it in detail.
Konstantin Petrov
Company: BCS
Lunch break
Lunch break is at different times for different participants. Please refer to the printed program for details.
Talk type: Talk
Hall 1Tracer as an Alternative to Crashlytics, or Another Way of Looking at Application Error Analytics
Why do you need Tracer when you have Crashlytics, Sentry and App Centre? We'll talk about the differences, advantages, implementation details and problems that only Tracer can possibly help you solve.
Kirill Popov
Company: VK / Odnoklassniki
Talk type: Talk
Hall 2Bringing Combine and Swift Concurrency Together
The speaker will talk about the UDF pattern and how to use it with Swift Concurrency. We will also discuss how to use Combine and Swift Concurrency without callbacks and how to reliably test that code.
Alexander Darovsky
Company: Tinkoff
Talk type: Workshop
Hall 3Designing Non-visual Interfaces: Basics, Meanings, Examples. Part 1
An interactive workshop where we will design non-visual interfaces together.
We will:
- switch on TalkBack and VoiceOver and recall how to use them and why;
- take an honest look at the digital interface and its representations: visual, auditory and even tactile;
- analyse the key components of the interface and try to design solutions so that they are correctly presented to assistive technologies.
Valeria Kurmak
Company: Yandex
Talk type: Talk
Hall 1BDUI 100%: Controlling Shimmers from the Backend
The BDUI development team at Market developed their own language to describe shimmers, learnt how to parse it quickly and embedded it in the application and their backend. The speaker will tell us why they decided to develop their own language similar to Lisp and why the usual JSON or binary format didn't fit, as well as how they learnt to generate code for both platforms (iOS, Android) using Python and why they gave up the idea of using KMM.
Mikhail Beskhitrov
Company: Yandex Market
Talk type: Talk
Hall 2Swift Plugins: Accelerating Project Assembly
The speaker will talk about Swift Plugins: what they are, how to use them, and how to create your own ones. Maxim will also demonstrate how the helpers like SwiftFormat, SwiftGen, Sourcery, Needle, Prefire can reduce assembly time from 1m 30s to 5s.
Maxim Grishutin
Company: Ozon
Talk type: Workshop
Hall 3Designing Non-visual Interfaces: Basics, Meanings, Examples. Part 2
An interactive workshop where we will design non-visual interfaces together.
We will:
- switch on TalkBack and VoiceOver and recall how to use them and why;
- take an honest look at the digital interface and its representations: visual, auditory and even tactile;
- analyse the key components of the interface and try to design solutions so that they are correctly presented to assistive technologies.
Valeria Kurmak
Company: Yandex
Talk type: Talk
Hall 1All the Problems With Modular Project Work Solved. Do You Want the Same?
Together with the speaker you will understand why multi-repo and multi-modularity is cool, look at the problems it creates and solve them immediately. Special emphasis is placed on synchronizing repository changes, getting rid of dependency hell, and controlling the consistency of a large project.
Misha Haritonchik
Company: Sber
Networking and Afterparty
To see old friends. To discuss current problems. To come up with new ideas. To debate and just chat. To relax at the afterparty at the end of the day.
November 10
Talk type: Talk
Hall 1Adaptation of Interfaces for Aurora OS: From Components to Patterns
During the talk we will learn what is the peculiarity of Aurora OS design system and how it differs from other design systems; how to use components correctly and what should be taken into account when designing interfaces for Aurora OS; what behavioural patterns are peculiar to this platform; how to port an application to Aurora OS so that it does not look alien, but at the same time retains its attractiveness for users.
Aleksey Koriukin
Company: OMP
Talk type: Talk
Hall 1What State Hides in Compose
Alexey will continue talking about how Jetpack Compose works under the hood. In particular, he will dive into what State truly means for Compose. He'll explain why it's far from being as simple as it appears at first glance, and why it's a crucial mechanism in the functioning of Compose as a whole.
Alexey Panov
Company: Kontur
Talk type: Talk
Hall 2“Is It Working Fine for Us Now?” or What Is Observability of a Mobile App
In the world of backend, APIs and databases, good monitoring has long been a matter of course. Daniel will share how Tinkoff approaches observability of the company's main mobile banking application with a daily audience of over 10 million customers. The speaker will also talk about what metrics are monitored and what practices have proven to be effective in this area.
Daniel Khaliulin
Company: Tinkoff
Lunch break
Lunch break is at different times for different participants. Please refer to the printed program for details.
Talk type: Talk
Hall 1How much memory does a build need? JVM for Android developers
The speaker will talk about how RAM allocation affects the build time. We will explore how much memory is really needed to develop an Android application and how to identify its deficit or overabundance.
Yuriy Anisimov
Company: Tinkoff
Talk type: Talk
Hall 2Balance Between Speed and Reliability: Over-use Cannot Over-check
The speaker will share how they at Sberbank Online found the balance between build speed and reliability after adding pull request code.
Veronika Makarovskaya
Company: Sber
Talk type: Talk
Hall 3Best Practices for Local Authentication on Flutter
Local authentication is used to securely log into an application with sensitive data. The speaker will explain how it can be implemented on Flutter, why they do it and what are the advantages of such a solution.
Pavel Gershevich
Company: Aspirity
Lunch break
Lunch break is at different times for different participants. Please refer to the printed program for details.
Talk type: Talk
Hall 1BDUI – a Pleasure or a Pain?
During the talk we will learn about Cian's experience in Backend-Driven UI development. The speaker will tell us why they decided to create their own tool, review the main nuances of the implementation, and demonstrate how it works. We will talk about what difficulties may await when developing such a tool and discuss its area of application.
Dmitrii Zherdev
Company: Cian
Talk type: Talk
Hall 2Swift Macros: Simpler, Cleaner, Faster
The speaker will explain how Swift 5.9 macros can be used in practice, speed up and optimise development, and make life easier for developers.
Anna Zharkova
Company: Usetech
Talk type: Talk
Hall 3Compose Optimisation: Challenges, Experience, Tactics, Strategy
Goal: to highlight problems that arise when working with Compose in a large team, give unified approaches to optimisation and offer a different view of UI state architecture.
Sergey Chumikov
Company: VK
Talk type: Talk
Hall 1Life of an Indie on Google Play
The speaker will talk about the complexities of indie development and the rules of Google Play.
Indie is their own boss and, as in the TV series about gangsters, is responsible for everything. Indie specifics can't be described in two phrases, but you can learn useful from the recommendations.
The times of an empty mobile app market are over, and budgets for developing serious apps are not affordable for ordinary indie developers. Vladimir will touch upon the topic of finding niches that big companies have not yet occupied or may not occupy due to economic reasons. There will also be some serious theory, without which indie development will be difficult.
Vladimir Timofeev
Company: Android Tools
Talk type: Talk
Hall 2How to Reduce the Application Weight Quickly: Moving Images and Localization Strings to the Server
We'll look at how we can reduce the application size, as well as conclude that one of the most important aspects in this process is getting rid of localization strings and xcasset catalogs. The speaker will explain how this can be done with minimal costs and without large-scale refactoring of the entire application.
Alexander Evtukhov
Company: Otkritie Bank
Talk type: Technical interview
Hall 3Cracking the Android Interview
When applying for a job, we have to go through a job interview – but nobody knows what to expect from it. Dmitry will share his experience of interviews on both sides of the fence, give advice on how to prepare for a next interview stage, as well as explain what level of knowledge is required for each grade.
Dmitry Movchan
Company: Zen
Talk type: Talk
Hall 1GameDev and Aurora OS. Game Porting
Running a favorite childhood computer game on your Aurora OS smartphone.
Yaroslav Andreyev
Company: OMP
Talk type: Conversation
Hall 1Closing of the Offline Part of Mobius 2023 Autumn
We'll summarise the results, recall the highlights and talk about future plans. Join us in the conference hall or online, so you don't miss a thing!
Yury Dubovoy
Company: Delimobil
Timur Gasymov
Company: Zen
Discussions
Live conversation with speakers between activities. No recording and no time limit.BoF
Informal conversations without hosts or speakers. This is where new ideas are born.Round tables
Speakers and experts discuss current industry issues.
Bonus
Coffee and lunch breaks
Buffet and beverages of your choosing. If you have food restrictions, write to our support team. We’ll find a solution.Networking and Afterparty
Informal atmosphere, networking for all participants, speakers, and experts. Heart-to-heart talks and an afterparty at the end of the first offline day.
FAQ
Where will the offline part of the conference be held?
Offline part will be held on November 9–10 at the following address: Park Inn by Radisson Pulkovskaya: 1 Pobedy Square, Saint Petersburg, Russian Federation.When will the program and time for the offline part of the conference be known?
We begin publishing the program in batches on the conference website one month in advance.What activities will be included on the offline part of the conference?
There will be on the offline part:
- talks;
- roundtables;
- BoF-sessions: meetings of interest without a scheduled schedule;
- discussions with offline and online speakers who will come to the site;
- Afterparty for participants at the end of the first offline day.
Will there be an online broadcast of the offline part of the conference?
We will broadcast live most of the activities of the offline part: talks, roundtables, etc.
Discussions and BoF-sessions will not be broadcast or recorded.
Offline was so long ago that I no longer remember what the procedure was for offline conferences.
Don’t worry, before the conference we will send you a participant’s memo. It will contain all the necessary information.Can I buy a ticket only for the offline part of the conference?
To attend the offline part, you must purchase an ONLINE + OFFLINE ticket. It entitles you to attend the offline part of the conference and lifetime access to the recordings of the online part.How do I get into offline part if I have a ONLINE ticket?
If you already have a ticket for the online part of the conference, you can upgrade it to ONLINE + OFFLINE. To do so, email our support team at support@mobiusconf.comHow do I get to the offline part if the company only paid for my ONLINE ticket?
If the company that paid for your ticket is not willing to upgrade to ONLINE + OFFLINE, you can do it yourself at a discount. The discount is given for taking the survey after the online part of the conference ends.Is there a limit to the number of tickets for the offline part?
The number of tickets is limited to the capacity of the conference venue.
So it is better to buy tickets in advance while they are available.
Are there any restrictions on going to an offline conference?
There will be no COVID restrictions on site visits. You don’t need QR codes or PCR tests to enter the venue. For your safety a qualified medical worker is constantly on duty at the site.
However, if you’re feeling unwell, it’s best to refrain from going offline. You will be able to participate in the offline part remotely or watch the performances in the recording.