Most Active Speaker

Julien Salvi

Julien Salvi

Lead Android Engineer @ Aircall

Paris, France

Into the Android world for more than 10 years, I experienced California the startup way of life before coming back to France. I am currently Lead Android Engineer at Aircall where we are building the best phone system for modern businesses. Alongside Android, I have a great interest in backend development with Kotlin and AR/VR technology. In 2021, I became an Android GDE to continue my journey to always share and learn with the Android community.
In my spare time, I am a world traveler and a beer lover always looking for the best IPAs!

Awards

Area of Expertise

  • Information & Communications Technology

Topics

  • android
  • Virtual Reality
  • Developing Android Apps
  • Augmented Reality
  • UI/UX Design
  • Video
  • Kotlin
  • Android Development
  • Android Tools
  • 📱 Mobile (Android iOS Firebase Machine Learning ...)
  • DevFest
  • Android

How to Lead? Testimonial of a Lead Android Engineer

In this tech talk, I'll be sharing my experience as a Lead Android Engineer and discussing some of the most important qualities and skills I learned during the past 2 years. I'll explore topics such as effective communication, team motivation, project management, and how to stay sharp with your technical skills.

Inside the Android team at Aircall, our learning and development time is very important. We'll discuss some strategies for personal and professional growth, including continuing education, seeking out mentorship opportunities, and cultivating a growth mindset.

Whether you're a seasoned Lead Android Engineer or just starting out in a leadership role, this talk will provide you with valuable insights and practical advice for becoming a more effective and successful lead in the Android world.

App Clinic

A team of experts will come on stage and review a series of applications proposed by the audience.

You can send your application to app.clinic@androidmakers.fr (PlayStore link or APK)

Our ongoing journey from REST to GraphQL on Android

Here is the story of an ongoing migration... and what a migration! This journey moving from our REST API to the GraphQL one is a long run with much coordination across all tech teams.

This return of experience will focus on how we are dealing with this transition on Android where Retrofit coexists with Apollo, how we synchronized with backend teams to keep our GraphQL schemas up-to-date or how we are dealing with our authentication stack with Apollo Kotlin, or the issues we faced and much more.

Buckle up! Relax! The journey is just starting 🚜

Bring machine learning to Android with ML Kit

What if I tell you that you don't need to be an expert in Artificial Intelligence and Machine Learning to bring some of these great features to your Android application.

In this session, we'll explore what ML Kit has to offer to easily bring machine learning features that are optimized for mobile. In fun and practical code sample, we'll explore the main Vision and Natural Language APIs to potentially unlock new ideas and innovative features in your apps.

Join us as we explore the power of ML Kit and discover how it can help you take your Android app to the next level!

10 years of Android Development: The Retrospective

Working in the Android Development since 2011 when I made my first apps on a Galaxy S with Froyo (2.2) and there was no Fragment, Holo design was beautiful and ActionBarSherlock was the big thing!

Let's see how Android Development has evolved during this 10-years timeframe with the rise of Fragments, Material design, and now Kotlin and Jetpack Compose with fun anecdotes and code samples.

One does not simply: migrating to Android 12 🤯

A not so easy migration to support Android 12! This talk will show you all the subtleties you need to know before migrating your applications to Android 12.

From the Manifest to PendingIntent, through the new restrictions on the Bluetooth/Telephony side or even in terms of security and privacy, Android 12 brings a lot of changes (and some of them a bit hidden 😅). We'll explore how we can achieve the support of this new Android version and see which tools can facilitate the migration. On top of that, we'll have a look at the some of the new APIs that arrived with Android 12.

One of the most laborious migrations since Android 6 and the introduction of runtime permissions 😆 3, 2, 1 let's do it!

Jetpack Compose: UI toolkit for Android and Desktop apps

Jetpack Compose, the new UI toolkit by Google, has been in dev and alpha stage for more than a year and it is now in beta. Throught several live examples, let's see how you can bring high quality UI to your Android application and how functional programming helped achieving such as thing. We will go even further and I'll introduce Jetpack Compose for Desktop application where components from your Android app can be reused to keep the same quality of design design accross the platforms.

AR/VR on Android in 2021

AR/VR have been around for a while in Android now! Since the rise (and fall) of Google Cardboard, a lot of tools have come to help developers build great mobile experiences.
In this session, we'll see how the AR ecosystem is strongly evolving with ARCore, Unity, Google Maps and more. And how VR has slowly disappeared from Android. But VR is not dead yet on mobile!

