
Meta Tech Podcast
91 episodes — Page 2 of 2

Ep 3838: From Sales to Tech - How Kevin Made The Switch
EKevin has had an unusual career path that led him to an engineering role at Meta. He first joined the company in a sales role before he moved into a more product-focused position. Working closely with engineers, Kevin decides to pursue a career in software development himself. Instead of dropping out of his job to get formal education in the space, he takes online courses and within less than a year smashes the internal interview process. To learn what his thinking behind the change was and which resources were particularly helpful, tune in to episode 38! Got feedback? Send it to us on Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out https://www.metacareers.com/. Links: Coursera Datastructures and Algorithms classes: https://www.coursera.org/courses?query=data%20structures%20and%20algorithms Udemy: https://www.udemy.com/ Timestamps: Intro 0:06 Introduction Kevin 1:22 Learning to Code 3:38 Learning Resources 12:50 Deciding When to Stop 16:42 Interview Prep 21:57 The Big Day 24:45 Dealing With Imposter Syndrome 29:53 Interviewing is Broken 38:41 Outro 40:52

Ep 3737: Faster and Smaller Messenger for iOS With Amy
New year, new us! Inside Facebook Mobile is now the Meta Tech Podcast but Pascal will continue to bring you stories about mobile development and many other topics. For this episode's interview, we're tackling one of the few remaining big apps we never had a guest from: Messenger. Amy worked on Messenger for 3 years before recently moving on to Reality Apps to work on AR. Amy discusses with Pascal how Messenger for iOS was rewritten as part of Project Lightspeed to make it smaller and faster. They used a range of low-level hacks while providing high-level abstractions that product teams could safely and productively build on top of. Amy was also the first one to prototype with Catalyst and Meta and has some important tips for you on how not to accidentally wipe your Mac while doing so. Got feedback? Send it to us on Twitter (https://twitter.com/metatechpod) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out https://facebookcareers.com. Links: Project LightSpeed: https://engineering.fb.com/2020/03/02/data-infrastructure/messenger/ Mac Catalyst: https://developer.apple.com/mac-catalyst/ Buck: https://buck.build/ Remodel: https://github.com/facebook/remodel - Remodel is a tool that helps iOS and OS X developers avoid repetitive code by generating Objective-C models that support coding, value comparison, and immutability. Timestamps: Intro 0:06 Introduction Amy 2:25 Messenger Culture 3:37 Building with Buck 5:38 Catalyst 6:27 Project Lightspeed 17:13 Remodel 23:55 Image Asset Optimisations 28:50 Theming 36:44 What's Next for Amy? 38:21 Outro 39:21 Bloopers 39:54

Ep 3636: Developer Experience with Chandrika
Keeping engineers effective is not a small task when you work at Meta's scale. Many of the tools you take for granted simply break or become unbearably slow. Chandrika's team looks after developer experience at Meta and takes a holistic approach that spans the editing experience (IDEs, editors), builds, continuous integration and even custom calendar tooling. Her team ensures that as new platforms, for instance AR/VR, and languages like Swift and Kotlin emerge, our infrastructure is ready. Got feedback? Send it to us on Twitter (https://twitter.com/insidefbmobile), Instagram (https://instagram.com/insidefbmobile) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out https://facebookcareers.com. Links: The Diff Podcast: https://thediffpodcast.com/docs/episode-10/ Meta Connect Keynote: https://fb.watch/9YydoWHMEE/ Jest: https://jestjs.io/ Timestamps: Intro 0:06 News: The Diff is back 1:25 Chandrika before Meta 1:50 Meta vs other Megacorps 9:57 DevEx at Meta 12:05 Different Dev Infra Teams 23:18 Unexpected Challenges 26:45 Kotlin & Swift 30:34 Measuring Developer Experience 35:53 App Health & Perf 37:46 Cross-App Dev 40:12 Outro 42:17

Ep 3535: Facebook App Health with Jon
Did you know that you can "rage shake" your phone to create a bug report in most Meta apps? If you did, have you ever wondered what happened after you hit submit? In this episode's interview, Pascal talks to Jon about App Health and how his team ensures that despite thousands of engineers shipping code every day, the apps remain reliable and fast. Got feedback? Send us an email to [email protected], tweet us at @insidefbmobile (https://twitter.com/insidefbmobile), DM us on Instagram (https://instagram.com/insidefbmobile) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out https://facebookcareers.com. Links: Flipper Litho Error Boundaries Meet the Rustaceans: Digant Kasundra ELI5: Metro - JavaScript Bundler for React Native IFBM 7: Performance and lnstrumentation with Ariane gCPU Paper: A Real-time Framework for Detecting Efficiency Regressions in a Globally Distributed Codebase Timestamps: Intro 0:06 Jon Intro 1:30 App Health Mission 2:58 Rage Shake & Fly Trap 5:27 Life of a Regression 8:49 Experiments and App Health 13:47 Tracking Down Perf Regressions 16:13 Soft Errors 18:54 Favourite Tools 23:35 Backend Regressions 25:31 Rolling out a Fix 28:00 gCPU 29:45 Wrapping Up 32:12 Outro 33:20 Bloopers 34:04

Ep 3434: Open Source Developer Advocacy with Cami
Cami is a developer advocate for Open Source and Facebook Reality Labs (FRL), our AR/VR organisation. In this episode's interview Cami and our host Pascal discuss how developer advocacy is approached at Facebook, how to build developer empathy, and tackle the eternal question of why it's worth investing in Open Source. If you've ever wanted to dip your toes into VR development, stick around for the end when Cami shares some of her favourite resources. Got feedback? Send it to us on Twitter (https://twitter.com/insidefbmobile), Instagram (https://instagram.com/insidefbmobile) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out https://facebookcareers.com. Links: Hand Tracking Pirates Demo: https://developer.oculus.com/blog/new-oculus-open-source-library-and-pirates-demo-app-qa-with-developer-luca-mefisto-on-hand-tracking-innovation/ Hand Physics Lab: https://www.oculus.com/experiences/app/3392175350802835/ Build Your First VR App with Unity: https://developer.oculus.com/documentation/unity/unity-tutorial/ Unity VR: https://learn.unity.com/course/oculus-vr Cami on Twitter: https://twitter.com/cwillycs?s=09 ValemVR on YouTube: https://www.youtube.com/c/ValemVR Oculus on YouTube: https://www.youtube.com/user/oculusvr Facebook Open Source on YouTube: https://www.youtube.com/c/FacebookOpenSource Traveling While Black: https://www.oculus.com/experiences/go/1994117610669719/ Timestamps: Intro 0:06 Cami Intro 1:21 What is developer advocacy? 4:08 Developer empathy 9:45 Why invest in Open Source? 14:23 End of life for OSS projects 19:57 AR/VR abstractions 22:42 Becoming an expert learner 32:21 VR dev learning resources 37:56 Most underrated FB OSS project 43:06 Outro 46:25

Ep 3333: Switching Teams at FB with Sash
EFacebook has a unique recruitment model. Instead of being assigned to one team, you first end up in Bootcamp, where you learn how the company functions and our tools and frameworks work. Then you get to look for teams, work with them and decide which one to join. Because the team selection is decoupled from hiring, switching teams is easy. In this episode, we're talking to Sash who has been taking advantage of internal mobility by switching teams every year almost on the dot. Over the course of his career at Facebook, he has worked on iOS animations, Android hardware and most recently the Wrist-based human-computer interaction interface that is being developed by FRL Labs. Links: Inside Facebook Reality Labs: Wrist-based interaction for the next computing platform: https://tech.fb.com/inside-facebook-reality-labs-wrist-based-interaction-for-the-next-computing-platform/ Boz To The Future: https://www.facebook.com/boztothefuturepod Keyframes Animation Library: https://github.com/facebookarchive/Keyframes IFBM 30: Linting for Design Quality with Elle: https://pca.st/episode/1e22130d-88a5-4ea9-a968-692cac232a78 IFBM 31: Intentional Architecture with Yuan and Dustin: https://pca.st/episode/2199bc68-2287-41b7-aa45-ab52595e1c62 Richie's Plank Experience: https://www.oculus.com/experiences/quest/1642239225880682/ Timestamps: Intro 0:06 Joining FB 1:52 News Feed Delight 4:20 Switch to Hardware 13:25 Hackamonth 19:27 AOSP Engineering 22:07 Hardware Prototyping at FRL 24:50 Developing for VR and Favourite Experiences 30:35 Outro 36:52 Bloopers 37:44

Ep 3232: Measuring UI Quality with Sara, Aaron and Patrik
For the third and final episode focusing on UI quality, Pascal is joined by Sara, Patrik and Aaron to discuss how design reviews happen at Facebook. Instead of looking at static screenshots alongside the code, reviews now include a dynamic representation of the view hierarchy that not only allows for inspection of properties but also directly highlights violations of Facebook's design standards for accessibility and usability. Learn how all of this grew out of a tool suite originally built for the web and much more in episode 32 of Inside Facebook Mobile. Got feedback? Send it to us on Twitter (https://twitter.com/insidefbmobile), Instagram (https://instagram.com/insidefbmobile) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out http://fb.com/careers. Links: Podcast: Boz to the Future - https://tech.fb.com/introducing-boz-to-the-future-a-new-podcast-series-from-facebook-reality-labs/ Facebook Open Source on YouTube - https://www.youtube.com/channel/UCCQY962PmHabTjaHv2wJzfQ IFBM 29: Design Systems with Sriram - https://pca.st/u8r4u6h6 IFBM 30: Linting for Design Quality with Elle - https://pca.st/q336vyxe Sapienz: https://engineering.fb.com/2018/05/02/developer-tools/sapienz-intelligent-automated-software-testing-at-scale/ Jest - https://jestjs.io/ Timestamps: Intro 0:05 News: Boz To The Future 0:43 News: FBOSS ELI5 on YouTube 1:26 Interview Teaser 1:50 Interview Greeting 2:48 Sara Intro 3:10 Aaron Intro 4:15 Patrik Intro 4:43 UI Quality Team Mission 5:39 Shift Left Initiative 6:40 History of Quality Linting 8:08 Linting on Mobile 9:29 UIQR 15:17 Designer Diff Review 18:17 E2E Testing with Jest 25:55 Sapienz 27:12 UI Quality Scoring 29:17 Outro 41:16 Blooper 41:57

Ep 3131: Intentional Architecture with Yuan and Dustin
"What's Facebook's mobile architecture?" is a question we hear often. Instead of top-down MVC, MVW or MVVM, Facebook delegates the responsibility of choosing the right architectural patterns down to the engineers working on products. This episode's guests Yuan and Dustin pick up where Fabio left us in episode 28 and explain how the Product Foundation org builds abstractions that give engineers autonomy when they want and constraints for features to work cross-app when they need it. Links: IFBM 14 - Facebook iOS UI Infrastructure with Adam: https://pca.st/0qu2 IFBM 28: Modularising iOS Apps with Fabio: https://pca.st/episode/be165e38-74f3-449f-889a-eab14316c6ed Codemod: https://github.com/facebookarchive/codemod Fastmod: https://github.com/facebookincubator/fastmod ComponentKit: https://componentkit.org/ Litho: https://fblitho.com/ React Native: https://reactnative.dev/ Timestamps: Intro 0:06 Guest introductions 2:19 App Architecture 6:49 Codemodding 31:18 Shared Architectural Concepts 33:06 Building for Newsfeed 34:59 Scrolling Lists 41:41 Outro 55:43 Bloopers 56:36

Ep 3030: Linting for Design Quality with Elle
EWe are continuing our focus on UI Quality from last episode and are diving deep into design linters. Elle and her team work on Facebook-internal Figma plugins that provide guidance on aspects like colours and usability of user interfaces. In the interview, Elle and Pascal discuss how the plugin leverages Facebook's web architecture to roll out changes quickly and how a shared REST API allows for rules to be used in multiple contexts. Got feedback? Send it to us on Twitter (https://twitter.com/insidefbmobile), Instagram (https://instagram.com/insidefbmobile) and don't forget to follow our host @passy (https://twitter.com/passy). Fancy working with us? Check out http://fb.com/careers. Links Docusaurus 2.0 Beta - https://docusaurus.io/blog/2021/05/12/announcing-docusaurus-two-beta F8 - https://developers.facebook.com/f8/ Rapid release at massive scale - https://engineering.fb.com/2017/08/31/web/rapid-release-at-massive-scale/ Figma API - https://www.figma.com/developers/api GraphQL - https://graphql.org/ Relay - https://relay.dev/ Timestamps Intro 0:06 News: Docusaurus 2 News: F8 1:59 Elle introduction 2:13 Shift Left Initiative 3:32 UI Layout Linters 6:03 Figma Plugins 14:20 Outro 27:26 Bloopers 28:23

Ep 2929: Design Systems with Sriram
To improve consistency across our family of apps, engineers have built a large number of reusable components. But how do designers communicate to engineers which component to use? How do you keep the look consistent across our various frameworks? How do you make sure that documentation stays up-to-date? The way we always do: by building tools. Sriram from the Design Systems Engineering team talks about how their org solves the design-engineering handoff problems and improves the overall UI quality of Facebook apps. They work on a suite of tools that spans from providing access to our components directly in design tools like Figma to metrics that tell developers about potential quality issues in their surfaces. Tune in to learn directly from Sriram how we attempt to solve design at scale. Links: F8 Refresh: https://www.f8.com/ Flipper: https://fbflipper.com/ Facebook Open Source on YouTube: https://www.youtube.com/c/FacebookOpenSource Storybook: https://storybook.js.org/ InVision Design System Manager: https://www.invisionapp.com/design-system-manager Figma: https://www.figma.com/ Timestamps: Intro 0:06 Interview 2:39 Outro 30:17

Ep 2828: Modularising iOS Apps with Fabio
EFabio joins Pascal to go deep into a listener question: How does Facebook modularise iOS applications? After discussing the state of the iOS build systems and package managers out in the wild, they turn to Buck, Facebook's monorepo build system, and how it helps developers to define clear module boundaries. One of the problems when a new module is only one new folder away are dependency graphs which look like a big ball of spaghetti. Thankfully, Buck offers some ways of taming sprawling graphs before they get out of control. Topics: Litho: https://fblitho.com/ Litho RenderCore: https://github.com/facebook/litho/tree/master/litho-rendercore Flipper: https://fbflipper.com/ ComponentKit: https://componentkit.org/ Pragma Conference 2016 - Fabio Milano - 'I have a framework idea' - Repeat less, share more: https://www.youtube.com/watch?v=ml6NSv5wDRU Buck: https://buck.build/ Spiritfarer: https://www.imdb.com/title/tt12924108/ Ori and the Will of the Wisps: https://www.imdb.com/title/tt8329350/

Ep 2727: Using Data for Better Android Notifications with Garima
Garima joins Rachel (@rachelnabors) and Pascal (@passy) to discuss the challenges of building custom layouts for notifications in a fragmented Android ecosystem. They discuss how sampled data helps to ensure that our billions of daily active people get the best possible experience and users on older phones aren't left behind. If you ever wondered what the "useful" and "not useful" buttons on Facebook notifications actually do and how you clicking on them could help not just you, but all people on Facebook have a better experience, listen in! Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Timestamps Intro 0:06 Garima early days at FB 1:16 Notification Infrastructure 5:21 Outro 46:12 Bloopers 46:46

Ep 2626: Kotlin Redux with Thomas
Rachel (@rachelnabors) and Pascal (@passy) are back for another interview about Android infrastructure at FB. Thomas joins them to share how the internal Kotlin adoption has progressed since the last time we checked in with Sergey on the topic. In the deeply technical discussion, the three discuss how ABI generation speeds up builds, which Kotlin language features still need to be used with caution and what a plan to 100% Kotlin for Android might look like. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics React 17: https://reactjs.org/blog/2020/10/20/react-v17.html React Native docs update: https://reactnative.dev/blog/2020/07/23/docs-update ktfmt: https://github.com/facebookincubator/ktfmt Timestamps Intro 0:00 News 1:00 Interview 7:28 Outro 44:44 Bloopers 52:29

Ep 2525: Instagram Reels with Kevin and Martin
For another socially distant interview, Pascal and Rachel are joined by Martin and Kevin who work on Instagram Reels, which had its global launch just a few weeks ago. They lift the veil on country tests, what makes stitching videos seamlessly together so hard on Android and iOS and share their thoughts on the short-form video space in general. You will also learn why doing the simple thing first really pays off when working on complex projects. Before the interview, Pascal walks you through the recent events in the Facebook Open Source space. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Hermes: https://hermesengine.dev/ Facebook Open Source on YouTube: https://www.youtube.com/channel/UCCQY962PmHabTjaHv2wJzfQ Docusaurus v2: https://v2.docusaurus.io/ Timestamps Intro 0:05 News 1:16 Interview 3:32 Outro 43:02 Bloopers 43:45

Ep 2424: COVID-19 Hub with Chang, Jarman and Zaven
Inside Facebook Mobile is back for a special interview with the team behind the Facebook COVID-19 Info Centre. Chang, Jarman and Zaven share their experiences of building and shipping a global product like this over the course of just a few weeks. We discuss how the early architectural decisions enabled the seamless collaboration with tens of teams that were all working remotely. Before we get to the interview, Mihaela joins Pascal for a quick check-in on Litho, the native UI framework for Android, and Flipper, an extensible dev-tools platform for mobile. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics COVID-19 Hub: https://www.facebook.com/covid-19 Litho: https://fblitho.com/ Flipper: https://fbflipper.com/ Timestamps Intro 0:06 News: Litho 1:09 News: Flipper 4:31 Interview 7:27 Post-Interview 35:36 Outro 37:50 Bloopers 38:14

Ep 2323: Organising the Women of React Remote Conf
With large-scale public events seeming rather distant right now, the concept of virtual conferences is an exciting way to stay in touch with people and learn new things. Pascal is joined by the organising team of the Women of React conference, where women take the virtual stage, but everyone is welcome to attend and participate. Cassidy, Sara, Kevin, Jenn and our very own Rachel share how they came up with the idea and what you need to kick off your own online conference. The conference will happen on Saturday, April 25, 2020 and you can register for free at https://womenofreact.com/. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Women of React: https://womenofreact.com/ event.Handler() pod: https://eventhandlerpod.com/ Board Game Arena: https://boardgamearena.com/ Timestamps 0:00 - Intro 1:54 - Interview 27:28 - Outro

Update: No Interview Episode for March
bonusUnfortunately due to the current global pandemic, we don't have an interview for you, but stay tuned and subscribe to the feed for some remote interviews in the near future. Do follow @passy, @rachelnabors, and @insidefbmobile for updates.

Ep 2222: Scaling WhatsApp with Silky
EFor the first time, Rachel and Pascal are joined by a guest from WhatsApp. Silky walks the two through a staggering array of optimisations WhatsApp deploy to make sure that text, media and documents arrive quickly, reliably and safely on the other end. They discuss going from five to six nines of reliability for Facebook's distributed blob store, POPs, FNAs, and fighting abuse on an end-to-end encrypted platform. As ever, before the interview, Pascal and Rachel discuss some news from the Open Source world, including React Native documentation updates, an exciting contracting opportunity on the Docusaurus project and the latest Facebook Open Source statistics. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics React Native Docs: https://reactnative.dev/docs/getting-started Docusaurus Contract: https://profacebook.applytojob.com/apply/hZPoVr1Eoj/Front-End-Engineer-V Open source year 2019 in review: https://engineering.fb.com/open-source/open-source-2019/ Evolution of WhatsApp within Facebook's data centers: https://atscaleconference.com/videos/evolution-of-whatsapp-within-facebooks-data-centers/ WhatsApp on how it's fighting bulk messaging and fake accounts: https://venturebeat.com/2019/02/06/whatsapp-on-how-its-fighting-bulk-messaging-and-fake-accounts/ How WhatsApp Reduced Spam for Over 1 Billion People: https://developers.facebook.com/videos/f8-2017/how-whatsapp-reduced-spam-for-over-1-billion-people/ Timestamps Intro 0:05 News: React Native Docs 1:02 News: Docusaurus Contractor 1:52 News: Open Source in Review 2019 3:10 Interview with Silky 5:05 Sharding Graph Databases 6:10 Getting into CompSci 7:45 Scaling an Exabyte Blob Store 9:00 Benefits of Shared Infrastructure 13:46 Going from 5 to 6 Nines 17:19 POPs 18:09 ISP-Level Caches 19:19 Making WhatsApp New-Year-Safe 22:13 Fighting Encrypted Abuse at WhatsApp 25:00 Encrypted Media Forwarding 32:45 ML Teams at FB 35:42 Transition to Management (and Back) 37:37 Outro 43:56 Aftershow/Outtakes 48:55 Harley Quinn: Birds Of Prey 50:59

Ep 2121: Kotlin at Facebook with Sergey
Pascal is joined by Rachel in the co-host chair for this first episode of the new decade. The two interview Sergey from the Android UI Frameworks team to discuss the long-awaited rollout of Kotlin within Facebook. Sergey himself is currently working on a new set of APIs for building UI components in Kotlin. With Rachel's background in React and React Native, they explore some of the inspirations and differences between React, React Native and Litho before talking about the design of new Kotlin APIs for Litho. The last part of the conversation focuses on the gradual adoption of Kotlin at Facebook and why this is a big undertaking at a company operating at this scale. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Links Litho: https://fblitho.com/ React Native Docs: https://facebook.github.io/react-native/docs/getting-started Flipper: https://fbflipper.com/ ktfmt: https://github.com/facebookincubator/ktfmt Redex: https://github.com/facebook/redex Redex IFBM Episode: https://pca.st/J3cn Timestamps Intro 0:00 React Native Docs Update 0:58 Flipper Sidebar Reorganisation 4:42 Interview with Sergey 8:01 Litho and React-style UI frameworks 14:47 Kotlin API Design 27:53 Kotlin at Facebook 36:30 Redex Code Optimisation 39:25 Introducing New Languages at Facebook 40:32 Facebook Mobile Build Infrastructure 41:19 Litho's Target Audience 43:07 Educating About New Languages 46:29 Code Formatting (ktfmt) 48:45 Current Kotlin Use at Facebook 50:21 Outro 51:41 Bloopers 55:40

Ep 2020: droidcon London 2019, Part II
EFor the last episode of the decade, Pascal is joined by Inside Facebook Mobile royalty Emil, who shares what he has been up to since his last appearance on the podcast and how Facebook Open Source is still part of his day-to-day work. Then we head over to Droidcon UK 2019 again, where Pascal interviews Aziz from the Android Native UI Frameworks team about benchmarking UI components, followed by a chat with Aziz's teammates Andy and Pasquale about effective multi-threading on Android. Unfortunately, the video recordings of the talks are still unavailable, but we will update you if that changes. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). News and Topics fbjni: https://github.com/facebookincubator/fbjni Jest: https://jestjs.io/ Litho: https://fblitho.com/ Flipper: http://fbflipper.com/ Visly: http://visly.app/ Facebook and Microsoft Partnering on Remote Development: https://developers.facebook.com/blog/post/2019/11/19/facebook-microsoft-partnering-remote-development/ The Diff - Talking Libra with Eric Nakagawa: https://thediffpodcast.com/docs/episode-8 Timestamps Intro fbjni 3:43 News: FB and MS work on VS Code 8:47 Skip Language (http://skiplang Interviews 11:55 Interview: Aziz on UI Benchmarking 12:20 Interview: Pasquale and Andy on Threading 21:00 Post-Interview Chat with Emil 32:36 Outro 41:03 Bloopers 41:44

Ep 1919: droidcon London 2019, Part I
Pascal went mobile again and brought the mics to this year's droidcon Android conference in London. He interviewed the record-breaking six speakers Facebook had this year and discussed some topics with them. This episode kicks off with Sergey, who presented a deep-dive into the current state of cross-platform coroutine libraries for Kotlin, comparing Reaktive and kotlinx.coroutines Flow in their usability, performance and memory appetite. The second interview is with Alexander from the Fresco team who talks about the evolution of the open source image loading and memory management library and teases at what's up next for the widely used project. In the last interview we hear from Lisa (https://twitter.com/lisawrayz), a software engineer on the Messenger Lite team. She joins Pascal to chat about the design principles that went into designing a messenger application for emerging markets. Sadly, the video recordings of the talks are currently unavailable, but we will update you here and on the podcast as soon as that changes. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). News and Topics fbjni soft launch: https://github.com/facebookincubator/fbjni PyTorch for Android: https://pytorch.org/mobile/android/ Fresco: https://frescolib.org/ Reaktive: https://github.com/badoo/Reaktive Kotlinx.coroutines: https://github.com/Kotlin/kotlinx.coroutines Messenger Lite: https://play.google.com/store/apps/details?id=com.facebook.mlite Timestamps Intro 0:05 News: fbjni 1:43 News: PyTorch for Android 2:34 Interviews 3:05 Correction 3:43 Sergey on Kotlin Coroutines 4:26 Alexander on Fresco 11:42 Lisa on Messenger Lite 26:58 Outro 35:50 Nope, no bloopers 36:33

Ep 1818: Outside Facebook Mobile at the London Mobile Forum 2019
EOnce a year, Facebook invites developers from various companies to a cosy place somewhere in East London to talk for a day about scaling challenges on mobile. This year, Mihaela and Pascal join the fun and talk to a bunch of the attendees, which are for the first time not (all) Facebook employees. Tune in to learn how Deliveroo are moving from Java to Kotlin, the BBC is using their app to find a more inclusive audience, how Asos moved away from never-ending feature branches and much more. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Discussed mvfst-rl: https://github.com/facebookresearch/mvfst-rl The Diff: https://thediffpodcast.com/ Tech & Society with Mark Zuckerberg: https://podcasts.apple.com/us/podcast/tech-society-with-mark-zuckerberg/id1460731098 Timestamps Intro 0:00 mvfst-rl 0:40 The Diff 1:20 Tech & Society 1:53 London Mobile Forum 2:19 Sophie Interview - The Guardian 4:48 Andrew Interview - BBC 7:17 Ana Interview - Deliveroo 10:03 Kateryna Interview - Magic Lab 13:20 Stefano Interview - Asos 19:33 Adiba Interview - Moody Month 23:29 Pasquale Interview - Facebook/Litho 29:43 Maria Interview - Deliveroo 34:24 Abdul Interview - Deliveroo 39:36 Outro 44:57 Bloopers 47:28

Ep 1717: Hermes JS Engine Development with Marc
Every time we get to talk about an open-source project on our podcast, we couldn't be happier. This episode we have Marc to talk about Hermes, an open-source JavaScript engine, optimised for running React Native apps on Android. You can listen to Marc explain why it was necessary to build a JavaScript engine to support the needs of a particular framework and get a glimpse of the architecture and the design decisions behind it. Tune in now for episode 17! Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Discussed Hermes: https://hermesengine.dev/ React Native: https://facebook.github.io/react-native/docs/hermes Timestamps Intro 00:05 Interview: Marc 00:57 Hermes Overview 02:25 Design Tradeoffs 07:01 Garbage Collector 11:56 Feature Omissions 15:36 Hermes Technical Design 17:35 Developer Experience 19:23 What's Next? 20:15 Using Hermes Without RN 21:32 Outro 22:28 Bloopers 00:25:50

Ep 1616: React Native Developer Advocacy and Documentation Engineering with Rachel
Join us for this episode where Pascal and Fabio interview one of Facebook's new joiners: Rachel is a developer advocate on the React Core team in London. React is one of the biggest open source UI frameworks in the world, a reputation kept sustainable especially thanks to the amazing work the React Core team puts into the educational material available to the community. Rachel shares her journey from cartoonist to developer advocacy roles to the present day, where she curates and maintains documentation material built for people rather than just coders. How to find the missing or next chapter of your docs? How to measure success? This and much more in episode 16. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Dev Tools Challenger: http://devtoolschallenger.com/ React: https://reactjs.org React Native: https://facebook.github.io/react-native/ Docusaurus: https://docusaurus.io ComponentKit: https://componentkit.org Flipper: https://fbflipper.com Web Animations API: https://developer.mozilla.org/en-US/docs/Web/API/Web_Animations_API MDN: https://developer.mozilla.org/en-US/ Rachel's Web Animation Docs: http://rachelnabors.com/waapi Rachel's book on UI Animation: https://abookapart.com/products/animation-at-work Rachel's courses on CSS Animation and Cartooning: https://courses.rachelnabors.com/ Inclusive speech linter: https://alexjs.com/ Timestamps Intro 00:06 News: React Native Docs Revamp 01:21 News: Hermes 02:27 Intro Rachel (http://devtoolschallenger 3:43 MDN 07:14 100x Programmers 13:22 Measuring Impact 23:20 Third-Party Docs 32:31 Incremental API Design 35:38 Style Guides 39:35 Managing organic growth 43:32 Goodbye 47:37 Outro 48:10 Bloopers 51:19

Ep 1515: Infer Static Analysis for Mobile Apps with Ezgi
Episode 15 features a topic that might sound familiar to you if you've listened to previous editions of Inside Facebook Mobile. It's a project that provides such value to developers that it keeps coming up in discussions with engineers working in many different areas at Facebook. Ezgi has a long-awaited converstion with Mihaela and Pascal about Infer, an open-source static analysis tool with support for Java and C-based languages. Ezgi joined Infer as a natural extension of her PhD in programming languages and type systems. You'll not only hear from her about writing and testing a new analyses for Infer, but also what it's like to balance academic research with having applied industry impact. We're sure you'll stay tuned until the end! Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Infer: https://fbinfer.com/ Getafix: https://code.fb.com/developer-tools/getafix-how-facebook-tools-learn-to-fix-bugs-automatically/ Litho: http://fblitho.com Fresco: https://frescolib.org/ Flipper: https://fbflipper.com/ Lightweight Multi-Language Syntax Transformation with Parser Parser Combinators: https://www.cs.cmu.edu/~rvantond/pdfs/ppc-pldi-2019.pdf Timestamps Intro 00:05 Mailbag: Editors 00:32 Mailbag: Worst part of working here 02:21 News: React Native 0.60 04:32 News: Flipper 0.23 05:18 News: Litho 06:11 News: Fresco 2.0 07:23 Interview: Ezgi 07:47 What is Infer? 09:42 Supporting different languages 11:34 Who can contribute to Infer? 12:57 Build system integration 14:12 Review tool integration 15:32 Infer's compositional analysis 16:51 Measuring success 23:03 What other checks does Infer support? 24:09 Creating new checks 29:56 Performance checks 31:56 Coming up next for Infer 33:22 Ezgi's paper recommendations 36:21 Ocaml 37:46 Outro 41:02 Bloopers 43:25

Ep 1414: Facebook iOS UI Infrastructure with Adam
EEpisode 14 introduces Adam, the first dedicated iOS developer that Mihaela and Pascal have hosted on the podcast. Adam created ComponentKit, an iOS open-source framework inspired by React, and he joins this episode to tell the story of how the framework was built and adopted. Adam shares some insight on API design considerations, how to build frameworks around scalability and correctness and what the current challenges of working on the Facebook iOS apps are. Before you hear all about this, Daniel gives a special bite-sized intro to Spectrum, an open-source image processing library for Android and iOS, so this episode is one that can't be missed! Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics Spectrum: https://libspectrum.io/ ComponentKit: https://componentkit.org/ ReactNative updates: https://facebook.github.io/react-native/blog/2019/06/12/react-native-open-source-update Timestamps Intro 0:00 News: React Native 0:40 News: Spectrum with Daniel 2:10 Interview 8:02 Adam Intro 8:40 Frameworks 10:55 ComponentKit in Newsfeed 13:06 ComponentKit Adoption 14:02 API Regrets 15:05 Size Reduction 16:28 5000 classes 19:14 Correctness as a Feature 21:05 Inspirations From Other Frameworks 23:29 Yoga 26:18 ComponentKit in Open Source 28:47 Handing Off a Project 29:32 Next Challenges 31:47 Rust 36:15 Outro 38:40 Bloopers 41:49

Ep 1313: Android UI Infrastructure with Hilal
Did you watch F8 this year? You've probably seen the new Facebook blue and your app got a sleeker, more modern icon. Hilal is part of the team that made that happen and he joins Mihaela and Pascal on episode 13 to talk about how to scale packaging and distributing UI resources to devices. Hilal also helps fight UI regressions and inconsistencies with the screenshot tests infrastructure he contributes to. Please do send us feedback! You can reach us via email [email protected], Twitter (@insidefbmobile) or Instagram (insidefbmobile). Topics F8 Talks: https://developers.facebook.com/videos/ mvfst: https://github.com/facebookincubator/mvfst The Diff: https://thediffpodcast.com/ idb: https://github.com/facebook/idb Urban Computing Foundation: https://venturebeat.com/2019/05/07/uber-google-ibm-and-others-join-the-urban-computing-foundation-to-create-tools-for-cities-of-tomorrow/ Chris Banes - Becoming a master window fitter: https://www.youtube.com/watch?v=_mGDMVRO3iE Timestamps Intro 00:00 News: F8 talks 00:47 News: mvfst 01:27 News: The Diff 01:52 News: idb 02:10 News: Urban Computing Foundation 06:29 Hilal Intro 07:05 Current projects 08:12 UI Scaling Problems 08:52 APK Size 09:56 Shipping Icons 10:45 New FB Colours 15:00 Screenshot Tests 18:33 Design Library 25:19 Ad: The Diff 30:23 Kotlin at FB 30:53 Notches and Status Bars / Chris Banes Talk 32:06 Supporting Foldables 34:42 Hilal's Team 36:52 Outro 37:16 Theme 39:21 Bloopers 39:29

Ep 1212: Product Management on Workplace with Chiara
Chiara is a Product Manager who supports the Workplace team. She joins Pascal and Mihaela on episode 12 to give some clarity on the role of a Product Manager. With a background in graphic design, she tells us about her journey to becoming a Product Manager and the skills and mindset she practices in this role. If you enjoy the business aspect of a project and you're someone who can coordinate understanding a problem and identifying a path to the solution, being a Product Manager will fit you like a glove. Tune in to hear from Chiara herself! Projects discussed Fresco: https://frescolib.org/ Flipper: https://fbflipper.com/ Aroma: https://ai.facebook.com/blog/aroma-ml-for-code-recommendation/ Workplace: https://workplace.com/ Timestamps Intro 00:00 News: Fresco Anniversary 01:13 News: Litho Sections in Flipper 01:57 News: Aroma 02:25 Guest intro 03:28 Chiara 04:29 What does a PM do? 05:06 Becoming a PM 06:02 How is PMing at FB different? 07:16 PM framework 08:19 When does having a PM make sense? 12:06 Resolving conflicts 13:39 Where do ideas come from? 15:17 Working with/on mobile 16:11 Workplace 18:33 Who uses Workplace? 20:59 Ad: The Diff 23:36 Teams within Workplace 24:06 PM at Workplace vs Facebook 26:07 Favourite features 27:14 Bants 29:20 Outro 30:13 Bloopers 33:14

Ep 1111: Secure Networking on Android with Subodh
ESubodh, a software engineer leading the QUIC team in Menlo Park, joins us for episode 11 and talks with Mihaela and Pascal about Android networking. If you've never given much attention to the network protocols your app is using, listen to Subodh why you should give it a second though. You'll hear about how the Android networking stack has evolved over the years, why zero round-trip time matters on mobile and what it's like to contribute to a network protocol specification (spoiler: it's TLS 1.3). Brush up on your networking knowledge and tune in for this new episode! For feedback, please reach out on Twitter at @insidefbmobile, Instagram at insidefbmobile or drop us an email at [email protected]. Topics discussed - https://www.reactiflux.com/transcripts/react-native-team/ - https://www.reddit.com/r/reactnative/comments/av7vw3/future_ama_the_react_native_team_will_be_hosting/ - https://github.com/react-native-community/discussions-and-proposals/issues/64#issuecomment-446098249 - https://facebook.github.io/react-native/blog/2019/03/01/react-native-open-source-update - https://code.fb.com/developer-tools/mark-harman-harlan-d-mills-award/ Timestamps Intro 00:00 News 00:16 React Native OSS Update 00:25 React AMA 00:54 Relay 3.0 01:25 Sapienz 01:39 The Diff 02:40 Magma 03:22 Interview Prelude 04:03 Subodh Intro 05:02 First Projects 06:02 What got you interested in security? 07:18 Whitehat 08:15 FB Android networking 6 years ago 09:49 HTTPS enforcement 11:09 Evolution of the mobile networking stack 12:08 Certificate Pinning 15:07 Adopting system-level APIs 18:00 WebView security 20:29 TLS 1.3 features 21:32 Encrypted SNI 25:44 What's next after TLS 1.3? 27:46 Header compression flaws 28:34 QUIC 31:19 Standards Contributions (link) 40:07 mvfst 43:00 Low-level API UX 48:50 Katran: https://code.fb.com/open-source/open-sourcing-katran-a-scalable-network-load-balancer/ 52:20 Wrap-up 54:11 Outro 55:19 Bloopers 58:52

Ep 1010: FBLite and Fast Android Apps for Emerging Markets with Tal
For the 10th episode of Inside Facebook Mobile, you can listen to Tal, a Technical Program Manager based in the Tel Aviv Facebook office, who joins Pascal and Mihaela to talk about Facebook Lite. Tal discusses the challenges of building, maintaining and releasing an app that has tight constraints of memory, network and disk usage in sight. You'll learn about what Facebook Lite is, why it's important to make it easy for everyone to be able to access it from their phones and you'll hear interesting insight about how phone constraints change how someone accesses internet services. For feedback, please reach out on Twitter at @insidefbmobile, Instagram at @insidefbmobile or drop us an email at [email protected]. Topic Discussed Spectrum: https://code.fb.com/android/spectrum/ Docusaurus: https://docusaurus.io/ Top Developer Tools: https://stackshare.io/posts/top-developer-tools-2018 PyTorch: https://pytorch.org/ Time Stamps Intro 00:00:00 Open Source News 00:00:21 Tal Intro 00:02:13 Tal's Background 00:03:11 What's a TPM? 00:03:22 What's FBLite? 00:05:46 Why does FBLite matter? 00:07:07 FBLite rendering infrastructure 00:07:50 Challenges besides size 00:09:11 Release cadence 00:11:00 Libraries used in FBLite 00:11:33 Developer relations within FB 00:12:29 International work hours 00:16:36 Feature parity 00:18:47 Usage patterns in emerging markets 00:21:34 Release trains 00:25:00 Flipper plugins 00:27:01 Tel Aviv FB Office 00:27:34 Outro 00:29:44 Bloopers 00:33:54

Ep 99: Android Bytecode Optimisation with Emma
In this episode, Pascal and Mihaela chat with Emma about Redex, an open-source bytecode optimiser for Android apps. Emma talks about the importance and trade-offs of such optimisations and walks us through the basic steps of how Redex works and the different types of detection patterns it uses. If you are interested in trying Redex for yourself or curious to know how it's different than other similar tools, Emma discusses how to adopt Redex in your app and how to write your own detection pattern. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected]. Topics discussed Redex: https://fbredex.com/ Sparta: https://github.com/facebook/redex/tree/master/sparta Proguard: https://www.guardsquare.com/en/products/proguard Facebook Open Source year-in-review: https://code.fb.com/open-source/open-source-2018/ Spectrum: https://github.com/facebookincubator/spectrum Droidcon SF Talk about Spectrum: https://www.youtube.com/watch?v=Lb5H6_vCEok Mozjpeg: https://github.com/mozilla/mozjpeg/ PyTorch: https://pytorch.org/ Github 2018 review: https://octoverse.github.com/projects PyTorch 1.0: https://code.fb.com/ai-research/pytorch-developer-ecosystem-expands-1-0-stable-release/ Time Codes Intro 0:00.000 PyTorch 1.0 0:39.728 FB Open Source Year in Review 1:20.000 Spectrum 2:06.708 Retiring Nuclide 2:51.525 Recent Litho Changes 3:38.753 Recent Flipper Changes 5:09.199 Emma Intro 6:49.595 What's Redex? 12:16.341 Optimization Passes 16:02.753 Tradeoffs 27:38.198 Open Source 31:52.276 Pattern Match Optimizations 33:28.602 Contributing to Redex 36:56.130 Removing Cats and Good Bye 38:06.425 Outro 38:25.360 Bloopers 41:44.451

Ep 88: Android Perf at Instagram with Mona
In this episode, Mihaela and Pascal chat with Mona from Instagram New York. We talk about Mona's journey from working on web in California to scroll performance at Instagram and how performance overall is approached from measuring, tackling regressions and establishing a company-wide performance culture. In addition to this, we go through some of our listener questions about team structure, time and release management and pick this up later in our interview where we discuss differences in our overall approach to engineering and QA between Facebook and Instagram. Topics discussed: deepfloat: https://code.fb.com/ai-research/floating-point-math/ Litho: https://fblitho.com/ Flipper Notifications: https://fbflipper.com/docs/writing-a-plugin.html#notifications Profilo: https://facebookincubator.github.io/profilo/ Time stamps: |0:00 |Intro | |0:31 |DeepFloat | |1:15 |Flipper News | |3:50 |Q: Team structures at FB | |4:56 |Q: Time management in teams | |7:06 |Q: FB Release Management | |7:33 |Q: Our views on the structure | |9:10 |Guest Intro: Mona | |9:58 |Mona's Journey from Product to Infra | |13:32 |Switching teams at FB | |15:01 |Performance at IG | |15:24 |Measuring performance | |17:27 |Dealing with regressions | |19:07 |Evolution of scroll perf tracking at IG | |20:03 |Good/bad perf practises | |21:36 |Frameworks helping with perf | |22:48 |Engineering differences between FB and IG | |24:01 |QA at IG | |27:08 |App size growth | |28:47 |Maintaining a high perf bar | |33:51 |What would you do if it wasn't perf? | |34:56 |Puppies and oat milk | |36:59 |Outro | |38:49 |Bloopers |

Ep 77: Performance and Instrumentation with Ariane
In this episode, Ariane joins for an in-depth conversation about performance logging. With more than 10 years focusing on this problem, Ariane moved from Facebook Seattle to Facebook London and started a team with other engineers that are as passionate about this subject as she is. You'll hear about why instrumenting performance markers is important for a healthy app, what makes a good metric and how to build sustainable logging systems. If you're just getting started with performance logging, tune in to hear Ariane's advice on how to get started. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected]. Projects discussed: - QNNPack: https://code.fb.com/ml-applications/qnnpack/ - StateService: https://code.fb.com/open-source/stateservice/ - Profilo: https://facebookincubator.github.io/profilo/ - Litho: https://fblitho.com/

Ep 66: The Story of Stories with Lillian
Lillian joins Mihaela and Pascal in this episode to talk about Facebook Stories and how it took shape from a new sharing surface developed by three engineers to the mature product it is today. You'll learn about the challenges her team faced while trying to scale Stories from a prototype and the performance implications of introducing new types of content as well as functionality at the top of News Feed. If you've listened to our previous episode featuring Balazs, who's been an engineering manager for some time, you can now hear about this role from the perspective of someone who's just recently become an engineering manager and is now going through the transition from an Android engineer to a manager. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected]. Projects discussed: - React Native: https://facebook.github.io/react-native/ - Log Device: https://logdevice.io/ - Skip: http://skiplang.com/ - Litho: https://fblitho.com/

Ep 55: Engineering Management with Balazs
This episode features Balazs, a manager on the Image Infra team, who joins Mihaela and Pascal to shed some light on what it's like to be an engineering manager at Facebook. Balazs talks about some of the projects he's worked on as an Android engineer after he joined Facebook and shares how and why he transitioned to management, starting this new role in the Fresco team. Balazs is now managing a team that is focused on performance and he shares some insights on the unique challenges his team is solving and how he fits in that as an engineering manager. As usual, the episode starts off with a quick discussion on the latest Facebook Open-Source news and upcoming Android talks. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected]. Projects discussed: - Fizz: https://code.fb.com/networking-traffic/deploying-tls-1-3-at-scale-with-fizz-a-performant-open-source-tls-library/ - XAR: https://code.fb.com/data-infrastructure/xars-a-more-efficient-open-source-system-for-self-contained-executables/ - Fresco: http://frescolib.org/ - Profilio: https://code.fb.com/android/profilo-understanding-app-performance-in-the-wild/ - Redex: https://github.com/facebook/redex Talks: - Droidcon: http://uk.droidcon.com/ - Londroid: https://www.meetup.com/android/

Ep 44: Product Design with Alisa and Stef
In this episode Mihaela joins Pascal for the intro to discuss the latest news in Facebook open source including Litho and Flipper. We then move on to the interview in which Pascal chats with Alisa and Stef who work on AR Studio and AR Engine, two products that allow creatives to build effects for various Facebook apps. Tune in to hear how Alisa and Stef ended up in their current roles, how a feature makes it from inception into a product at Facebook, and how the community feedback is taken into account. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected].

