Geoffrey Métais's Avatar

Geoffrey Métais

@geoffreymetais.bsky.social

Curieux, geek, ingénieur. Senior Engineering manager Android chez Deezer

167 Followers  |  656 Following  |  106 Posts  |  Joined: 10.10.2023  |  1.9862

Latest posts by geoffreymetais.bsky.social on Bluesky

Preview
The journey from (not)REST to GraphQL at scale - The Deezer experience A six-year journey at Deezer: from a tangle of legacy APIs to a unified GraphQL Gateway. A story of cross-team collaboration, Node.js performance tuning, and a few well-deserved slow claps from DevOps. - Download as a PDF or view online for free

Wanna replay the Deezer talk in your head? Here are the slides: www.slideshare.net/slideshow/th...

23.10.2025 12:53 — 👍 6    🔁 4    💬 0    📌 0
Martin Bonnin opening the meetup yesterday with a quick recap of the GraphQLConf 2025.

Martin Bonnin opening the meetup yesterday with a quick recap of the GraphQLConf 2025.

Loic Doubinine presenting his talk "GraphQL chez Deezer : retour d’expérience et défis d’intégration".

Loic Doubinine presenting his talk "GraphQL chez Deezer : retour d’expérience et défis d’intégration".

Benjamin Rabier during his talk "GraphQL as the API layer for MCP".

Benjamin Rabier during his talk "GraphQL as the API layer for MCP".

Benjamin Coenen explaining how to unlock performance with response caching.

Benjamin Coenen explaining how to unlock performance with response caching.

Last night's meetup at our HQ was all about #GraphQL!
Big thanks to @graphql.org and @mbonnin.net for bringing the party to us 🎂, to the speakers (@ztec.fr, Benjamin Rabier & Benjamin Coenen) for the knowledge sharing and the entertainment 🌟, and to all attendees for the questions and exchanges 🙌

23.10.2025 10:22 — 👍 3    🔁 4    💬 1    📌 1
Post image

In a highly modularized codebase, typing full Gradle task names can be tedious. Gradle supports task name abbreviation: just type the shortest unique prefix. If ambiguous, Gradle suggests candidates.

⚠️ Use locally for speed, but keep codebase references explicit for readability!

14.10.2025 13:32 — 👍 5    🔁 3    💬 2    📌 0
Video thumbnail

I'm excited to announce something I've been building, an open source atproto client heron.tunji.dev!

Its currently available in beta on Google Play for Android devices. Please DM @heron.tunji.dev if you'd like early access.

It will be released to all Android users in the next few weeks!

29.09.2025 16:34 — 👍 95    🔁 21    💬 10    📌 5

Do you think it's more efficient than Flutter or React Native?
(Considering the app scope is suitable for those frameworks)

13.09.2025 20:23 — 👍 0    🔁 0    💬 1    📌 0

It's a Thread.sleep() study. That explains all this Java boilerplate.

03.09.2025 21:44 — 👍 0    🔁 0    💬 0    📌 0

!! What happened to you? :)

03.09.2025 21:16 — 👍 0    🔁 0    💬 1    📌 0
Preview
Caupain : comment vous aussi, vous pouvez créer un outil open source Caupain est un outil CLI pour garder vos version catalogs à jour. Venez rencontrer l'équipe qui l'a créé !

‪📅 A few months ago, we introduced Caupain, a simple open-source tool to check for dependency updates in a @gradle.com project.
Come meet the team who created it at the next @bordeauxkt.techhub.social.ap.brid.gy meetup in our Bordeaux office on September 11th!

ℹ️ 🎟️ www.eventbrite.fr/e/billets-ca...

26.08.2025 15:52 — 👍 4    🔁 2    💬 1    📌 1

Poke @liutikas.net , typical Gradle brainfuck.
How would a junior dev be supposed to manage that?

21.08.2025 14:05 — 👍 0    🔁 0    💬 1    📌 0

Arch Components arrived in 2017 too.
They drastically changed the SDK paradigm regarding development, and greatly helped to shift toward reactive programming.

IMHO they changed Android dev as much as Kotlin+Compose.