Exploring Jetpack Compose Canvas 🎨

In this session, we are going to explore the Jetpack Compose Canvas and its capabilities. Let's see the different ways of drawing custom shapes with Jetpack Compose: exploring the Canvas Composable and its APIs, building custom Shape or overriding the canvas of any existing Composable. Then, we'll see how we can animate the shapes we drawn and how you can access the native Android canvas to bring your existing shapes to life with Jetpack Compose.

Android App Bundle: from start to deployment

This publication format has been around for a while now and will be required for the new apps on the Play Store in August 2021.

This session will cover all the steps to migrate your existing project in order to build and release a brand new AAB file to the Play Store. You will see the advantages and drawbacks of App Bundle. How you can easily configure your project, handle testing tracks and update your CI/CD (CircleCI, Bitrise) to deploy your optimized app with fastlane.

Demystifying Locale on Android

At some point, every Android developers will end up using a Locale for the applications they are building. If you are dealing with dates and time zones, currencies or multiple language support, you probably faced some challenges to make everything's working as intended.

In this session, we are going to see what is a Locale and how to use it to handle localization (L10N), how to support multiple languages with Lokalise by example or with the Android 13 APIs. In the end, we'll show what are the common pitfalls and how to deal with them.

Building reliable web services with Kotlin Ktor

Through this session, we are going to cover all the steps you need to know to setup a Kotlin Ktor project to build a reliable web service. We will discover the framework tools and features (Routing, DataConversion, ContentNegotiation...) and see them in action to develop some endpoints from the API frontside to the database.

To do so, we'll unveil how we can easily setup a Postgres database connection with Exposed, an ORM library for Kotlin, and see how clean architecture can be a good choice to develop your brand new API.

In order to have a strong contract between the newly built web service and your frontend, we'll explore how Kotlin and Swagger can help us achieving this goal.

Material all the things!

Building beautiful, usable products with Material Design might be quite long especially if your app supports old Android versions. Thanks to the Material components library, Google has finally given us the keys to fully and easily implement their design concepts.

Through this talk, we will take a deep dive into this library to see what it brings on the table (theming, motion, transition, shapes, typography…) and how to implement Material components with some live action samples.

No Play Services? No worries!

A lot of our applications depends on the technical bricks provided by the Play Services such as Google Maps, the push notifications by Firebase or even the Play Store for deploying our apps all around the world.

What if you are building apps for a device that does not implement the Play Services. With this talk you will have a glimpse of the tools you can use to build your Android applications without the Play Services such as OpenStreetMap, OpenPush or alternative ways to deploy an APK.

Go full stack: Kotlin for your mobile app and your backend

Kotlin is a reliable, fun and efficient programming language for developing your Android application so why not going full stack with some server side development with Kotlin and, in the end, share some part of the code with your web or mobile apps.

Through this talk you'll see how to build and deploy our own server side application using Micronaut, Ktor or Spark as base frameworks, with its pros and cons, for your backend service which will communicate with an Android app.

Sharing code is also pretty nice for avoiding a lot of rewrites or duplicate codes. So let's take a look at Kotlin Multiplatform with Ktor to build a shared module for the web and Android.

Please Draw Me a Sheep... in AR

Augmented Reality (AR) is booming on mobile with ARCore / ARKit and new tools are emerging for building awesome experiences.

Like The Little Prince you will learn the foundations of ARCore and Sceneform for actually drawing a sheep in AR using basic forms and tools, and its rendering pipeline.

Through this talk, you will have an overview of what these libraries can offer from dealing with simple 3D shapes to advanced 3D assets or bringing Android UI components in AR. In the end, we will go further and see how to bring some AR fun with newly introduced features and Unity.

Game Development with Unity from an Android Point of View

Developing mobile games with Unity has become more and more popular these years, and Unity developers often need to tackle OS specific challenges.

Through this talk you will discover how to work with Unity as an Android Developer. You will see how to build Unity plugins using the JNI and Java/Kotlin, which is the most efficient way to link Unity with the Android framework.

Every Unity project can be exported as an Android Studio project with a Gradle support. You'll also see how you can integrate Unity inside a native Android Java/Kotlin application, or how to get a full control of the build process so you can benefit from the best of both worlds.

Playing Videos on Android? ExoPlayer2 at your service!

