Sasha Denisov
EPAM, Chief Software Engineer, Flutter and Dart GDE
Berlin, Germany
Actions
Sasha is an experienced software developer with a rich background, in IT for more than 20 years. He worked with different stacks in backend, frontend and mobile fields, but since 2018 his main interest is Flutter. Sasha also has deep expertise in Firebase and Generative AI area, enhancing his capabilities to create robust, intelligent, and scalable applications. Sasha is a Chief Software Engineer and Head of Flutter Discipline in EPAM. Also, he is Flutter, Dart and Firebase GDE and Co-Organizer of Flutter Berlin community
Area of Expertise
Topics
Flutter Workshop: AI battle in your Flutter app
The AI era has already arrived; it's high time to learn how to integrate it into your applications. In this workshop, we'll learn how to connect Gemini AI to your cross-platform Flutter application using the AI Studio API and Vertex AI API, and even try to run AI models on your device locally. Then, we'll try to connect app to ChatGPT API and compare the capabilities. As a result, we will write an application in which AIs will interact without human assistance and see what comes of it.
Firebase GenKit Step by Step
Firebase GenKit empowers developers to seamlessly integrate generative AI capabilities into their apps, transforming user experiences and optimizing workflows. With support for leading AI models like Claude, ChatGPT, Gemini, Gemma and more, GenKit provides the flexibility to choose the best model for your needs, enabling dynamic content generation, intelligent chatbots, personalized recommendations, and workflow automation.
Let's Fire the Flutter for TV Platforms
Get ready to explore TV app development using Flutter. While Flutter officially supports various platforms, TV platforms like Android TV and Apple TV have been overlooked. But fear not! In this talk, I'll show you how to bring your Flutter apps to the big screen.
But that is not all! I'll show how to connect Firebase backend to manage data storage, authentication, and real-time database features, ensuring a seamless and scalable backend solution.
Additionally, we will discuss the utilization of Google's Vertex AI SDK and GenKit to harness the capabilities of Gemini and Gemma for advanced AI and machine learning functionalities within our applications
All the secrets of Vertex AI in your Firebase powered app and beyond
In this talk, I'm going to explain all of opportunities and capabilities of the integration of various AI models, such as Gemini, Gemma, and more, within your Firebase-powered applications. We'll explore the ease of incorporating these models using Firebase's serverless backend, leveraging both the Firebase Vertex AI SDK and Firebase Genkit through Cloud Functions or Cloud Run. Additionally, we will discuss the process of fine-tuning models to cater to your specific needs. Join me to uncover all the secrets of Vertex AI and elevate your app development with advanced AI capabilities.
GenAI fireside chat in your Mobile/Web app
In this talk, I'm going to explore the new world of Gemini technology. First, I'll introduce you to what Gemini is all about, highlighting its cool new features and the amazing possibilities it offers. I'll explain why Gemini is different from what we've seen before and how it can help make your apps better than ever.
Then, we'll move on to the practical stuff. We all know AI is a big deal nowadays, so we'll show you how to get Gemini AI working with your Mobile or Web apps. We're going to use some tools like AI Studio API and Vertex AI API, and we'll even try running AI models right on your device. After that, we'll see how Gemini AI can work together with ChatGPT API, comparing what each can do.
To wrap it up, we'll build an app where these AIs talk to each other near fireside with glass of wine, without us having to do anything.
By the end of this talk, you'll see a cool example of what happens when AIs get to work together, giving you a peek into the future of app development.
Focus Management for the best UX in Flutter Web, Desktop and TV apps
User interaction with a Flutter application can vary, for example, in the case of smartphones or tablets, it primarily involves gestures, and everything is quite simple. But when it comes to the web and desktop, the mouse and keyboard come into play. In the case of TV platforms, we're left with only a remote control. And the only thing a user can control is the focus. Let's delve into what focus is, what capabilities Flutter offers for managing it, and how to create a cool and beautiful UX by controlling focus alone.
Serverless backend with Firebase Cloud Functions and beyond
In this talk, I will describe how to build an event-driven serverless backend using Firebase services and Cloud Functions and show examples, of course. Did you know, for example, that last year a new version of Cloud Functions, v2.0, was released, which now operates fundamentally differently, opening up many new opportunities? Or that a cloud function can be written not only in JS and TS but also in Python or Java, and that you can create your own event that will trigger the function? Or that you can connect any Firebase service, or any Cloud API, for example, Genkti, or an external API, such as ChatGPT? That eventually, you can create your own function in a language not natively supported out of the box, like Dart or Rust. Let's figure it out together, how it works!
Mobile Farming for Perfection
This talk explores the integration of mobile device farms in both the development and testing phases of mobile applications. Mobile test farms, such as Perfeсto, Firebase Test Lab, and Mobitru, are not only essential for ensuring wide device coverage and identifying compatibility issues but also serve as powerful tools in the development process, enabling developers to detect and address potential issues early on. The talk will emphasize how these technologies contribute to improving app quality and performance from inception to deployment.
The session will provide a practical comparison of leading mobile test farms and discuss how AI enhances these platforms by automating tasks, analyzing results, and predicting user behaviors. Attendees will learn about the dual role of these innovative tools in streamlining development and testing workflows, ensuring that the end product is robust, user-friendly, and performs well across a multitude of devices and operating systems. By integrating these advanced technologies, developers and testers alike can elevate the efficiency and effectiveness of their mobile app strategies, and reduce the costs of mistakes.
Building the Ideal Flutter Multi-Platform Development Team
Flutter is a powerful multi-platform framework that can be used to create beautiful, native-feeling applications for mobile, web, and desktop. However, developing multi-platform applications can be challenging, especially when supporting a large number of platforms.
The ideal Flutter multi-platform development team should have a mix of skills and experience, including software development for different platforms and integrations.
In my talk, I will tell you what you need to pay attention to when forming the ideal team for a large number of platforms, how to simplify management, and even how to use AI to speed up the development and testing process
Embedding Flutter into Your Native iOS, Android, and Web apps
In this talk, we'll explore embedding Flutter into native apps, (even combining Jetpack Compose and SwiftUI). We'll cover setting up the development environment, integrating Flutter widgets into native code, and communication between Flutter and native components. We'll also discuss best practices for maximizing the benefits of this approach. Furthermore, we'll highlight Flutter's new feature of embedding into native web applications, unlocking opportunities to utilize Flutter's power and flexibility on existing web apps.
Flutter and AppleTV. Story of one challenge
Flutter officially supports six platforms, but, unfortunately, TV platforms are not yet on the list. While Flutter applications can indeed be developed for TV platforms, and launching your app on Android TV can be relatively easy, the situation with Apple TV is far more complex. In this talk, I will describe step-by-step how we solved this problem and finally launched a Flutter application on AppleTV
Let's shake the Flutter tree
The more platforms a Flutter application supports, the more code a project can have that is needed only for one platform and not needed for others. How to make sure that unnecessary code does not get into the final platform-specific build? And how to check that it really did not get?
In Flutter, there is a Tree-shaking mechanism, which is designed exactly for these purposes. Many Flutter developers have heard about it, but not everyone really understands what it is and how it actually works. Let's try to figure it out.
Flutter. Many faces of Platform Integrations
If you can't achieve something in Flutter, you can do it at the platform level and then use it in the cross-platform part, you only need to remember Java or Kotlin for Android and Swift or Objective-C for iOS, And don't forget about Flutter for the Web with JavaScript or TypeScript. It turns out that there are a whole bunch of integration options with the native part, and in this talk, I'm going to analyze all of them with examples.
Building Flutter app for everyone
Accessibility is the design of applications so as to be usable by people with disabilities. If you want to make an app as useful for many people as possible including people with visual, mobility, learning, or hearing disabilities, you need to implement accessibility elements. In this talk, you’ll learn which accessibility features Flutter support, and how to implement the accessibility of your Flutter applications to make them usable for everyone.
Workshop: Flutter app Journey from Mobile to Web and Desktop
Flutter is a great multi-platform framework, that provides an opportunity to create not only mobile but also web and desktop apps, but web and desktop applications have different UI/UX in comparison with Mobile, at least because they need keyboard and mouse control. It is completely different than working with a touchscreen.
In this workshop, I'm going to show, how to remake a mobile app into a web/desktop one and figure out how to properly manage focus and what a hover effect is.
Flutter + Firebase. Explosive combination
Flutter is a great multi-platform framework for getting up and running on multiple platforms quickly.
But when creating a modern application, in addition to the Frontend, you also need a Backend to store data and media, send notifications and etc. Additionally, you need to grow your user base and improve your app experience. Integration with Firebase gives the opportunity to develop these features easily.
This session is focused on the integration of Firebase products like Firebase Cloud Firestore, Authentication, Analytics, Remote Config, and Firebase Cloud Messaging with your Flutter apps.
How to build a beautiful app that runs natively on iOS, Android and Web, all from a single codebase. Besides, how to marry Flutter's latest multi-platform reactive UI elements and other capabilities with powerful Firebase SDK functionality.
Together with the audience, we will take a look at the development of an application that allows you to mark your favorite speakers and show their ratings.
Workshop: Flutter for Android TV and Apple TV
Get ready to explore TV app development using Flutter. While Flutter officially supports various platforms, TV platforms like Android TV and Apple TV have been overlooked. But fear not! In this workshop, we'll show you how to bring your Flutter apps to the big screen.
In this workshop, we will go through all the steps of porting your mobile app to the big screen, discuss all the nuances of TV apps, such as controlling the app with a remote control, and finally launch the app on a TV platform, not only on Android TV, but also on Apple TV
Flutter. New Approach to Web Development.
In the modern world, it is very rare for businesses to only require a website or only a mobile application. Typically, it is necessary to create both a website and a mobile application together. In such a situation, there is always a choice of which technologies to use. There are generally three options: developing separate web and native mobile applications, with the mobile development team handling the native app; building a web application for mobile devices, such as a PWA (Progressive Web App); or using a cross-platform solution that allows reusing the code between platforms.
Recently, an interesting alternative to traditional approaches emerged—a new framework by Google called Flutter. With Flutter, you can develop mobile, desktop, and web applications. However, the approach used in Flutter for Web differs significantly from traditional web application development. So, can we consider Flutter applications for the web as web applications?
Dart BFF - Best Friend of Flutter developer
The talk introduces the concept of Backend for Frontend (BFF) and its advantages for Flutter developers, by defining BFF and explaining its benefits, and options of implementation using Dart. This is especially relevant for Flutter developers, as it allows for a more integrated experience using a familiar language across both front-end and back-end development.
Key to this presentation is practical examples showing how Dart can be effectively utilized to build a BFF for Flutter applications. These examples aim to demonstrate real-world applications and best practices, helping Flutter developers understand how to leverage Dart for creating robust, scalable, and maintainable BFF architectures.
Compose Flutter Modules in your Android app
Explore the process of embedding Flutter into existing Android applications in this live coding session. Learn how to seamlessly integrate Flutter with your native code, rendering multiple Flutter modules on a single screen and incorporating them into a Jetpack Compose hierarchy. Discover the techniques and best practices for successfully integrating Flutter into your Android app. Join us for this informative session and level up your app development skills.
Optimization of Mobile Development Strategy for Maximum Business Impact"
In this presentation, we'll explore practical strategies for optimizing mobile development to achieve exceptional results. We'll delve into the nuances of technology selection, comparing options like native iOS-Android, hybrid frameworks, Flutter, React Native, Kotlin Multiplatform and so on. Additionally, we'll discuss structuring mobile delivery processes, effective team organization, role assignments, process refinement, and leveraging appropriate tools. Furthermore, we'll examine the potential expansion of mobile solutions to web, TV, and desktop platforms, along with insights on smooth platform migration for enhanced optimization. Join us as we uncover actionable insights to elevate your mobile development endeavors to new heights.
Unlocking Mobile Wallets from Flutter application
As the digital wallet space evolves, Apple Wallet and Google Wallet have become more than just tools for mobile payments; they're key holders of loyalty and membership cards, among other functionalities. However, these wallets operate on different platforms—iOS and Android—each with its unique capabilities and APIs, presenting a complex challenge for developers aiming to create seamless, cross-platform experiences with Flutter, Google's UI toolkit for building natively compiled applications.
This talk will explore the intricacies of integrating Google and Apple Wallets into Flutter applications, focusing on understanding the similarities and differences between the two platforms, including their supported functionalities and specific APIs. We'll dive into the practicalities of crafting a cross-platform solution that not only bridges these differences but also meets high standards of security and user convenience.
Attendees will gain insights into:
-The similarities and differences between Google and Apple Wallets, including their capabilities and the types of cards and passes they support.
-The specific APIs provided by Apple and Google for wallet integration and how these can be accessed within a Flutter environment.
-Strategies for overcoming the challenges of creating a cross-platform solution that works efficiently with both wallets.
-Best practices for ensuring that the integration meets the stringent security requirements of mobile wallet platforms while providing a convenient experience for users.
Building Apps with GenAI capabilities without Internet Connection and Privacy Concerns
In this talk, we'll dive into the exciting world of Gemma, a groundbreaking family of open AI models by Google. We'll explore how you can leverage Gemma's capabilities to build innovative Mobile and Web projects. One of these capabilities is running on your mobile device or browser without an internet connection.
Key takeaway:
- Understand the core functionalities and architectures of Gemma, lightweight, state-of-the-art models
- Discover the advantages of using Gemma, including its open-source nature, versatility across tasks, and on-device/browser capabilities
- Explore different approaches to fine-tuning of Gemma model, that let you achieve better results on a wide number of tasks. Once a model has been fine-tuned, you won't need to provide as many examples in the prompt.
- Discover practical methods for integrating Gemma into your Mobile and Web applications, unlocking new possibilities for user interaction and functionality
- Explore the different types of Gemma (CodeGemma, PaliGemma, etc.), the purposes for which they can be used, how Gemma differs from Gemini, and explore the distinct characteristics of each model, including size, performance, and optimal use cases
- Discover Gemma alternatives which you can use on-device and in browser
PS: Additionally I'll introduce the Flutter plugin that I created and currently maintain for the integration of Gemma into Flutter apps
Workshop: Bring Your Fine-Tuned AI Model On-Device with Flutter
In this hands-on workshop, we’ll explore the groundbreaking family of open AI models by Google: Gemma. You’ll learn how to leverage the power of Gemma to build innovative Mobile and Web projects that run directly on-device or in the browser, without requiring an internet connection.
Together we are fine-tune the Gemma model with your data and integrate it into your Flutter app for running locally without internet connection
What you'll gain from this workshop:
- A deep understanding of Gemma's core functionalities and lightweight, state-of-the-art architectures.
- Insights into the benefits of using Gemma, including its open-source nature, versatility across tasks, and ability to run on-device or in the browser.
- Practical experience with fine-tuning Gemma models to achieve better results across a wide variety of tasks. Once fine-tuned, models require fewer examples in the prompt to perform well.
- Step-by-step guidance on how to integrate Gemma into your Mobile and Web applications, unlocking new possibilities for user interaction and app functionality.
-An overview of different Gemma models (CodeGemma, PaliGemma, etc.), their use cases, differences from Gemini, and tips on selecting the right model for your specific project needs.
Social Developers Conference 2024 Sessionize Event
Open Source Day 2024 Sessionize Event
DevFest Venezia 2023 Sessionize Event
Devfest Pescara 2023 Sessionize Event
droidcon Uganda 2023 Sessionize Event
droidcon Kenya 2023 Sessionize Event
DevFest Hamburg 2023 Sessionize Event
DevFest Armenia 2023 - 10th Anniversary Sessionize Event
Devfest Georgia 2023 Sessionize Event
droidcon Lisbon 2023 Sessionize Event
Flutter Firebase Festival Sessionize Event
Flutter Wrocław Meetup Sessionize Event
AndroidMakers by droidcon 2023 Sessionize Event
DevFest Pisa 2023 Sessionize Event
Flutter Heroes 2023 Sessionize Event
DevFest 2022 | Gothenburg, Sweden Sessionize Event
droidcon Egypt 2022 Sessionize Event
droidcon Berlin 2021 Sessionize Event
Sasha Denisov
EPAM, Chief Software Engineer, Flutter and Dart GDE
Berlin, Germany
Actions
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top