Ep 33: Release Management with Julia
Julia works as a technical program manager in release engineering. This means that she makes sure that all of Facebook's Android apps are released on time, which means once a week for most of them, while making sure that every version improves over the previous one in stability and features. Tune in to learn how this works when dealing with billions of users on thousands of different devices. For feedback, please reach out on Twitter at @insidefbmobile or drop us an email at [email protected].

2.5: Quick take on Sonar with Emil
bonusWe just released Sonar, an extensible mobile app debugger. In this Episode Pascal interviews Emil who started the project 18 months ago about what inspired him to build it and how Sonar is used across Facebook today.

Ep 22: Facebook Home and Instagram Stories with Will
This month Emil and Pascal talked to Will Bailey. Will has a long history at Facebook building tactile experiences and open source libraries. Now Will works at Instagram. Apart from hearing about Will's history at Facebook, we focused on the intersection of design and software engineering, something all of us are very passionate about.

Ep 11: Litho and Sections with Mihaela
In this episode we interview Mihaela who works on the Native UI Frameworks team. We talk about Litho and Sections and how open source at Facebook works. Projects discussed: Litho and Sections: https://fblitho.com/ Infer static analyzer: http://fbinfer.com/ Redex: http://fbredex.com/ Multithreaded rendering on Android with Litho and Infer: https://code.facebook.com/posts/1985913448333055/multithreaded-rendering-on-android-with-litho-and-infer/ Please send feedback to [email protected] or reach out to Pascal and Emil directly.
0: Intro
trailerEmil and Pascal introduce themselves and tell you about what they've planned for their new podcast. Please send feedback to [email protected] or reach out to Pascal and Emil directly.