Playing videos might be easy at first but this can get very tricky when you have to support multiple video/audio formats or offline medias. But no worries ExoPlayer2 is there for you!

This session will cover the basics of the ExoPlayer such as how to play a video thanks to the library and its core features. We'll go through its architecture, how to set it up and what video format ExoPlayer supports from classic MP4 to adaptive streams like HLS or DASH with protected content. A large overview of its capabilities will be done through this talk.

Then we will have a look at some interesting extensions and features such as the download manager or the ffmpeg extension for more audio formats support, building playlists or even managing you own DataSource for playing content on SMB servers.

Android Makers by droidcon 2024 Sessionize Event Upcoming

April 2024 Montrouge, France

DevFest Miami 2023 Sessionize Event

December 2023 Miami, Florida, United States

DevFest Stockholm 2023 Sessionize Event

December 2023 Stockholm, Sweden

droidcon London 2023 Sessionize Event

October 2023 London, United Kingdom

droidcon Italy 2023 Sessionize Event

October 2023 Turin, Italy

droidcon Lisbon 2023 Sessionize Event

September 2023 Lisbon, Portugal

DroidKaigi 2023 Sessionize Event

September 2023 Tokyo, Japan

droidcon Berlin 2023 Sessionize Event

July 2023 Berlin, Germany

BreizhCamp 2023 Sessionize Event

June 2023 Rennes, France

AndroidMakers by droidcon 2023 Sessionize Event

April 2023 Montrouge, France

DevFest Pisa 2023 Sessionize Event

April 2023 Pisa, Italy

Developers Conference 2022 - Mauritius Sessionize Event

November 2022 Port Louis, Mauritius

droidcon Egypt 2022 Sessionize Event

October 2022 Cairo, Egypt

droidcon Italy 2022 Sessionize Event

October 2022 Turin, Italy

droidcon NYC 2022 Sessionize Event

September 2022 New York City, New York, United States

droidcon San Francisco 2022 Sessionize Event

June 2022 San Francisco, California, United States

Kotlin Dev Day Amsterdam Sessionize Event

May 2022 Amsterdam, The Netherlands

droidcon London 2021 Sessionize Event

October 2021 London, United Kingdom

droidcon Berlin 2021 Sessionize Event

October 2021 Berlin, Germany

droidcon Nigeria 2021 Sessionize Event

August 2021

Android Worldwide April 2021 Sessionize Event

April 2021

Mobile Apps Week Guinea Sessionize Event

February 2021

DeveloperWeek 2021 Sessionize Event

February 2021 Oakland, California, United States

droidcon APAC 2020 Sessionize Event

December 2020

droidcon Italy Sessionize Event

November 2020 Turin, Italy

DevFest Egypt 2020 Sessionize Event

November 2020 Cairo, Egypt

GDG DevFest UK & Ireland 2020 Sessionize Event

October 2020 London, United Kingdom

DevFest South Africa 2020 Sessionize Event

October 2020

droidcon EMEA 2020 Sessionize Event

October 2020 Nusa Dua, Indonesia

Android Makers Paris 2020 Sessionize Event

April 2020 Paris, France

DevFest Pisa 2020 Sessionize Event

April 2020 Pisa, Italy

droidcon SF 2019 Sessionize Event

November 2019 San Francisco, California, United States

droidcon Greece Sessionize Event

September 2019 Irákleion, Greece

droidconKE Sessionize Event

August 2019 Nairobi, Kenya

Droidcon London 2018

Building VR Apps On Android

How to build VR applications for Android starting with a basic Open GL ES prototype using the GVR library and moving towards a more complex one with Unity.

October 2018 London, United Kingdom

Android Makers 2017

** Talk in French**

ExoPlayer, player multimédia pour vos applications et la réalité virtuelle

Cette présentation commencera avec une introduction à ExoPlayer qui en fait un remplaçant naturel de MediaPlayer. Les fonctionnalités de la v1 à v2 seront exposées avec les pour et les contre, le différents formats supportés par la player, ses différentes extensions... On vous montrera comment migrer votre code MediaPlayer vers ExoPlayer en quelques lignes de code. On finira par la capacité d'ExoPlayer à être utilisé dans le domaine de la réalité virtuelle sur Android pour créer des players pour Cardboard / Daydream ou GearVR et comment l'utiliser à l'aide d'un plugin sur Unity.

April 2017 Paris, France

Julien Salvi

Lead Android Engineer @ Aircall

Paris, France