Episoder

  • Do types actually make you more productive or is it just more typing for you to do on the keyboard? That's just one of the questions we managed to answer at least on a small scale with Diff Authoring Time or DAT, here at Meta. Want to know how we leverage metrics to run experiments on productivity in our internal codebase? Tune in to episode 69.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Timestamps

    Intro 0:06

    Henri Intro 1:45

    Ian Intro 3:13

    Moritz Re-Intro 3:28

    DAT Recap 3:48

    What is Hack? 4:20

    Inner and outer loop 14:13

    Experimenting witth language features 17:47

    Code sharing frameworks at Meta 27:43

    Measuring framework productivity 29:01

    Will we see more experiments? 34:23

    Time savings from code sharing 37:28

    Outro 39:03

    Blooper 39:52

  • How do you build your own mixed reality headset from sketch to scale? That's exactly what Alfred Jones, VP of hardware engineering at Meta Reality Labs, discussed with host Pascal. From choosing the right display technology, battery, thermal budget and of course hitting the right price point. How he manages to not fall victim to choice paralysis and so much more in episode 68.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod) or Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host Pascal (https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Caddy: https://engineering.fb.com/2024/07/18/virtual-reality/caddy-cad-mixed-reality-mr-meta/

    Timestamps

    Intro 0:06

    Alfred Introduction 1:40

    Who do you work with? 3:23

    Decision making frameworks 5:20

    Is MR the final destination? 7:19

    What makes good passthrough such a challenge? 10:18

    How to build your own MR headset 13:51

    Hardware design constraints 19:00

    Prototype phases 22:34

    Durability testing 26:23

    Dogfooding at Meta 28:55

    Magic wand for technical limitations 31:56

    Outro 34:26

  • Mangler du episoder?

    Klikk her for å oppdatere manuelt.

  • At Meta, engineers are our biggest asset which is why we have an entire org tasked with making them as productive as possible. But how do you know if your projects for improving developer experience are actually successful? For any other product, you would run an A/B test but that requires metrics and how do you measure developer productivity? Sarita and Moritz have been working on exactly that with Diff Authoring Time which measures how long it took to submit a change to our codebase. Host Pascal talks to them about the way this is implemented, the challenges and abilities this unlocks.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    You can follow our guest Moritz on X (https://x.com/Inventitech) or check out his website on inventitech.com.

    Links

    Meta Connect 2024: https://www.meta.com/en-gb/connect/

    Timestamps

    Episode intro 0:05

    Sarita Intro 2:33

    Moritz Intro 3:44

    DevInfra as an Engineer 4:25

    DevInfra as a Data Scientist 5:12

    Why DevEx Metrics? 6:04

    Average Diff Authoring Time at Meta 9:55

    Events for calculating DAT 10:55

    Edge cases 13:15

    DAT for Performance Evaluation? 20:29

    Analyses on DAT data 22:29

    Onboarding to DAT 23:23

    Stat-sig data 25:06

    Validating the metric 26:34

    Versioning metrics 28:09

    Detecting and handling biases 29:19

    Diff coverage 30:30

    Do we need DevX metrics in an AI software engineering world? 31:23

    Measuring the impact of AI tools 32:23

    What's next for DAT? 33:40

    Outtakes 36:22

  • Bento is Meta’s internal distribution of Jupyter Notebooks, an open-source web-based computing platform. Host Pascal is joined by Steve who worked with his team on building many features on top of Jupyter, including scheduled notebooks, sharing with colleagues and running notebooks without a remote server component by leveraging Webassembly in the browser.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Scheduling Jupyter Notebooks at Meta: https://engineering.fb.com/2023/08/29/security/scheduling-jupyter-notebooks-meta/

    Serverless Jupyter Notebooks at Meta: https://engineering.fb.com/2024/06/10/data-infrastructure/serverless-jupyter-notebooks-bento-meta/

    Jupyter Notebooks: https://jupyter.org/

    Timestamps

    Intro 0:06

    Who is Steve? 1:49

    What are Jupyter and Bento? 2:48

    Who is Bento for? 3:40

    Internal-only Bento features 4:42

    Scheduled notebooks 11:39

    Integrating with existing batch jobs 17:10

    The case for serverless notebooks 20:59

    Enter wasm 24:29

    Upgrade paths from serverless to server 26:29

    Bringing more Python libraries to the browser 30:21

    Adding magick(s) 31:52

    DataFrame magic and AI 36:41

    What's next? 38:29

    Outro 43:17

  • We don’t know when but at some point in the future we will face what researchers call a "Quantum Apocalypse". This is when quantum computers will be able to break many of our existing encryption algorithms. To keep Meta’a users safe even from attacks that don’t even exist today, Sheran and Rafael are working on post-quantum-ready encryption. Tune in to learn about the various challenges and trade offs that this work brings with it.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Post-quantum readiness for TLS at Meta: https://engineering.fb.com/2024/05/22/security/post-quantum-readiness-tls-pqr-meta/

    Fizz TLS implementation: https://github.com/facebookincubator/fizz

    liboqs: https://github.com/open-quantum-safe/liboqs

    NIST Post-Quantum Cryptography Submissions: https://csrc.nist.gov/Projects/post-quantum-cryptography/post-quantum-cryptography-standardization/round-3-submissions

    Timestamps

    Intro 0:06

    Meta Open Source 101 1:10

    Intros 1:49

    Sheran Intro 2:31

    Rafael Intro 3:37

    Then Quantum Apocalypse 5:24

    Why symmetric and asymmetric algos behave differently 8:10

    Why invest in tomorrow's problems? 9:21

    First deployment target 14:17

    Choosing an algorithm 18:06

    Choosing the right parameters 19:51

    Performance costs and wins 21:28

    Stack 23:33

    Challenges 25:26

    What's next for PQC? 30:38

    Working with NIST 32:59

    Outro 34:30

    Outtakes 35:43

  • After sitting in one too many Zoom meetings looking at flat images of 3D models, mechanical engineers Ed, Jason, Fan, and Raghavan decided that they could do better, taught themselves how to code and started to build Caddy - a CAD app for mixed reality. Tune in to episode 64 to hear their story.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Caddy video: https://heycaddy.net/

    Caddy on the Quest Store: https://www.meta.com/en-gb/experiences/24212682218375897/

    @Scale conference on YouTube: https://www.youtube.com/channel/UCd9I8ZkgoR1d7GeSj_wi_LQ

    MLow @Scale talk: https://www.youtube.com/watch?v=3ypsZUNRjI4

    MLow blog post: https://engineering.fb.com/2024/06/13/web/mlow-metas-low-bitrate-audio-codec/

    Faster Incident Response with GenAI @Scale talk: https://www.youtube.com/watch?v=rpe7eAR90Ko

    Llama 3: https://llama.meta.com/llama3/

    Meta Unity SDKs: https://developer.oculus.com/documentation/unity/

    Prisms VR: https://www.prismsvr.com/

    Timestamps

    Intro 0:06

    Ed Intro 2:12

    Raghavan Intro 3:15

    Fan Intro 3:44

    Jason Intro 4:16

    What is Caddy? 4:49

    Why build Caddy? 6:52

    Discovery of hand-based interactions 11:46

    Supported import formats 14:09

    Learning to code 18:09

    Time to Caddy MVP 27:48

    Off-the-shelf components 29:04

    Outgrowing the initial vision 32:48

    AI in Caddy 43:25

    Challenges building Caddy 52:38

    What's next? 55:40

    How to get in touch? 56:56

    Excitement in MR 57:38

    Outro 1:03:35

  • Aida was part of one of the first Rust teams here at Meta. One of the biggest challenges was interacting with the large amount of existing C++. With the release of cxx, safe interop between C++ and even async Rust has become a lot easier.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Aida’s talk at Rust Nation: https://youtu.be/tsEuA9S5q9Q

    cxx: https://crates.io/crates/cxx

    Sapling: https://sapling-scm.com/

    Timestamps

    Intro 0:06

    Aida Intro 2:06

    Rust in Meta Source Control 2:50

    State of Rust at Meta 10:11

    bindgen 13:25

    cxx vs bindgen 17:49

    async Rust and C++ 19:04

    Dealing with Lifetimes 28:19

    Fixing Memory Leaks 31:25

    Thread safety with Send and Sync 33:48

    A Magic Wand for Async Rust 39:52

    Outro 43:04

    Outtakes 43:50

  • The basic version of Threads for web was built in just under three months by two engineers, mirroring the nimble engineering practices we talked about on this podcast before when it came to launching Threads for Android and iOS. In this episode, Pascal is joined by Ally and Kevin, two engineers on the Threads Web team. They talk about how shared infrastructure with other Meta web properties allows them to move fast and how they manage to balance the need to ship new features with the desire to craft delightful experiences for their users.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Threads: https://threads.net

    StyleX: https://stylexjs.com/

    FlowJS: https://flow.org/

    Introducing Meta Llama 3: https://ai.meta.com/blog/meta-llama-3/

    Building custom silicon for the future of AI: https://www.metacareers.com/life/building-custom-silicon-for-the-future-of-ai

    Building Meta’s GenAI Infrastructure: https://engineering.fb.com/2024/03/12/data-center-engineering/building-metas-genai-infrastructure/

    Timestamps

    Intro 0:06

    Intro Ally and Kevin 1:44

    Why focus on Web? 2:48

    Kevin's contributions 4:42

    Focus on craft 6:18

    Editing Threads 7:34

    Ally's contributions 10:40

    Prioritising delight and shipping features 12:02

    Launching Threads Web 13:30

    Shared Infra 16:13

    Tech Stack 19:15

    The DevX of Meta www 23:51

    Challenges 30:57

    Favourite bit of polish 34:32

    Outtakes 39:18

  • Every day, trillions of image download requests are made from Meta’s family of apps. Zuzanna works on the Media Platform Team that owns the entire flow from serving images from the CDN to displaying the pixels on your phone. One of the project she and her team recently worked on was rolling out HDR images to Instagram and Threads and in this episode’s interview, Zuzanna tells show host Pascal how they partnered with large phone manufacturers to develop and roll out the new feature.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Fresco: https://frescolib.org/

    Timestamps

    Intro 0:06

    Intro Zuza 1:44

    Image Infra Team 3:23

    The scale of images at Meta 5:10

    Measuring quality 10:01

    HDR photos 12:13

    HDR file formats 19:02

    HDR photo availability today 22:34

    Partnering with phone vendors 30:40

    Why photos after videos? 32:27

    Outro 36:22
  • Distributing binaries and toolchains to developers is a pain but DotSlash makes it a breeze. Instead of committing large, platform-specific executables to your repository, DotSlash combines a fast Rust program with a JSON manifest prefixed with a #! to transparently fetch and execute the binary you need. Tune in to our interview with Andres and Michael to learn more.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Simple Precision Time Protocol at Meta: https://engineering.fb.com/2024/02/07/production-engineering/simple-precision-time-protocol-sptp-meta/

    Meta Time libraries on GitHub: https://github.com/facebook/time

    DotSlash - Simplified executable deployment: https://engineering.fb.com/2024/02/06/developer-tools/dotslash-simplified-executable-deployment/

    DotSlash website: https://dotslash-cli.com/

    DotSlash on GitHub: https://github.com/facebook/dotslash

    Timestamps

    Intro 0:05

    Intro Andres 2:30

    Intro Michael 3:39

    Andres's Projects at Meta 3:54

    Michael's Projects at Meta 5:00

    What is DotSlash? 5:30

    DotSlash vs LFS 6:04

    DotSlash vs buck2 run 7:08

    Where is DotSlash used at Meta? 8:45

    How does DotSlash work? 9:37

    DotSlash on Windows 13:15

    How DotSlash is built 16:21

    Bundling the rust toolchain 17:14

    Automated DotSlash file generation 20:33

    DotSlash and remote execution 24:53

    Storage providers 26:27

    Why open-source? 30:05

    Limitations 34:17

    Cache Eviction 36:59

    Outro 39:22

    Bloopers 40:15

  • For the second time in just a few months, we are talking Python on the Meta Tech Podcast. Python 3.12 features a whole range of new features, many of which were contributed by Meta. Carl and Itamar join Pascal to talk about their contributions to the latest release, including new hooks that allow for custom JITs like Cinder, Immortal Objects, improvements to the type system, faster comprehensions and much more. In their discussion, they talk not just about how and why those features were built but also the process of upstreaming and engaging with the community.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    “Lazy is the new fast: How Lazy Imports and Cinder accelerate machine learning at Meta” - https://engineering.fb.com/2024/01/18/developer-tools/lazy-imports-cinder-machine-learning-meta/

    “How Meta built the infrastructure for Threads” - https://engineering.fb.com/2023/12/19/core-infra/how-meta-built-the-infrastructure-for-threads/

    Cinder on GitHub - https://github.com/facebookincubator/cinder

    “Meta contributes new features to Python 3.12” - https://engineering.fb.com/2023/10/05/developer-tools/python-312-meta-new-features/

    Timestamps

    Intro 0:06

    Carl Intro 2:09

    Itamar Intro 3:27

    Teams and Missions 5:10

    Python 3

    Faster Coroutines 8:57

    Code Watchers and JIT Hooks 12:10

    When to upstream 13:53

    How to upstream to CPython 16:19

    History of Cinder 21:35

    Why not upstream Cinder? 25:48

    Cinder hooks in CPython 29:34

    Free Threading 34:10

    Outro 37:08

  • For this last episode of 2024, Pascal talks with Devi, an AI research director at Meta. They talk about the history of AI at Meta, some of the basic terms, how Meta's approach to developing and using AI differs notably from other companies and what the future has in store.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Meta AI Blog: https://ai.meta.com/

    Purple Llama: https://ai.meta.com/blog/purple-llama-open-trust-safety-generative-ai/

    AI Alliance: https://ai.meta.com/blog/ai-alliance/

    Audiobox: https://ai.meta.com/blog/audiobox-generating-audio-voice-natural-language-prompts/

    Emu Video and Emu Edit: https://ai.meta.com/blog/emu-text-to-video-generation-image-editing-research/

    Meta AI Agents: https://about.fb.com/news/2023/09/introducing-ai-powered-assistants-characters-and-creative-tools/

    Timestamps

    Intro 0:00

    Introduction Devi 2:27

    AI vs ML 4:00

    History of AI at Meta 6:03

    Deep learning and LLMs 9:32

    LLMs vs GenAI 11:42

    Multi-modal models 12:21

    Meta's AI agents 14:33

    Meta's open approach to AI 16:53

    Image and video generation and editing 22:28

    Most exciting future AI developments 27:17

    Outro 28:57

  • We’re jumping into our time machine and going back to 2018 for an interview with Will B. about the various twists and turns that led to the creation of Instagram Stories. We will be back with a fresh interview next month.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Rebound: https://github.com/facebookarchive/rebound Origami Studio: https://origami.design/

    Timestamps

    Intro 0:06

    Will Bailey 1:14

    Early FB iOS app 7:16

    Release Trains 11:52

    The End of HTML5 13:29

    Migration to Native 16:05

    Facebook Home 17:02

    Design Collaboration 22:03

    Instagram 26:33

    Slingshot 27:57

    Instagram for Android 29:54

    Instagram Stories 35:37

    Rebound 41:25

    Outro 44:41
  • Python at Meta is huge. Not only does it famously power Instagram's backend, but it underpins our configuration systems, much of our AI work and many services. Amethyst joins Pascal for this episode of the Meta Tech Podcast to talk about how the Python Foundation Team works to improve the developer experience of everyone working with Python at Meta and Fixit 2, the freshly open-sourced linter framework built on top of libcst.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Fixit 2 announcement post: https://engineering.fb.com/2023/08/07/developer-tools/fixit-2-linter-meta/

    Fixit: https://fixit.readthedocs.io

    µfmt: https://ufmt.omnilib.dev

    µsort: https://usort.readthedocs.io

    LibCST: https://libcst.readthedocs.io

    5 Things You Didn’t Know About Buck2: https://engineering.fb.com/2023/10/23/developer-tools/5-things-you-didnt-know-about-buck2/

    Scheduling Jupyter Notebooks at Meta: https://engineering.fb.com/2023/08/29/security/scheduling-jupyter-notebooks-meta/

    Timestamps

    Intro 0:06

    Intro Amethyst 1:57

    Production vs Software Engineering 3:41

    PE for language teams 5:40

    Python at Meta 6:58

    Python3 migration 10:15

    Projects on the Python Foundation Team 16:30

    libcst and codemods 21:55

    What Python looks like at Meta 25:53

    Meta's involvement in the Python community 30:30

    The importance of lints at Meta 35:13

    Why another linter? 39:11

    Favourite lint 46:26

    Outro 48:17

    Bloopers 48:54

  • Threads went from idea to 100M users in just about five months. This would not have been possible without building on top of Meta's existing systems and infrastructure. Join Pascal as he speaks with Joy, Cameron and Richard, three engineers from the Threads team who worked on backend, iOS and Android, respectively to learn about the challenges they faced along the way.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Threads: https://threads.net

    Threads: The inside story of Meta’s newest social app - https://engineering.fb.com/2023/09/07/culture/threads-inside-story-metas-newest-social-app/

    Litho: https://fblitho.com/

    Timestamps

    Intro 0:00

    Introductions 0:56

    Intro: Cameron 1:42

    Intro: Joy 2:06

    Intro: Richard 2:30

    Early Days at Threads 3:03

    Specialisations 6:52

    Why built on top of IG? 7:18

    iOS and Android approaches 10:17

    UI Frameworks 12:00

    Code sharing on server 15:36

    What broke? 20:04

    How has the team changed? 23:02

    Favourite moments 25:30

    Outro 29:45

    Outtakes 31:03

  • For episode 55, Pascal speaks with Katherine and returning guest Dustin, two software engineers at Meta about how to ship code at Meta. Why do we have a monorepo? Why and how do we do pre-commit code review? What does our CI infrastructure look like? Get the answers to these questions and many more in this episode of the Meta Tech Podcast.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    The evolution of Facebook’s iOS app architecture - Engineering At Meta: https://engineering.fb.com/2023/02/06/ios/facebook-ios-app-architecture/

    Episode 47: Source control at Meta - https://pca.st/episode/429e9f38-6537-43e3-b929-fbeeda326ed5

    Timestamps

    Intro 0:06

    Intro Katherine 1:55

    Dustin's Origin Story 4:38

    Topic Intro 6:28

    Why Monorepo(s) 7:18

    What Makes Monorepos Hard? 12:15

    Why do we Have so Many Files? 17:31

    Who Owns Stuff? 25:29

    Life of a Diff 28:58

    Writing Bots Writing Code Writing Bots 34:16

    Finding Reviewers 38:46

    Why Are Things Not Constantly on Fire? 41:43

    Outro 47:47

    Outtakes 48:46

  • In April, WhatsApp announced the launch of a new cryptographic security feature to automatically verify a secured connection based on key transparency. Key transparency helps strengthen the guarantee that end-to-end encryption provides to private, personal messaging applications in a transparent manner available to all.

    Rolling out a feature like this to WhatsApp's user base is not a small feat and requires some clever engineering to scale to the billions of users relying on WhatsApp to stay in touch with friends, family and business.

    Pascal is joined by Sean and Kevin to discuss what Key Transparency means in practice and the various challenges they encountered as they scaled it up to billions of users.

    Got feedback? Send it to us on Threads (https://threads.net/@metatechpod), Twitter (https://twitter.com/metatechpod), Instagram (https://instagram.com/metatechpod) and don’t forget to follow our host @passy (https://twitter.com/passy, https://mastodon.social/@passy, and https://threads.net/@passy_). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Infer: https://fbinfer.com/

    Infer on GitHub: https://github.com/facebook/infer

    MTP Episode 18 about Infer: https://pca.st/5U9V

    Deploying key transparency at WhatsApp - Engineering at Meta: https://engineering.fb.com/2023/04/13/security/whatsapp-key-transparency/

    GitHub - facebook/akd: An implementation of an auditable key directory: https://github.com/facebook/akd/

    Parakeet: Practical Key Transparency for End-to-End Encrypted Messaging: https://www.ndss-symposium.org/ndss-paper/parakeet-practical-key-transparency-for-end-to-end-encrypted-messaging/

    SEEMless: Secure End-to-End Encrypted Messaging with less trust: https://eprint.iacr.org/2018/607

    Coniks: Bringing Key Transparency to End Users: https://www.usenix.org/conference/usenixsecurity15/technical-sessions/presentation/melara

    IETF Working Group on Key Transparency: https://datatracker.ietf.org/wg/keytrans/about

    Timestamps

    Intro 0:06

    News Update: Infer turns 10 1:34

    Interview Intro 4:27

    Intro Kevin 4:45

    Intro Sean 6:07

    WhatsApp's mission 6:47

    PETs 7:58

    E2E basics 8:59

    Key transparency 10:32

    Crypto community response 18:20

    End-user changes 19:57

    Technical challenges and zero-knowledge proofs 23:18

    AKD 28:27

    Internal deployment 32:02

    Outro 42:16

    Bloopers 43:05

  • Red Team X is a security team at Meta that is responsible for finding and exploiting vulnerabilities in third-party products that could impact Meta's own security. The team acts as a hybrid between a traditional red team, which focuses on probing their own organisation's systems and products for vulnerabilities, and an elite bug-hunting group.

    The team was founded by Vlad I. in 2020 when the pandemic and the sudden shift to Work From Home challenged various previously-held assumptions about security.

    In his discussion with Pascal, Vlad explains the roles of different security teams within Meta, how they go about prioritising the highest-impact targets to exploit and how they work with vendors to ensure not just Meta but the entire world benefits from the fixes produced.

    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 and https://mastodon.social/@passy). Fancy working with us? Check out https://www.metacareers.com/.

    Links:

    The Diff episode about Velox: https://thediffpodcast.com/docs/episode-17

    Risky Business Podcast: https://risky.biz/

    RTX Blog: https://rtx.meta.security

    RTX Disclosures: https://rtx.meta.security/bugs

    RTX in WIRED: https://www.wired.com/story/facebook-red-team-x-vulnerabilities/

    Timestamps:

    Intro 0:06

    Vlad Intro 1:55

    Red Teaming 2:43

    Staying up-to-date 6:34

    Different team colours 10:02

    Defence-in-depth 12:44

    Red Team X 15:57

    Hardware v Software 19:43

    Focus areas 21:29

    Prioritising requests 22:44

    Notable RTX Disclosures 26:05

    Vulnerability disclosure policy 28:52

    Getting into offensive security 38:48

    Outro 40:51

  • PyTorch is now one of the most popular machine learning frameworks out there but that was not a foregone conclusion when it was released in 2016. Our host Pascal is joined by Suraj, a developer advocate here at Meta, to dissect the history of PyTorch and look at the factors that contributed to its success. That includes understanding your target audience, maintaining backwards compatibility, fostering a helpful community and so much more.

    You don't need to be an expert in PyTorch to enjoy the discussion as Suraj explains all the basics.

    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 and https://mastodon.social/@passy). Fancy working with us? Check out https://www.metacareers.com/.

    Links:

    Meta Open Source Blog: Creating Safe Spaces for Underrepresented Individuals in Open Source Communities - https://developers.facebook.com/blog/post/2023/05/31/creating-safe-spaces/

    PyTorch Developer Podcast - https://pytorch-dev-podcast.simplecast.com/

    PyTorch - https://pytorch.org/

    PyTorch on GitHub - https://github.com/pytorch/pytorch

    Announcing the PyTorch Foundation: A new era for the cutting-edge AI framework - https://ai.facebook.com/blog/pytorch-foundation/

    Timestamps:

    Intro 0:05

    Suraj Intro 1:52

    What is PyTorch? 4:39

    History of PyTorch 5:33

    Choosing a Target Audience 7:27

    Python and Performance 11:20

    Design Decisions 19:04

    OSS Governance and Community 21:11

    PyTorch 2.0 25:47

    How to get started 28:32

    Outro 30:14

    Bloopers 32:16
  • For episode 51, Pascal speaks with Neil and Marie, two of the engineers behind Buck2, our open source, large scale build system. Thousands of developers at Meta are already using Buck2 and performing millions of builds per day that on average complete in half the time of Buck1 builds. Marie and Neil discuss the design choices that make Buck2 so much faster and the various challenges they faced in engineering and open sourcing the build system.

    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 and https://mastodon.social/@passy). Fancy working with us? Check out https://www.metacareers.com/.

    Links

    Announcement blog post: https://engineering.fb.com/2023/04/06/open-source/buck2-open-source-large-scale-build-system/

    Buck2: https://buck2.build/

    Buck2 on GitHub: https://github.com/facebook/buck2

    Build Systems à la Carte - https://www.microsoft.com/en-us/research/uploads/prod/2018/03/build-systems.pdf

    Lexical YouTube clip: https://www.youtube.com/watch?v=Vpv0BYhhlak

    Lexical for iOS: https://github.com/facebook/lexical-ios

    Timestamps

    Intro 0:06

    Intro Marie 1:30

    Intro Neil 2:57

    Why a custom build tool? 4:21

    Rewriting Buck 6:49

    Buck2 vs Bazel 8:49

    Building language support 12:06

    Buck2 as a developer 13:15

    Upgrade from Buck1 to Buck2 15:05

    How is Buck2 faster? 16:31

    Rust and Profiling 18:44

    From Python to Starlark 25:54

    Open-Sourcing 28:18

    Outro 32:15