20.08.2025 20:48 — 👍 1    🔁 0    💬 0    📌 0

Skills every software developer should ideally have:

✅ be a good communicator
✅ be a good project manager
✅ understand business aspect of what they're creating
✅ be humble

I'd argue that these are much more critical than being a so called "rockstar" developer!

13.08.2025 11:56 — 👍 15    🔁 1    💬 2    📌 0

#Cancer et #acétamipride, clarifions les choses ! ⤵️

Il est FAUX d'affirmer aujourd'hui, scientifiquement parlant, que cet insecticide est cancérogène pour l'homme (dans les conditions d'utilisation habituelles dans l'environnement) et a fortiori qu'il provoque des cancers.
1/5

09.08.2025 17:04 — 👍 79    🔁 24    💬 14    📌 7

Probably, I'm not even sure!

It would be more visible and more easily reachable on d.android.com directly IMHO.

03.08.2025 20:05 — 👍 0    🔁 0    💬 0    📌 0

Developer guides*, of course.

Like a mini blog post for every common use case/ feature.

03.08.2025 20:00 — 👍 0    🔁 0    💬 0    📌 0
Preview
Android Mobile App Developer Tools – Android Developers Discover the latest app development tools, platform updates, training, and documentation for developers across every Android device.

My first guess would be "developer guided", for various use cases.

I love dev guides for code in Android documentation, it always greatly helped me.

And, the Gradle doc is not really accessible.

For every use case, the answer is "I should write a blog post for xxx".
Let's do it on d.android.com!

03.08.2025 19:59 — 👍 1    🔁 0    💬 2    📌 0

Is next week OK?

I'm on holidays right now.

03.08.2025 08:13 — 👍 1    🔁 0    💬 1    📌 0

Totally agree on this 👍

02.08.2025 21:11 — 👍 0    🔁 0    💬 0    📌 0
Preview
From the androiddev community on Reddit: Gradle 9.0 released Explore this post and more from the androiddev community

Look at Gradle 9 reception on reddit:
www.reddit.com/r/androiddev...

02.08.2025 21:10 — 👍 0    🔁 0    💬 1    📌 0

Average devs already struggle to develop correct (regarding architecture and performance) code, imposing an additional time consuming build system maintenance is very detrimental imho.

02.08.2025 21:06 — 👍 0    🔁 0    💬 2    📌 0

Of course they add neat features but that's not my point.

They bring breaking changes too often, and too complex APIs also.

How many Android devs know what configuration cache is?
(I'm not even asking how many will handle it correctly).

02.08.2025 21:04 — 👍 1    🔁 0    💬 2    📌 0

Slow pace doesn't mean no peace at all.

Slower pace = less friction, and hopefully less unnecessary API changes

02.08.2025 15:12 — 👍 0    🔁 0    💬 1    📌 0

It doesn't match the amount of time wasted on clueless buildsystem migrations, by a magnitude.

02.08.2025 15:03 — 👍 1    🔁 0    💬 1    📌 0

Why? Slower pace means less Gradle upgrades and more effective work!

02.08.2025 07:51 — 👍 0    🔁 0    💬 1    📌 0

Bonne chance Florian 🤞

29.07.2025 14:58 — 👍 3    🔁 0    💬 0    📌 0

Provides*

27.07.2025 13:06 — 👍 1    🔁 0    💬 0    📌 0

I'm happy with Fortuneo.

BoursoBank is great also, but Fortuneo provided virtual debit cards for online payments.

27.07.2025 13:04 — 👍 3    🔁 0    💬 1    📌 0

En même temps, le logique de Bluesky c'est plutôt de bloquer les trolls.

22.07.2025 05:20 — 👍 1    🔁 0    💬 1    📌 0

Il n'y a pas que les pilotes concernés.

18.07.2025 10:46 — 👍 0    🔁 0    💬 0    📌 0

Forgot the 'NotNull' indeed!

OK I was expecting the compiler to be confused by nullability

16.07.2025 21:51 — 👍 0    🔁 0    💬 0    📌 0

There is one nullable String, and the second is not.
It would have made it a List<Any> right?

16.07.2025 19:37 — 👍 0    🔁 0    💬 1    📌 0