Continuous Learning: How to Keep Up with Progress

(Mobile Z-Day 2020)

Learning can be tough, especially in 2020 when the amount of information is growing exponentially. In this talk I am speaking about how do we learn as a species, how you can improve your learning and what means of learning are avaibable nowadays from classic universities to conferences and books.

Mobile Development: DevOps or not DevOps

(DevOops 2019, Saont-Petersburg)

There is a bunch of DevOps practices, like Continuous Integration, Blue/Green Deployment, Staged Rollouts, etc. How do things work for Mobile from DevOps perspective? Can we call the current situation in mobile development fully DevOps compliant? Let's see!

First of all, we need to check out the code. Then build it and run static analysis, followed by unit tests. Then sign it and publish. Sounds like it is the same as you would do for server side development. But the devil's in details. To build a mobile app you will need a Mac machine, at least for iOS. Then you will need to deal with the problems of dependency managers and build systems used for mobile: gradle, CocoaPods, Xcode build, Swift PM, etc. And when you built your binary you need to sign it, that means coping with provisioning profiles, certificates, etc. And when you think you're done you have to deploy your app to distribution services or right to the google play/app store and this is a separate problem.

This talk gonna cover everything you need to know about mobile DevOps and if you can call it a proper DevOps practice.

...

(july 2019, CFT fest Saint-Petersburg)

...

(Droidcon 2019, Berlin)

Wake Up, Neo

(Droidcon 2019, Berlin;CFT fest Saint-Petersburg; RS Conf 2019, Minsk )

I believe most of us are just doing their day-to-day job and it's fine. But have you thought are we doing alright as an industry? Do we do things in a right way? Do we do the right things? Are there any flaws in what we are doing? Actually, there are! The security is not great generally speaking, the performance of our apps can be much better, the quality is below optimal and the emotional atmosphere is definitely not ideal. In this topic I want to uncover those issues to give the current state of the industry and provide some tips on how we can improve it together.

...

(june 2019, Greed Dinamics Saint-Petersburg)

...

(march 2019, GDG Saint-Petersburg)

...

(jan 2019, Riga)

Role of a Solution Architect in a Software Project

(SECR 2018, Mocsow)

We all know what is the responsibility of Project Managers, Developers and Test Engineers in a Project.

But what does a Solution Architect do? What are his/her primary responsibilities? What are the common tools used?

Как использовать корутины в проде и спокойно спать по ночам

(okt 2018, AppsConf Moscow)

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

...

(sept 2018, EPAM SEC Minsk)

...

(sept 2018, GDG Minsk)

...

(april 2018, Warsaw)

...

(april 2018, Drezden)

Forget RxJava: Kotlin Coroutines are all you need

(Mobius Saint-Petersburg 2018, Code Fest, Novosibirsk)

65% разработчиков, начиная проект на Kotlin, выбирают RxJava 2 в качестве инструмента для фоновой работы. Но насколько оправдан этот выбор? Корутины в Kotlin могут стать мощной заменой RxJava. В докладе мы сравним оба подхода, рассмотрим их плюсы и минусы, посмотрим, в каких случаях удобнее использовать корутины, а в каких не обойтись без Rx. Увидим, как тестировать код, написанный с помощью обоих подходов и насколько они могут сосуществовать.

...

(Yandex Meetup, Saint-Petersburg)

Void of the legacy: Strategy of drastic improvements in a software project

(Mobius Moscow 2017)

Есть такое матерное слово «legacy». И каждому разработчику приходится с ним сталкиваться постоянно. Более того, каждый новый проект становится legacy со временем, если не уделять достаточно внимания техническому долгу. В докладе мы поговорим, как жить с особо запущенным случаем, aka проектом возраста более 5 лет.

Мы узнаем:

  • как осознать размер долга;
  • как придумать план рефакторинга;
  • провести его максимально безболезненно;

Код будет на Java, но специфики Android почти нет, поэтому интересно будет инженерам обеих платформ.

...

(Epam SEC, Budapest)

React Native: how to survive

(Mobius Saint-Petersburg 2017)

У вас уже есть клиент в Flick в React Native, но вы сомневаетесь, справитесь ли вы с полноценным коммерческим проектом? Или проект у вас уже есть, но что-то мешает на каждом шагу? Вы поняли, как делать UI, но валидация форм ставит вас в тупик? Вы слышали про Redux, но при мысли попробовать трясутся коленки?

Хватит бояться! Мы поговорим о том, почему внешний для компонента стейт это хорошо, зачем нужен context в React Native, кто разрешил в action creators возвращать функции и так далее.

Presentation.

Material Design in practice

(Mobius Saint-Petersburg 2016)

A lot of applications are awfully designed. Their developers are ashamed and unhappy as their users are. Why do they worry? They let users uninstall applications, they let business fail, they let other developers change their job for a better one. It’s time to stop that. Using Material Design we are able to save ourselves by creating a beautiful, responsive and live application. We are going to talk about Material Design and the way you implement it, getting our hands dirty with a lot of code. We are considering

  • General approach
  • Activity transitions
  • Natural motions are done with animators
  • Ripples and shadows

Mobile Threats: En garre!

(Mobius Saint-Petersburg 2015)

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

  • как мобильные зловреды крадут ваши деньги с помощью вашего же телефона;
  • на какие грабли наступают разработчики банковских приложений;
  • как избежать этих грабель;
  • как предоставить комплексную защиту банковского приложения, максимально усложнив вирусописателям жизнь;
  • что предлагает Лаборатория Касперского в качестве решения.

Основные пункты доклада:

  • Android — самая небезопасная платформа, хотя iOS и Windows Phone тоже не являются неуязвимыми;
  • 5 аспектов безопасности: аутентичности прошивки, состояния устройства, сетевого окружения, шифрования данных и аутентичности собственного приложения;
  • Способы реализации каждого аспекта;
  • Современные методы определения вредоносного программного обеспечения.