Abhishek Doshi

Abhishek Doshi

Google Developer Expert for Dart, Flutter, and Firebase, and Developer Relations Engineer at Shorebird

Surat, India

Actions

Abhishek Doshi is a Google Developer Expert (GDE) for Dart, Flutter, and Firebase, and works as a Developer Relations Engineer at Shorebird, where he sits at the intersection of Shorebird's engineering team and the broader Flutter community. He's been building with Flutter since 2018, and spends much of his day helping development teams, from indie developers to enterprise engineering orgs, debug real production issues, adopt better release practices, and get more out of the Flutter framework.

Through his work supporting Flutter apps at scale, Abhishek has seen firsthand which bugs quietly cost teams the most engineering hours, and which are 100% preventable once you understand what's actually happening under the hood. He's passionate about turning that pattern recognition into practical, no-fluff talks that developers can apply the same week they hear them.

Area of Expertise

  • Information & Communications Technology

Topics

  • Flutter
  • Flutter app development services
  • dart
  • Firebase

Flutter Package Version Hell: A Field Guide

Every Flutter team eventually hits it: a plugin that doesn't support the latest Flutter version, a transitive dependency conflict that breaks your build the day before a release, or a package that's quietly gone unmaintained while your app depends on it.

This is a rapid-fire field guide to getting unstuck. We'll walk through a practical decision tree: when to pin a version and move on, when forking a package is actually the right call (and how to do it without creating a maintenance nightmare), when contributing a fix upstream is worth the time, and when it's smarter to walk away from a dependency entirely and rebuild that piece yourself.

No live coding, no deep internals, just the pattern recognition that comes from hitting this problem across dozens of real Flutter codebases, distilled into something you can apply the next time your build breaks at 6pm before a release.

Ship a Flutter Patch in Under 10 Minutes: Hands-On with Code Push

App store review queues mean a critical bug fix can sit in a queue for 24-48 hours (or longer) while your users hit the same crash over and over. This hands-on workshop takes you through the full loop of shipping instant updates to a live Flutter app without a store review: from setting up code push on an existing app, to pushing a real patch, to understanding exactly what can and can't be patched (Dart code and Flutter assets, yes; native iOS assets like App Icons or Info.plist, no).

Bring a laptop with Flutter installed. By the end of the session, every attendee will have patched a real running app and watched the update land live.

BuildContext Across Async Gaps: The Bug Every Flutter Team Ships At Least Once

Every Flutter team ships this bug at least once: you await something inside a widget, the widget gets disposed while you're waiting, and then you use BuildContext on the other side of that gap. Best case, you get a red screen in debug mode. Worst case, it slips past testing and shows up as a crash in production weeks later.

This talk breaks down why this happens at a fundamental level, the variants that catch even experienced developers off guard (nested async calls, Future.wait, callbacks inside then()), and why Dart's own lint rules only catch the obvious cases. We'll walk through real patterns to prevent it for good: proper mounted checks, understanding exactly when a State object is disposed relative to your async call, and how state management solutions like Riverpod and Bloc sidestep the problem structurally rather than just papering over it with a check.

By the end, you won't just know how to fix this bug, you'll understand why it exists in the first place, which is the difference between patching symptoms and actually preventing it across your codebase.

Streamlining App Communication with Event Bus in Flutter

In this talk, we'll dive into the concept of event bus in Flutter and explore how it can be used to streamline communication between different parts of your app. We'll start by discussing the basics of event bus and how it can be used to publish and subscribe to events within your app.

Next, we'll dive into practical examples of how event bus can be used in Flutter, including passing data between screens, managing state changes, and triggering actions based on user interactions. We'll explore how event bus can be used to create a more modular and flexible app architecture, reducing code complexity and increasing code reusability.

Key takeaways from this talk include:

- Understanding the basics of event bus in Flutter
Knowing when and how to use event bus to streamline communication within your app
- Learning how to pass data between screens using event bus
- Understanding how event bus can be used to manage state changes and trigger actions
- Understanding how event bus can improve the overall quality and maintainability of your codebase.
- Whether you're a beginner or an experienced Flutter developer, this talk will provide you with valuable insights and practical tips to help you improve the communication and modularity of your Flutter app using event bus.

Power of BuildContext in Flutter

BuildContext is at the heart of Flutter’s widget tree, yet its true potential often goes untapped. In this talk, we’ll find out what BuildContext really represents, how it connects widgets to their position in the tree, and the powerful capabilities it unlocks.

You’ll learn how to access ancestors and inherited widgets, navigate safely, avoid common pitfalls, and optimize performance. We’ll also explore advanced tricks — including using context to measure a widget’s dimensions and dynamically size another widget — giving you the tools to write cleaner, more adaptable Flutter UIs.

Mastering Deep Links in Flutter: A Custom Approach with app_links

Deep linking is essential for premium app experiences, guiding users straight to the content they want—whether launching through a notification, an email link, or a QR code. With the deprecation of Firebase Dynamic Links, Flutter developers must adopt new, reliable approaches for deep link handling that work seamlessly across Android and iOS.

This talk explores deep linking in Flutter by building a custom solution from the ground up—without relying on any third-party deep link packages. Instead, we'll leverage platform capabilities directly and use only the lightweight app_links package for robust, reactive link handling. You'll learn:
- How deep links work natively on Android and iOS, including correct project configuration and URL scheme setup.
- Best practices for secure and reliable deep link management using App Links (Android) and Universal Links (iOS).
- How to handle incoming URLs, route users to specific in-app screens, and safely extract parameters.
- Code walkthrough of a streamlined example with app-level link listeners using the app_links package, sharing tips for error handling and smooth context transitions.
- No-go areas, pitfalls to avoid, and why limiting dependencies results in a lighter, easier-to-maintain codebase.

Leave equipped to migrate away from deprecated solutions, implement deep linking in your Flutter apps with confidence, and create a superlative onboarding journey for your users—no redundant dependencies, just clean, secure code.

Whether you’re retrofitting an existing app or architecting a new one, this session will make deep links in Flutter click for you.​

Firebase Studio - Your ultimate product development toolkit

AI is booming all around the world and Google recently launched their one of the most interesting product - Firebase Studio. Firebase Studio helps you to develop entire app/website connected with Firebase with just prompts. Let's explore how you can simply make a portfolio website within 2 mins with just prompts and Firebase Studio!

Flutter Abu Dhabi & Dubai Meetup #9 User group Sessionize Event

February 2025 Abu Dhabi, United Arab Emirates

Google I/O Extended 2024 Jalandhar Sessionize Event

August 2024 Jalandhar, India

Devfest Goa 2022 Sessionize Event

December 2022 Panjim, India

Flutter Vikings 2022 Sessionize Event

August 2022 Oslo, Norway

Great North DevFest Sessionize Event

November 2021

Google IO Extended Universal Sessionize Event

July 2021

Abhishek Doshi

Google Developer Expert for Dart, Flutter, and Firebase, and Developer Relations Engineer at Shorebird

Surat, India

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