Egor Andreevich

@egorand.dev

Barcelona, hiking, travelling, rock shows, movies, books, work-life balance. Developer at JetBrains (Kotlin Build Tools), Square Open Source contributor. Opinions my own.

Something big might happen to the Kotlin Multiplatform Ecosystem 👀 We were never too happy about how Kotlin publishes and resolves KMP libraries. It takes up significantly more space than it has to, produces a ton of artifacts and Maven modules, and is just... complex!

Something that I really enjoy about working at JetBrains is dogfooding everything all the time: IDEA, its plugins, the Kotlin Gradle Plugin, Kotlin itself. So cool to file bugs and see them picked up, triaged and fixed!

KotlinConf'26 started today in Munich, and there’s a lot to announce. Kotlin is easier than ever to get started with, and it now powers some of the most-used apps in the world – both on the backend and mobile. 🧵 Here are the highlights from the opening keynote.

Bild

Metro 1.1.0 and 1.0.1 are out now! This is largely a performance release. They are identical except 1.1.0 drops Kotlin 2.2.0 - Improved compiler performance - Lots of tracing improvements - SwitchingProvider now generates tableswitch bytecode - Kotlin 2.4.20 support github.com/ZacSweers/metro/re..

Release 1.0.1 · ZacSweers/metro

New [FIR] Add a diagnostic warning that @Module.subcomponents is ignored by Metro (when Dagger interop is enabled). [FIR] Add a diagnostic error for annotating @AssistedInject types with @Contribu...

github.com

Prime Minister Pedro Sánchez and I are deepening our cooperation in energy, AI, and digital sovereignty — and we have a goal to double two-way trade between Canada and Spain. Thank you for the jersey, and see you at the World Cup! 🇨🇦 🇪🇸

Metro reaches 1.0! It's the proudest work of my career and I strongly feel this is how dependency injection in Kotlin should be. Thank you to everyone that's contributed and helped this project get to where it's at. Metro wouldn't be where it is without you. www.zacsweers.dev/metro-is-sta...

🚇 Metro is Stable

Metro 1.0.0 is out now and stable. This means that its runtime APIs (runtime, MetroX artifacts, Gradle plugin, etc.) are now API-stable unless annotated with an experimental annotation. This is an ex...

zacsweers.dev

I know there's a lot of people that worked on this behind the scenes but on top of Ralf and Tom, I also wanna give a huge shout out to Joel Wilcox and Jacob Applin for a ton of contributions, pairing sessions over tuple, and starting work with me on Metro as far back as January 2025. Hire them!

Ralf@ralf-wondratschek.com · 4mo ago

We're wrapping up our migration to Metro internally for Square Android. I summarized some of our challenges and steps we took in a blog post. If you use Dagger 2 for a Kotlin project, then you should migrate to Metro sooner rather than later. engineering.block.xyz/blog/metro-m...

We're wrapping up our migration to Metro internally for Square Android. I summarized some of our challenges and steps we took in a blog post. If you use Dagger 2 for a Kotlin project, then you should migrate to Metro sooner rather than later. engineering.block.xyz/blog/metro-m...

Metro Migration at Square Android

How Square Android migrated its monorepo from Dagger 2 and Anvil to Metro over nine months and saved thousands of hours of build time.

engineering.block.xyz

Metro 0.13.0 adds top-level contribution providers, Circuit code gen, and a new @DefaultBinding annotation. This also removes most deprecated APIs as Metro prepares to go stable (!!). If you have runtime API feedback, now is the time! github.com/ZacSweers/me...

Release 0.13.0 · ZacSweers/metro

New Circuit codegen Metro now includes experimental built-in support for Circuit, a Compose-first architecture for building kotlin apps. See the docs for more details. In the long term, this will e...

github.com

What happens to Square / Block Android OSS projects post layoffs? Let's start with some context OSS at Square is mostly a happy accident. Jack hired Bob, who's job was attracking world class engineers, and he did that through talks & OSS.