Real Alpha
Watch modeSubscribed

Full episode · 1 h 25 m

Boris Cherny (Creator of Claude Code) On What Grew His Career And Building at Anthropic

Boris Cherny says engineers should build from latent user demand—and build for the models likely to arrive months later.

The Peterman Pod · Ryan Peterman

  • Boris Cherny is Creator of Claude Code and former Meta principal engineer.

The best minutes

  1. 1:10:24Build for the model that will exist six months from now2 min
  2. 29:37Use competing designs to make large projects easier to scope6 min
  3. 44:33Turn repeated engineering pain into leverage for the team6 min

Also worth watching

  1. 7:01Cross-org projects need a shared goal3 min
  2. 18:55Volunteering for a platform rewrite can earn influence5 min
  3. 35:31A large data-model migration can be worth reversing6 min
  4. 54:13Trust helped Boris move Instagram from Python to Hack6 min
  5. 1:13:21AI-generated code should meet the same review bar3 min

Skip the early side-project and book discussion, the promotion reflections, and the closing competition and productivity discussion.

Summary · 4 min read

Boris Cherny created Claude Code and previously worked as a principal engineer at Meta. At Meta, he worked across Facebook Groups and Instagram before joining Anthropic.

Cherny argues that engineers grow by solving problems users already reveal, taking on work beyond their job lane and turning repeated friction into tools that help whole teams. He says career levels matter less than building useful products, earning trust and developing judgment through side projects and broad technical work. His account of Claude Code centers on building for rapidly improving models: he says adoption rose as models became capable enough, and reports almost 70% productivity growth per engineer even as Anthropic tripled. He also describes Anthropic’s safety mission as a reason he joined and urges engineers to use common sense rather than follow organizational inertia.

Minute by minute

  1. 0:55

    Build around what users already do. Cherny says Chats and Groups brought Messenger and Facebook Groups closer after Facebook saw activity shifting toward chat. He describes a small team testing features with cafeteria workers and argues that engineers should also handle product, design and user research.

  2. 5:25

    Latent demand reveals product opportunities. Cherny calls latent demand a central product principle: Facebook Marketplace followed buying and selling posts that made up 40% of Facebook Groups posts, while Facebook Dating followed an observation that 60% of profile views were from non-friends of the opposite gender. He says products can make existing user intent easier to act on.

  3. 7:01

    Shared goals bridge org divides. Cherny says Facebook Groups prioritized shipping quickly, while Messenger focused on reliability and performance, with different goals and organizational structures reinforcing the divide. He argues that teams with conflicting values need a shared goal or hypothesis that matters to both.

  4. 9:35

    Side projects expose shared problems. Cherny says he built Undux after finding Redux difficult to use; it became Facebook’s most popular state-management framework before newer tools replaced it. He also wrote a TypeScript book and studied functional programming in Scala, which he says shaped how he thinks about types and code.

  5. 17:00

    Underleveling created room to grow. Cherny says joining Meta below his experience level gave him room to explore and build momentum. He describes earning a Staff promotion through the Facebook Groups migration to Comet, which grew from 12 engineers to 20 or 30 over about two years. He estimates Claude Code could reduce comparable work to five engineers over six months, while warning that model progress makes estimates change quickly.

  6. 25:13

    Trust matters more than titles. Cherny says offering three options in a leadership review could show that a team had weighed the tradeoffs, though he calls the middle-option rule tongue-in-cheek. He says Meta engineers had to find scope to demonstrate impact, while Meta and Anthropic’s title-light cultures encourage people to work beyond formal roles; trust still has to be earned.

  7. 29:37

    Scoping should stay time-boxed. Cherny says he repeatedly scoped projects for large engineering teams as Facebook Groups grew. For a difficult data-model merger, he split technical leads into two design teams; their plans largely aligned and revealed the main risks. He advises starting with a rough scope, time-boxing the work and giving experts a proposal to critique.

  8. 35:31

    Public groups required a data-model rethink. Cherny describes the technical and moderation work behind letting people comment in public Facebook Groups without joining first. A disagreement over whether followers and members belonged in the same data field led to a costly migration and then a reversal. He says standing by his technical judgment helped earn trust and contributed to his IC7 promotion.

  9. 43:16

    Repeated problems create leverage. Cherny says engineers should understand decision-makers’ tradeoffs before advocating for a project. He recommends automating recurring friction: after repeatedly flagging the same code-review issue, he wrote lint rules, and he encouraged engineers to build tools for problems they encountered in their own work.

  10. 50:43

    Instagram valued product craft. Cherny says he moved to Instagram’s Tokyo office after his wife found a job in Japan, despite not having used Instagram before. He describes a culture focused on product quality and human experience, including unshipping features that failed to meet a usage bar so they would not clutter the app.

  11. 57:40

    Modernization required earned trust. Cherny says the Japan time zone reduced meetings and let him spend more time coding. He helped scope a move from Instagram’s Python codebase to Hack, first building relationships with skeptics; he says the project later continued with other engineers leading parts of the work. His manager proposed him for IC8.

  12. 1:04:18

    Cherny says mission and safety drew him to Anthropic. Cherny says ChatGPT’s arrival convinced him to work on AI, and Anthropic’s people and mission felt like a fit. He describes safety as central to the company’s work, saying Anthropic had held model releases until it understood the risks and devoted resources to safety and alignment research.

  13. 1:10:06

    Build for more capable models. Cherny says his manager pushed him to build for future models rather than treat autocomplete as the limit of AI coding. He says Claude Code became useful for much more of his work after Sonnet and Opus 4 arrived; he estimates Anthropic’s productivity per engineer grew almost 70% even as the company tripled. He says the team keeps the same quality bar for model-written and human-written code.

  14. 1:15:55

    AI tools broaden who can build. Cherny says Anthropic data scientists use Claude Code for SQL, analysis and pipelines, and that people on the sales team use it with business data sources. He urges his team to focus on user needs instead of copying competitors such as Codex. He says his current productivity advice is to learn to coordinate multiple agents; his career advice is to use common sense.

Published Dec 15, 2025.

Transcript · 1 h 18 m read

The Peterman Pod, hosted by Ryan Peterman, with Boris Cherny.

Transcribed by machine (Whisper) from the episode’s audio, so a word may be off here and there.

  1. 0:00

    The models are moving so quickly. If you ask me this question in three months or six months, my answer will be totally different. This is Boris Cherny. He's the creator of Cloud Code and former meta-principle engineer. And we talked about everything that shaped his career. Can you explain latent demand? Latent demand, I think, is the single most important principle in products. You said that there were some clear cultural differences and that was difficult. Oh my God, difficult is such an understatement. It was a nightmare. We also talked about Cloud Code and what's actually happening in Anthropic right now.

  2. 0:33

    Even though Anthropic has tripled, productivity per engineer has grown like almost 70% because of quad code. Don't build for the model of today, build for the model six months from now. The one technical book I would recommend to everyone that has had the greatest impact on me as an engineer is what are your thoughts on the competition with Codex and OpenAI? Here's the full episode. i want to start at the beginning of your story with you getting promoted to senior engineer at meta what's the story behind the projects that got you promoted and where were you at the time if i remember right the project was chats and groups and this was a project to bring messenger and facebook a little bit closer together and i actually the first few projects that i worked on at meta it was about messenger and facebook and i think the first one was like zuck had this idea about like syncing messenger chats and facebook groups but there's a few of these projects just trying to bring like messenger and facebook closer together and i think the motivation was there was this feeling that this kind of public space social product was disappearing and that things were moving a little bit more into chat and these kind of more casual real-time spaces

  3. 1:48

    and so we tried a few versions of the product and chats and groups is the one that worked i think it was like number three or number four at the time and i was in the facebook groups org in facebook at the time and i was working a lot with messenger that was like organizationally very distant and this is a idea that i think steve who was a pm at the time he sort of had this idea this is a thing we should build and i just picked up on that and i was like yeah hell yeah let's let's do this uh and so i started hacking on it uh and then pretty soon there were some signs of life so i asked for more engineers and uh there were three engineers that joined there was uh shotambri uh crystal and chapang they were like the first three engineers that joined this and then we got some uh we got some data science support some design support um and it started just on web then we also moved to mobile a little bit and uh yeah i think we just kind of proved out this idea that you can have chats inside of facebook groups and this kind of product can work and there's just like a lot of stuff honestly that didn't work at all about it um it was like a super jank experience I think by modern product standards, like back in the day, everyone was building on web and

Read the whole transcript
  1. 2:55

    all sorts of bugs were totally okay. Nowadays, I think the standard, honestly, like the visual standard, like quality standard is a lot higher. And yeah, so like the product grew and we were such a small team, like everyone had to do everything. And I remember like we didn't have a user researcher, so I would go to the cafeteria during lunch and we would have a new feature and we would show the cafeteria workers the feature and be like, hey, can you figure out how to open a chat? And, you know, like sometimes they would find it, sometimes they wouldn't be able to. And this is just like an observational user research study.

  2. 3:26

    So you kind of see how people like in a particular situation can do a task and you don't prompt them that much. So you don't want to give too much away. And you kind of see where they struggle. You see what they get. And so we did this. And then like I kind of taught the team how to do this. So then pretty soon we would all go to the cafeteria at lunch and start like bugging cafeteria workers to, you know, as just kind of like representative users to be like, you know, does this make sense or not? It's interesting how the early Facebook culture that you are operating in let engineers do so much outside of just like the code.

  3. 3:58

    For instance, you're doing UXR. It sounds like in some of it, I remember in your story, you did some design as well and you were coaching people to do design. So I think that's pretty interesting, unique thing in Facebook's culture. I think this is so important. And I think to this day, you know, on the quad code team, and this is the team that I'm on right now, we really prioritize generalists. So I love working with generalists. If you're an engineer that codes, but you can also do product work, you can also do design. You have product sense. you go you want to go talk to your users like i love this kind of engineer to work with and this is actually how we recruit for all functions now so like our product managers code our data scientists code um our you know user researcher codes a little bit so like i just love these generalists and i think this is really like the way that i grew up like from the beginning when i was running you know my first startup when i was like 18 i had to do everything and uh up until facebook i worked at smaller companies where you had to do everything and i kind of feel like at big companies you get forced into this you know particular swim lane but it's just sort

  4. 5:01

    official because like what is engineering it's like it's a very narrow skill set but really the thing that you're doing is you're building product or you're building infra and there's just so much more that goes into doing that end-to-end besides just writing code it was just really cool being at a place that um i think facebook uniquely kind of rewarded that at that time and i i think actually at the end of that half i got promoted and then i think the half after every single one the engineers got promoted to. In those early products, there was this concept, latent demand, that you mentioned a few times, which it sounds like was the impetus for a lot of those product directions. Can you explain latent demand? Latent demand, I think, is the single most important principle in product. And I think if you look at, especially at Facebook's successful products, every single one has an element of latent demand. So for example, marketplace, it came from this observation that if you looked at Facebook groups at the time, 40% of the posts were buying and selling stuff. And so Facebook groups were not designed for commerce, but that's what people were using it for. And so it's kind of cool. Like you design

  5. 6:08

    this product in a way that can be hacked. It can be abused by users a little bit. And then you look at the data, you see how they're abusing it, and then you build a product around it. And so, you know like there was facebook groups and then there were buy sell groups and then that succeeded obviously because people already wanted to buy and sell and do commerce on facebook groups and then marketplace was next it was just a natural extension of the same intent that people had um i think facebook dating was pretty similar i think the observation was something like 60 percent of profile views were people of the opposite gender that were not friends with each other um so you know this kind of like traditional like kind of like creeping on each other like And I think for Nate and PMs at the time, this was evidence that this would work. And I think the principle and product is you can never get people to do something they do not yet do. The thing you can do is you can find the intent that they have, and then you can steer it to let them better capitalize on that intent and do the thing that they want more easily.

  6. 7:05

    I think also at this part of your story, you mentioned that you worked across orgs, you worked because you were bridging the gaps between Messenger and a lot of the group's engineering work. I'm curious, you said that there were some clear cultural differences, and that was difficult. Do you have any advice for working across very different culture orgs? Oh, my God. Difficult is such an understatement. It was a nightmare. Like for Facebook at the time, we wanted to ship. Like we just wanted to go fast and ship awesome product as fast as we could. And then Messenger was all about reliability and performance.

  7. 7:42

    That's all they cared about. It was just polar opposite values. And this isn't just cultural. It's not just like an engineer to engineer thing. It's like the engineers on that team were suspicious of us because we would affect their performance metrics. And organizationally, their org was set up in a way to ship slowly without regressing them.

  8. 8:00

    Boris ChernyAnd we were set up to ship quickly. So it's like, and then the goals were totally different. You know, like they had SLA uptimes, and for us, it was just about daily active users and engagement. So I think for me, the running was these kind of cultural values go super deep. It's not just a thing people talk about, but you can actually see this in like in org design and in goal design and in every part of everything.

  9. 8:22

    And honestly, I think one of the reasons that project failed was, and eventually it evolved actually into something successful, but that version of the project failed was because of this difference in values. So I think that fundamentally, if you want to get companies with really different values to succeed and kind of work together, you have to find some kind of shared goal or kind of shared interest, shared belief, some kind of hypothesis that they want to test together that would be really interesting for both of them if it worked. And I think this chats and groups thing fundamentally, it was really cool for Facebook, but it's not that cool for Messenger for a lot of reasons.

  10. 9:02

    So knowing what you know now, how would you change things going back to that kind of project? I think I probably would have gone to Zuck and just been like, if you're really serious about this thing, we should move Messenger into the Facebook org. And I think this has since happened, and it's actually happened a few times. Messenger was in the org, then it moved out, it and then it moved in then moved out like it's a big company like this happens but i think fundamentally for this kind of thing to succeed the the common report can't be you know the common manager can't be like chris cox it has to be like a little bit lower down and so you can structure the orgs to be a little bit more collaborative i see to align the incentives so you don't get that kind of constant struggle yeah exactly at this point in your career i saw there were a bunch of really interesting side projects that you had and i'm kind of curious like what's the butterfly effect of those kinds of projects so for instance um even before you got to meta you worked on undux the state management framework for react um i'm curious like how did that impact your career if at all yeah i mean for me side quests are so important and for me like when i hire engineers

  11. 10:10

    this is definitely something i look for i want people with side quests like cool weekend projects cool side projects, like even someone that's like, you know, just really into like making kombucha or something. Like you want people that are generally curious and interested in stuff outside of their main work. These are kind of well-rounded people. These are the kinds of people I enjoy working with. I think for me, this is where a lot of my growth came from is working on these kinds of side projects. So something like Undex, honestly, where it came from is React state management is honestly unnecessarily complicated. And at the time, the state of the art was there was like flux and then there was this other thing called redux and i just couldn't wrap my head around redux i was just you know i i consider myself kind of average engineer like i build product i'm like i'm not in one of these like incredible systems engineers and so for me like redux at the time i had these concepts of like you know like reducers and this kind of like just like this like very complicated flow you had to go to just like update a little state and i just couldn't wrap my head around it so i built a simpler thing that

  12. 11:12

    seemed to work I used that I was volunteering at a non-profit at the time and they started using it and their engineers liked it and then when I joined Facebook I saw a lot of kind of frustration around Redux usage because there was a internal group for people that use Redux and there were all these questions where people were asking the same questions I did you know like when you as an engineer or you know as a product person are running into a problem sometimes it's just you often it's other people too and i think it's important to build the spidey sense for like when this problem might be shared by others and so this is a problem that definitely was shared by others and i could kind of see this in support posts and by the difficulty my team had using redux and so i launched uh undux internally and undux is like it's fine it's like not that great of a product but at least better than Redux. And at Facebook, I didn't actually know how to get adoption. So I kind of posted about it. A few people started to use it. I remember there was like Jeff Case on the notifications team was a big early adopter. And we spent some late nights debugging some like gnarly like notification related bugs due to it. And I wanted to get more adoption. And so what I

  13. 12:20

    did was I wrote a little script and I scraped the group of people reporting issues. And I just tallied them by team and then i reached out just over chat to the tech lead and the manager for every team and i scheduled uh like a tech talk just for that team and i think overall i did maybe 20 30 40 tech talks something like that over the course of like a few weeks and i would i remember just like biking around the meta campus and kind of doing these talks and it was so fun because people were so engaged and they were just so excited that someone cares about solving this problem that they they really have and i think at some point undux was like the most popular state management framework at facebook and then i think it got pretty quickly replaced by recoil and kind of more modern alternatives and nowadays it's like relay and things like that does that kind of side project appear in your like performance reviewers like help you in some way so i think it was in my performance review i think by meta standards it's kind of a cherry on top it wasn't really you know something that kind of gets you to the next level in itself um but i had a lot of other side quests around uh around that time too like at some point i got really into typescript

  14. 13:27

    actually and this was like at the previous company i was at we were using it there weren't a lot of good resources and so i just like started writing a book about it because i was like someone like someone should do this it's crazy it doesn't exist this language is just like magnificent it's it's just this like really really shockingly and shockingly good design it has all these ideas that no other language had at the time um you know things like eventually like at the time there were no conditional types but like conditional types like literal types for everything uh map types they're just like absolutely insane things like even like the gnarliest haskeller is going to be impressed by this kind of language feature but no one was writing about this stuff and so i just got like super into it and like wrote this book and it it just sort of like ate up like a year of my life would not recommend it but it was really fun to go really deep on it and then i also started i think like the world's biggest typescript meetup at the time in san francisco and that was a really cool chance to meet uh there's like ryan doll who created no js there was um just like all these like famous javascript celebrities and it just sort of made me realize like all these people

  15. 14:34

    are just people and um you know like everyone just like builds cool stuff and some of it's cool some of it's quite a particular time but it's all just people and anyone can do this stuff did you end up using typescript or that technical depth later in your time at meta or or maybe even an anthropic yeah i think there was you know it's funny i actually like i used to not care about languages and then at some point this was maybe like 10 years ago i used to ride a motorcycle and i got in a pretty bad accident actually i broke my arms oh my god and so both of them both of them yeah i had like two slings on oh my god how'd you code um so that was the hard part so like i actually couldn't code for like a month and then you know my hands like still kind of hurt and so like i couldn't write javascript which is what i used to write at the time and so i actually had to branch out and learn other languages because they literally used less keystrokes and so i started with a coffee script because i was like less parentheses and stuff i don't i don't think that language even exists no one uses it nowadays um but that's also how i got into haskell and kind of functional programming um because it was kind of you can do the same thing with fewer keystrokes

  16. 15:37

    And that was like literally the motivation at the time. And then at some point I was working at a hedge fund, and this was like before Facebook. And I had a coworker, Rick, who was really into Scala. And I really didn't understand Scala. And he kind of really got me into it. And he got me into this like functional programming side of the house. And this is still like the one technical... book I would recommend to everyone that has had the greatest impact on me as an engineer is this book called Functional Programming in Scala. And you're probably never going to use Scala day to day. But the way it teaches you to think about coding problems is just such a change from the way that most people were in coding, either practically or in school. It's just, it's incredible. It's going to completely change the way that you code. And so for me, it was, kind of like Scala was like there was kind of like Haskell and kind of CoffeeScript these kind of few keystroke languages that was like a first step then Scala and then TypeScript and I think this kind of this changed the way I think because now I think in types when I code the thing that matters in your code the most is the type signatures this is more important than the code

  17. 16:44

    itself and so like getting this right leads to very clean code and so even at Facebook where I I was writing mostly kind of flow and hack and then later I'd Instagram Python. It was very helpful. Here at Anthropic, I mostly write TypeScript and Python. So it's actually quite relevant. But I think the bigger lesson is just thinking types. At this point in your career, you mentioned that you came in underleveled. You came in as a mid-level engineer, even though you had a lot of experience. And you said, in hindsight, you were lucky to be underleveled. leveled and i'm curious what's the the thinking behind that just lower expectations um yeah i feel i feel like at a big company there's all these kind of uh you know like at every level there's certain expectations in terms of kind of the project impact and people impact and all this kind of stuff and the specific criteria are kind of different across companies um but there's um um i think a lot of it is about either project impact or kind of checking a bunch of checkboxes and all this just takes a lot of time um and so i think coming in under level they just gave me the space to explore and uh just like build cool stuff for the sake of building cool stuff

  18. 17:59

    definitely and i wonder if it also helps with building momentum like what i mean is if you came in as a mid-level or e4 and then you you're crushing it everyone's saying boris is amazing what this is crazy as opposed to you came in at your whatever i don't know expectations and you did good i think there can be this uh effect when you come in and you really wow everyone you have such a strong um you know first impression i think can be helpful for building a good reputation that gives you more credibility, more projects and stuff like that in the future. Yeah, I think that's totally true. And I think actually this is probably good advice for any company is like, I think a lot of times engineers switch jobs and they really push, you know, like, I want to go to a different company and I want like a level plus one or whatever.

  19. 18:52

    And actually, there's a lot of downsides to that, like you said. Going on to the thing that got you promoted to staff or E6 at Meta, I'm curious the story behind, you know, where you were at the time and what got you promoted into more of that leadership position? So what was happening was chats and groups that was launched and that was going and there was kind of a team working on this. And I actually had, I'd done a lot of JavaScript before I joined, but at Facebook, I'd never actually written JavaScript because it was all PHP. And so I really just wanted to write JavaScript. And we had this like web interface.

  20. 19:30

    And for Facebook groups in particular, a lot of people use web as opposed to mobile, because, for example, for like being a group admin or whatever, it's just easier to do on a big computer with a with a keyboard and stuff. And at the time, the site was really janky. It was like a static site. It was all PHP. There's these little bits of JavaScript that are injected a little bit in different places. There's all sorts of inconsistent state, like all these problems that come out of it. It's just it doesn't feel like a good UX. And so I wanted to rewrite it in JavaScript. And I got a lot of pushback from the org at the time.

  21. 20:02

    And I think the big reason was that the info just wasn't really ready for it. Luckily, at the same time, Comet was starting. And Comet was like the rewrite of Facebook.com on desktop. And this was like Tom Machino, who's now at Vercel. This was Ching Chen. There's a bunch of these kind of core people that were working on this. And I just really wanted to be involved. So I reached out and asked how I can help.

  22. 20:26

    Boris ChernyAnd I offered Facebook groups as the guinea pig for it. And I didn't ask anyone. I just kind of did it.

  23. 20:33

    And then later I kind of went to my leadership in Facebook groups and was like, hey, comments coming. It's going to be a bunch of work where we can get ahead of it, kind of set the standard for everyone, build relationships with these other teams. And I still got a bunch of pushback that was like, hey, you know, you can't put 20 engineers on this. And after a bunch of reviews and kind of haggling for engineers, I think we put, we got like 12 engineers or something like that. Because it was a pretty big migration. You know, it's going to take like a year. groups is the single biggest product service in all facebook which is actually kind of surprising um yeah and the the migration kind of worked and and i think something else pretty fun about it besides just like building relationships and friendships with this infra team i never would have worked with otherwise which was in itself so rewarding and so fun um i think a lot of it was we got to influence the direction of comet and it's kind of weird because for an infra project a product team often cannot influence the direction they're more seen as a customer of it but what happened here was because we helped co-build it we built a lot of the abstractions

  24. 21:33

    that were then used by other teams that were also building on comet and you know for example a particular one i remember was like relay mutations so like you send api requests and you need some sort of consistency but there's actually this bug where like let's say there's like a button and you press the button, every time you press it, you send a post request. And every time you press the button, it toggles the state of that button. For a really nice UX, what you want is as soon as you press the button, the state should toggle, which means you need an optimistic update. But also, when the network request comes back, you need to also update the local cache to make sure it's consistent. And if you're just like mashing that button, what can happen is that the responses come in out of order, and you might end up with a different state than what was in the UI.

  25. 22:16

    And so I wrote a system to kind of queue up mutations. So it was like consistency at the cost of reliability. And this was kind of the right trade-off at the time. And everyone ended up using this. And this is how I met like Joe Savona and a bunch of the relay team that was working on the data stores. And it was just really fun. And this is something that since then and before then, and whenever I work with engineers, I just love when people go a layer deeper and just try to figure out like what's going on. And like, just because you're a product engineer, doesn't mean you can't build infra just because you're an infra engineer doesn't mean you can't go talk to users like just be curious about these other parts of the stack definitely and in your agency and getting ahead of comment or this big javascript rewrite you mentioned in your in your writing that you know getting ahead of that actually gave you a lot more control and also dibs on opportunities so when you talk about opportunities there is is this what you're kind talking about like building these fundamental pieces of prod infra that are impactful for everyone that's going to take on the new platform yeah yeah that's an example of it um and then

  26. 23:21

    maybe you know like a different kind of example is comet was a lot higher quality than the thing that came before because you know it's like a single page web app um so it can just feel a lot more polished but we hadn't yet figured out like what exactly quality means on the product side and so i wrote a bunch of notes trying to define that and then did a bunch of tech talks trying to just like teach people on other teams like here's what we learned about quality um and just kind of like setting up the conversation about that you mentioned a big headcount ask for i guess this migration to comment you know i feel like i'd be curious what that would look like in today with these New tools like CloudCode, Codex, etc. I'd be curious, like knowing what you know now about CloudCode, and let's say you were in charge of doing that same scoping for that same job, how many engineers do you think it'd take to do that 12 engineer job?

  27. 24:16

    Yeah, so I think overall to move Facebook groups, it started with 12 engineers, but I think at the end, it was maybe like 20 or 30 engineers or something for about two years. So it turned out to be a pretty big project. I think nowadays it would be maybe, I don't know, like five engineers for six months, something like that. So a fourth of the time and like more than a third or less than a third of the engineers as well. Yeah, yeah. Because you just like everyone would just have a bunch of quads running in parallel and, you know, just like let it cook for a couple hours. And then it comes back with a PR and then you give it like puppeteer or something so it can kind of see the UI and adjust.

  28. 24:53

    And I think that's pretty much all it would be. And then, you know, nowadays, the world we're in is so different from a coding point of view, because the models are moving so quickly that, you know, if you ask me this question in three months or six months, my answer will be totally different. In six months, the answer might be, this is actually one engineer. It's just moving so quickly now, it's really hard to do these estimates or to predict how they're going to change in the future. At this point in your career, you had mentioned something. maybe it was tongue-in-cheek I'm not sure you said this was when I learned to always present three options in VP reviews since 80% of the time they'll just pick the middle option and then it says your VP picked the middle option in parentheses what's the thinking behind that yeah this is this is very much tongue-in-cheek but maybe this is actually kind of true at meta at the time I think like decision makers that are far away from the work want to know that you did the due diligence of finding the right options and the right trade-offs and that you did the work but they also want to contribute somehow to the decision um so you know the middle option

  29. 26:03

    is kind of the easy way to do that it's a little tongue-in-cheek because i think not all leaders are like this a lot of leaders will do the work themselves they trust their teams more or less there's sort of there's so many different ways to operate um but at the time i remember we had like a pretty non-technical leader and this was kind of the way to to help her make make decisions I think at this point in your career, you had the most proximity you've had to senior management. You said you were reporting to a senior director at some point, and you were involved in a lot of huge scoping conversations.

  30. 26:36

    I'm curious, what's the downstream effects of reporting to someone so senior like that? Yeah, I think it kind of depends on the engineer, and it depends on the company. So for example, now I'm at Anthropic, and I think at Anthropic, it doesn't matter. It doesn't matter which level you report to. There's some of the most senior people at the company report to line managers. A lot of the line managers are like XCTOs and things like this. So it actually doesn't matter. So I think this is kind of like a meta. It's a very meta-specific cultural observation. I think there's sort of like two things going on.

  31. 27:12

    So one is you want at meta, you needed, as an engineer, you always needed to find scope. some of this you can find yourself and then some of it your manager helps you find or you know your tech leader the people you surround yourself with and you know like the pc process is like grueling like famously grueling at meta and so you just have to constantly talk about your impact and like scope is like the biggest contributor to that like if you have enough scope and you executed well that's impact that's the formula i think the other part was at meta no one had titles so even the most senior engineers their title is software engineer which actually really love and um you know like the labs had this with like member of technical staff and this is true at anthropic too but we actually go even further here everyone's title is member Technical stuff. It doesn't even matter if you're an engineer or a PM or a designer. It's all the same title. And I actually really love it because back to this point of working outside your lane and doing stuff that just should be done and are just good things to do regardless of what you are personally expected to do. I think this kind of culture just sets that up.

  32. 28:21

    So I mean, I see a lot of the benefits of the no titles. I could also see a case, though, where, and maybe this is only true for big companies, where you reach out to someone across the company and you say, hey, I'd like to, I don't know, do this collaboration. And if your title said director or whatever, it kind of is like a shortcut for them to understand how seriously to take you or how to interact with you, like if you're a designer or some other role. so i mean now anthropics got a bit bigger at this point do you see uh any of that i mean people probably all know you so maybe you don't see it as much yeah i think i think this is definitely the downside i think that upside outweighs it which is you have to earn trust and i think this is true like you know regardless of what company you're at you got to earn it and just because you did a cool thing before it doesn't mean that you have you should deserve respect well everyone deserve respect, doesn't mean that you should deserve authority at a new company in a new setting. So I think even for people coming in with manager titles, you kind of have to earn it. And in some ways, having a manager title makes it a little bit harder to earn this kind of trust.

  33. 29:31

    So as an IC, you got to do it either way. And I think just the lack of titles makes it a little easier. At this point in your career, you were kind of like becoming more and more of a tech lead or Uber tech lead. And I think you had a few stories where you scoped out work for hundreds of engineers and just thinking about how do you do that if there's so much to scope and you know you're one person how do you go about doing such massive scoping requests for leadership yeah this was a totally insane time so i worked a lot with uh tina shachman who's uh she she's now a microsoft um but she was she was my manager at the time and then uh yifei who's who's my manager after and there was a lot more investment going into facebook groups at the time so i think the org was maybe 150 or 200 people when i joined and by the time i left to instagram i think it was like 600 or 800 people something like that so there's this feeling from zuck that facebook apps should be all about communities and he just wanted us to go like faster and faster to make that a reality and you know as an executive your kind of biggest way to do that is to put the right people in charge of decisions and then uh to give them resources and so like in you know in the case

  34. 30:44

    of meta it's it's just engineers um you don't need like gpus for this you need like engineers to do stuff and so we pitched this project to uh to zuck and it was called communities as the new organizations that was like the internal name and uh he grin with just like a bunch of headcount to go towards this and so we just had to figure out what these people will do and you know for him i i get it it's like if the thing is important you got to put a bunch of people on it in hindsight what i would have done differently is i i would have put way less people on it because what matters is like solving people's problems and building awesome product.

  35. 31:18

    And this actually has to kind of be bottoms up and you kind of want to like slowly dial this up as you find product market fit for new product lines. You can't just do it all at once. And yeah, we just had to like scope out all the stuff. Like there were weeks where I had to, you know, do like a scoping doc for like, okay, we're going to put 30 engineers on this. Here's like three technical options. We're going to pick this one. Next project. We're going to put 20 engineers on this. Here's three options. We're going to pick this one. Next project we're going to do. And just like doing this like over and over again, just to have some sort of confidence that this thing isn't totally crazy.

  36. 31:48

    We did some baseline technical scoping, roughly matching the number of engineers to the project. And there's actually some pretty fun stuff. I remember we were trying to merge Facebook groups and pages at some point. like in the data model side. And this was this like very gnarly migration. It would have been, you know, to fully do it, this is like many years and like probably hundreds of engineers to fully do it. Because you have to do it across like the data model, the product layer, integrity systems, ad systems. There's just all sorts of stuff that has to get merged. And at the time, Yosef Karver, he just joined, I think he came from either Profile or Events, like a different org that joined forces with groups to make this happen.

  37. 32:27

    And he was working on it, But he was kind of struggling with a decision at the time. And I think he was even more senior than I was. But he just wasn't making the decision on the data model. And so I just took a bunch of people and I was like, all right, all the tech leads across the entire org, we're going to spend the next three hours on this day. And we're going to do this essentially game where we get to do architecture. And so I split everyone up into two teams. I think it was blue team and green team. I forget what these were. And we gave everyone this problem of how do you merge these data models?

  38. 32:57

    Here are the requirements. And then everyone had three hours in a whiteboard and they had to come up with a design. And what was cool is that going into it, we had no idea how we would do this because it just seemed too crazy of a problem. But the going out of it, we had two designs that were 80% the same. And so it was really obvious what we could execute on. And then the 20% where the differences were, it was very obvious where the risk was. And so we could kind of front load a little bit of that risk with a little bit of technical spikes. but also we can just start execution right away because we knew exactly what we had to do.

  39. 33:29

    Yeah, that was really interesting when I saw that. It was like a technical design competition with all the senior engineers and you just put people in separate rooms to come up with. I've never heard anything like that. When you proposed that idea for this design competition within the org, were people excited about it or was it like kind of a crazy idea? Yeah, it was sort of crazy. I mean, with this sort of thing, you just have to kind of do it. So I just I just kind of told everyone hey we're doing this and then I just put it on everyone's calendar and it just seems fun you know so like as an engineer you would want to do it but I think this is the sort of thing where like sometimes you need consensus and sometimes you just have to act and in this case because the path was unclear it was important to act but at the same time I didn't know how to proceed so we had to kind of get everyone together to build consensus and so I think it's like as a leader you're kind of always juggling these kind of two things After that experience, just being given hundreds of engineers and scoping things out, do you have any tips for someone who's like a tech lead who needs to do quick scoping?

  40. 34:31

    Anything that worked well for you?

  41. 34:33

    Boris ChernyI think the biggest thing, I think the biggest failure mode that I've seen is people just taking too long and getting too into the weeds.

  42. 34:39

    There's always an infinite number of details. Just start with a high level. You know, most technical scoping you can do within like 30 minutes, very, very roughly. And if you don't know the systems, like nowadays you would just use quad code, run in the code base and just ask it to like, you know, like what are all the systems involved? They can actually just do this for you. And this is another just totally insane change. You know, when I was doing this stuff, I never would have expected that AI could do this for me now. But now it does. In the past, I think that would have been my biggest advice though, is just time box it.

  43. 35:14

    Spend maybe 30 minutes, maybe like couple hours max If you have to like dig through code and stuff, definitely reach out to experts and just make a list of experts, talk to all of them, run the design by them. Don't just ask them for input, give them a straw man, because then they can actually like give you feedback on it. And it's something to go off of. Continuing with your career story, I think the thing that got you promoted to senior staff or IC7 was public groups on Facebook. So I'm curious, like the story behind your involvement in that and, you know, anything interesting that happened at that point.

  44. 35:46

    Yeah, so public groups was one of these projects that came out of this, this coping for, you know, like making Facebook groups more about communities. There's this like one very narrow change that we wanted to make that seems so simple on the surface, but it was so complex under it. It's just funny, like explaining this to anyone that wasn't there, they're like, wait, this is like a one line change. And I'm like, no, it's not. It's like, it was very difficult to pull it off. And so the change was, in order to participate in a public Facebook group, you no longer have to join first. So you're saying you can just view, like you have read access for all groups, essentially, or public groups.

  45. 36:21

    Read access for all groups, and for some groups, even comment access. So you can comment without joining first. Interesting. And this is a thing, you know, it feels like a one-line change. And it actually was a one-line change. But there's all these downstream implications that were so tricky. So one is, you know, in the data model, there's essentially a field in the database that was like group member. And we had this like really intense technical debate about like these people that are commenting in a group, are they group members? And the model also changed where before to join a Facebook group, an admin had to approve you.

  46. 36:55

    So there's kind of a vote of confidence that you can be in this group. And then after we switched to this model where to join a public Facebook group, you just essentially press like follow. And we actually went back and forth. Should it be join or follow? Like what's the right verb to describe this? But it was essentially follow because there's no reciprocal action. You know, if you follow a group, are you a member? Like, should you be stored in that same part of the database? And we just went back and forth on this for a while. And I remember at the time there was this like really senior engineer, Bob, he was kind of the most senior engineer in the in the org at the time and he felt very strongly that it should not be the same thing and he kind of pushed us pretty hard um even though it would be a ton of engineering work to migrate stuff to make it a different thing and so we did this work um because he was actually one of the early engineers on facebook group so he knew it really well and he felt pretty strongly there's a bunch of these other like downstream changes around uh like moderation and different new like admin tooling that admins would need to handle kind of the influx of spam and things like this and i remember at the time thinking like if anyone

  47. 37:56

    can make a comment the comments are just gonna be like filled up with spam and i had to hard i had a hard time kind of convincing people of this and so at some point i built this like monte carlo like visualization of how this would work and it was just like this like really simple kind of like scratch pad of you know like a comment comes in there's a certain probability of it being good or bad and then like what actually happens to comments and i think that actually did a pretty good job of convincing the integrity teams to jump in and help with this. And so at the time, the pages integrity team jumped in and they helped with a comment ranking because kind of ranking spam comments lower was the main technical mechanism to make it so people don't see these comments. So there's a bunch of these like pretty gnarly downstream implications of letting people participate. There's also this data model migration that we're doing. And so to do all this, we had to staff a big team to kind of make this happen. And so we hired a new director, Yamin, who hired a bunch of engineers there's a bunch of internal transfers so some of the most senior engineers from the org like uh there was like henry henry long uh joe chetham there's like a few other

  48. 38:57

    engineers and they were all working on this and i was the same level with them i was like a you know an ic6 at the time and so were they and i remember just feeling this kind of imposter syndrome of having to kind of direct them and kind of point them at work knowing kind of in my mind that were the same level even though levels are hidden you kind of you know you know through like rumors and stuff who's what you know in hindsight i think this is sort of like misplaced imposter syndrome because levels don't matter at all this is my current view and you know some people that are very junior can shoot way higher than that and just give you amazing results some people that are very senior can give you terrible results and so the level actually doesn't matter that much but at the time i remember just like really thinking about this and it it was just kind of hard to step into this role and eventually i did it and it's funny eventually the thing that got me the promo to ic7 was reversing this decision that bob did because he wanted to do this big migration and we did it and it was just Like, dude, it was so much work.

  49. 40:01

    It was like six months or a year of work or something, just migrating just hundreds and hundreds and hundreds of call sites to do this correctly. And then technically, I felt like actually what we did is we essentially just added an if-else at every single one of these call sites. In the process, we audited all the call sites. We kind of knew that it was safe, but we didn't actually change the logic. And so actually what we've learned is that, yes, member is the right field to model both followers and group members. This was the right decision. And so I pushed the same engineer that did this to then undo it.

  50. 40:33

    It was the right thing to push this engineer because it showed maturity on his part that he said yes and was able to do it. He also had the most context technically so he could do the best. And I think for Bob, he felt better about me as a technical leader because he knew that I was willing to push back on decisions that even senior folks make.

  51. 40:58

    Boris ChernyAnd in the end, this was the right thing. So we reversed the migration. It also took a long time to do it.

  52. 41:03

    But in the end, it made it so everyone building on this infra could do it. And everyone wasn't always constantly bumping into this, like, should I use this field or this field? Yeah, I'm curious about that part because you had a strong technical disagreement with Bob or Senior TL. But the outcome at the end is actually, it seems like it strengthened the relationship. He was a champion for you in your promotions. So I'm curious, how would you recommend going about strong technical disagreement in a way that doesn't hurt the relationship? I think the biggest thing is you have to earn it. Yeah, you just have to earn trust.

  53. 41:42

    And it could be as simple as what I did at the beginning, which is just disagreeing and committing and showing that I'm willing to do that and I'm willing to just execute if someone else thinks it's a good idea and I kind of look up to them. But also, you have to kind of show that you have good technical judgment. But you can't really do that until you're in trust. So take the time to get that trust first. And then on the imposter syndrome, leading those engineers that were also very strong. Do you have any advice for overcoming imposter syndrome? Yeah, just don't overthink it. No one really knows what they're doing at any level.

  54. 42:17

    No one really knows. We're all just trying to figure it out. It's easier said than done. Was there like an aha moment where you realized, actually, maybe I do got this or this isn't that big of a deal you know i don't i don't think so really there wasn't a single moment it just it kind of goes away over time and i think at every at every level it doesn't matter what level you're at you should always feel a little bit of imposter syndrome because if you don't then you're not pushing yourself hard enough at this point in your career you were like more and more of a tech lead and and therefore you're writing less and less code um and you mentioned that um you know at meta especially, there's cases where other functions are understaffed and you view that as an opportunity for engineers. So to be more product minded and maybe help out with the PM opportunities. I'm curious, when would you say that you should go that direction as opposed to escalating and say, hey, we need more PM support and trying to write more code instead?

  55. 43:20

    Yeah, you have to understand the trade-offs. I think this is the thing that I think a lot of people don't really get when they push for stuff. I think a very common failure mode is an engineer will push for an idea and then gets frustrated when no one else buys into it or wants to fund it. Or the organization just doesn't listen or their leader doesn't listen. But what you have to do is understand the trade-offs. And whoever it is that you're trying to convince, think of it from their point of view. What do they care about? What are the projects they're working on? What is this trade-off against? If they do this thing, are they going to see their work as a success. So I think that's really important. And first Some orgs at some times, they might not have PMs because it might just not be a very sexy project.

  56. 44:06

    And so it might be really hard to hire. And maybe the leader is already feeling that pain. Maybe for some orgs, they are trying to hire PMs, but there's actually just much more important things those PMs should go to. For other orgs, they might actually have too many PMs. And so actually, if you ask, that's the right thing to do because they could just take a PM off a less important project and put on your project because it's more important. So I think it's really important to kind of be situationally aware, understand the context you're in and understand how your decision makers think about it.

  57. 44:38

    At this point, and this is kind of the end of that part one of your story, you credit a lot of your success to, again, the side quests and like having these side projects or a running list of, you call them 20% time ideas. And I'm curious, do you have any tips on how to find opportunities for engineers? Yeah, I think at some point there was probably, I forget the exact numbers, but there was probably like 50, 100 engineers or something like this that were just like working on these like side quests that I like scoped out and like spun out of various points. And so pretty much like every week I would think of like some project, you know, just like on a run or something, or maybe like while I'm coding, I think of some idea.

  58. 45:16

    I'll just do some basic validation and then I'll just ping an engineer that I know and be like, yo, are you interested in this? And then I'll connect them with a couple other engineers that might be interested. And this kind of added up very quickly. I think that for me, one way that I really think about my work is how can I do less of it?

  59. 45:34

    Boris ChernyAnd as an engineer, our superpower to do this is automation. The most tedious stuff you can automate.

  60. 45:40

    And this is something that's like really hard actually for other fields. But for us, it's this incredible thing that we can do. And it's something a lot of engineers don't really do for whatever reason. But we should all be doing it all the time. It's so important. It's leverage. It's like free leverage. And so a thing I often did was every time I did a code review, if I was commenting about a particular kind of issue, maybe like a stylistic issue or something, I literally had a spreadsheet where I would tally up that issue. And I posted kind of the link to that pull request. And then I would do this for every code review.

  61. 46:11

    And then when I commented about the same kind of thing more than a few times, I would just write a lint rule for it to just automate that. So this is kind of an example of leverage. So, and at some point I automated most of my code reviews because like, I just had a, you know, like a flock of lint rolls that were just like doing all this work for me. And I think this is actually kind of similar because all these side quests, it was improving prod infra and dev infra. And these are things that slowed me down in my day-to-day coding. And this is why, like, when I was doing less coding, this was actually very dangerous because as an engineer, you need to be anchored to reality. You need that intuition. And if you're not in the code anymore, then you lose it very quickly. It's a very dangerous place to be in.

  62. 46:50

    and so for me when i was in the code a lot there was all these really cool ideas that came out of it and it was leverage not just for me but for the whole engine team because again of this principle that if you have a problem probably other people have it too and you know i did like yc back in the day and in yc they teach you that first you build for yourself you have to build like awesome stuff you have to build stuff people love but if you're trying to find a market to build for you start by building for yourself and that's a pretty good indicator other people probably have that the same problem yeah there was a quote that you wrote i thought was really good you said better engineering is the easiest way to grow your network and gain influence as an engineer so i could totally see um you had like your scope of influence was so much further than just the code you're writing because you're passing people all these great ideas and you know overseeing them it's the the leverage is really uh insane absolutely yeah and and it's also just like an example of being contextually uh was it situationally aware um because you know i met at the time engineers were evaluated in the performance cycle uh we looked at project

  63. 47:54

    impacts people do you remember the direction direction and and excellence and eng excellence yeah and the eng excellence is a thing that a lot of engineers struggled with and so you know i was you know one of the people that came along and was like hey if you want to do eng excellence here's a project and people are already incentivized to do it so they see it as an opportunity and i think this is just like i don't know i think it was a chance for me to kind of hone my skills about working with people where you never ever want to tell anyone what to do in any in any context in a personal context in a work context everyone hates being told what to do. But if you understand what a person wants, then you can go to the right person with a right opportunity and they see it as an opportunity. And this just always works better for everyone. When I think about these 20% time ideas, I mean, there's the top of funnel finding the ideas and then there's actually executing on them, getting someone to do it or whether it's yourself or someone else. The thing I'm interested in is the top of funnel. How do you source so many ideas as an engineer for these side quests that are impactful? Just common sense.

  64. 49:05

    I don't know, maybe spidey sense. I don't know the right word. Spidey sense. Like how so? Like what's a concrete example? Yeah, like a really concrete example is, you know, like I think literals are a good one. Maybe another one is there were all these cases where we had SEVs because Facebook groups were not being tested with very large sets of Ahsoks. And so like, for example, and Ahsok kind of like, this is kind of like a Facebook way of saying like, you know, rows in a database. So you could imagine like a Facebook group with like 10 million members. Like no one's ever tested this. There's no like unit test for this.

  65. 49:40

    You only see it in production. And when I looked across the org, I started seeing similar cases of this. There's, for example, like if you have a profile with like 20 million followers, a lot of stuff breaks, but obviously like no one tests this in an automated way just because it's kind of annoying to write a unit test with this much data and so there's a bunch of instances of this and then I pitched an engineer to build a way to write unit tests for large data sets so you know like a really big object like a group with a lot of members a profile with a lot of followers an event with a lot of attendees and I think this infra still exists and it's you know prevents a lot of issues. And this is something where you can scope it. And then he brought in a bunch of other engineers to do the work and help him out with it. So I guess just think about the problems that you actually hit day to day. Got it. Okay. So think about the problems. And if you're experiencing that problem repeatedly, then it's time for automation. And that's like a great, better engineering project. Yeah, exactly. Exactly. Like if you hit the same problem, like two or three times, you should probably kind of look around, see if other people are hitting that

  66. 50:43

    project hitting hitting that problem too the last leg of your career at meta um this is where you got the e8 promo i know that um you moved orgs so you did all of your growth in facebook groups and then you moved to instagram i'm curious uh what's the story behind you moving orgs to instagram at the time um i was dating my wife and i were still uh dating and um she was living in Berkeley I was living in SF and at some point she's like I found my dream job and I was like sweet awesome and then she was like we're gonna have to move and I was like okay great we've been dating like three months at the time and uh we were kind of deciding why should we like keep dating and um and so she was like yeah we would have to we'd have to move if you want to like keep dating and I was like yeah okay I do oh let's let's do it and then so the job ended up being in like rural japan like it was sort of like middle of nowhere and i was trying to figure out like how do i do it because i really like the work that i was doing and so first i talked to uh like facebook groups leadership and tried to set up like a japan office out there for for facebook groups that didn't really work for you know a bunch of kind of organizational rules um then i

  67. 51:56

    tried to do this with the vr org and it was like working but then the person that was sponsoring it left to go to i think like youtube or something uh and then at the time will bailey reached out and he was in the instagram tokyo office he was part of this like landing team for for instagram and he was like hey i kind of want to grow this office do you want to be part of that and i was like yeah let's let's do it and i didn't know anything i i didn't even have instagram installed at the time i'd never used it in my life and um i so i i said yes and then i immediately downloaded instagram and then like i moved like i think like the next week or something um so pretty much or or actually you know i think it was like a few weeks that i had in the u.s but i i moved out pretty quickly um and i actually really fell into love with the instagram culture um it was very different than facebook culture a big emphasis on building awesome products on on shipping stuff that people don't use on thinking about things not just from a data point of view but also from a human point of view and an experience point of view and you can see this in the app and in the craft that goes into it it's just completely different engineering and product and design cultures between the two

  68. 53:08

    companies um so i learned so much being being on that team and that was such a fun journey you mentioned the the unship part um what what is that unshipping is the idea that if you just add features to an app it's cool for some small percent of users but it's actually bad for most users that don't use the feature. And so you can think of an app where you only add features to it and over time, the features accumulate and they add up. And if every feature is used by like 10% of people, the average user sees a bunch of features that they don't use. And so it seems cluttered and confusing. And when they open the app, they don't know what to do. And with software, fundamentally, the screen is a limited size. That's the limited real estate. It's a limited resource that all the different features are competing for. And so by adding a feature that's taking the opportunity away from you know a different feature the person could have used and so unshipping is the idea that you have to meet some sort of usage bar and if a feature doesn't meet that bar then we just delete the feature and a small percent of users are going to be pissed but it's actually great for the majority of users and on average it's really

  69. 54:18

    great for everyone at this point in your career I mean you moved you didn't just move orgs you moved across the world to work at Instagram. And I think when you're such a senior tech lead with a lot of credibility in your existing org, it's much easier to get things done or at least influence others because they say, oh, I know Boris and I know his past work. But I'm curious, how did you build up credibility at Instagram when you were so far away from everyone else? i think a lot of the credit early on this goes to like nam who was nam guyan he was the he's still the vp of avenge at instagram and and jeff huang um who was my director at the time but he now he's a vp um and you know will i think there was a lot of connections made by these people so you know for example nam was like hey you really like doing you know working on code quality and like tech at reduction, you know, which we call, you know, better engineering at meta. And he kind of connected me with the people working on it. And this was like Lucas Camera and Gabe and a bunch of this, a bunch of these other folks that were working on this stuff. So those connections were really useful. And then I think a lot of it was, I just had to earn the trust again. And honestly,

  70. 55:36

    this is a healthy thing to do. And I think this is one of the really awesome things about meta engineering culture, that there are not titles. And so you kind of have to constantly re-earn your trust. And, you know, even if I was a great engineer in the past, I may not have been a great engineer at Instagram. And if I wasn't, then I don't deserve influence. I don't deserve to have a really loud voice that people listen to. So I had to earn. along with everyone else and so my first few weeks i spent a lot of time like meeting people mapping out the org mapping out goals writing a lot of code so i can get to know the code base but then in japan it was totally different because you know like 4 p.m tokyo time was like or it was like 9 a.m tokyo time was like 7 p.m new york time there was just like no time zone it was rough yeah um but it was also great because i think in the few years before i was doing so many meetings and docs and all this stuff i just wasn't coding um so i just started to feel pretty unhappy because like as an engineer we code that's that's what we do like that's that's the reason we picked this job is you like for me like when i write code i have an emotional relationship with

  71. 56:43

    the code and it's something that i think about when i'm really deep in a problem i dream about it so it's just so important for me to code and when i wasn't doing this for years it was sort of rough And I think I was starting to burn out of it. And so actually, it was a gift to be in this time zone where I literally couldn't do meetings because people weren't awake or didn't want to do 9 p.m. meetings just to talk. So I didn't do any more one-on-ones. And this is actually still something I don't do. So I still don't do any standing one-on-ones. And I just could spend a lot of time coding. And what I realized is I was one of a few engineers at Instagram at the time that was coding this much.

  72. 57:19

    um you know people code but people don't code that much because there's all the stuff that fills up your time there there's meetings and you know docs and all these other obligations and i was able to do a lot of stuff that i think everyone else wanted to do but just didn't have time um and this was kind of a superpower in in that org and pretty early on nam connected me with uh with joe pamer who's still a good friend and and mentor and um he's he's at google now and we just started talking about like you know at the time the codebase was written in python and uh it was sort of rough for a lot of different reasons and really the codebase should have been moved over to hack which is the main facebook monolith that you know and this is where all the language support is there's so much infra hhvm is just this absolutely phenomenal web serving stack. There's nothing else like it in terms of like efficiency. If you're using GraphQL, you absolutely have to use it because it's just so optimized for this stuff. And Instagram just wasn't using any of this and engineering was suffering. Like in the really early days, you know, like when like Mikey was at Instagram, really basic decisions were, the basic principle

  73. 58:31

    for decisions was do the simple thing that works. And this worked really well, but then at some point it stopped working. Once you get to like a thousand engineers, 2000 engineers working the code base and you know many many years of tech tech and products built on top of each other you kind of have to do you have you have to make slightly different decisions than you would have made at the start and so even if python was absolutely the right decision at the beginning it was not the right decision by the time i was there and this was painfully obvious as an engineer and i think a lot of other people saw this but what stopped them was just the amount of work it would have taken to move this stuff over and so i just started like scoping this and kind of figuring out what it would take and so i started by finding the people that would disagree the most. And there's a bunch of these like infra old timers that just thought this was like a terrible idea and would never work. And so I went to talk to them first. I like food in New York.

  74. 59:19

    Boris ChernyAnd, you know, we got a bunch of beer and just got to know them as people before we even talked about the technical problem. You have to build trust. So I had to kind of get to know them as

  75. 59:27

    people. And this was so valuable. And this is still a lot of my friends today. And after building this trust, I also learned there was a bunch of other people that actually did want to do this and were kind of afraid to say it. And so these people came out of the woodwork too. And eventually we started scoping this and this project kind of spun out and it's actually still going today and there's many engineers working on it. But it's funny because at Facebook, I think this kind of problem rarely happens because the org is so engineering driven. At Instagram, there were many problems of the shape because the org is very product driven.

  76. 1:00:00

    isn't just a lot of time for those engineering-driven initiatives. This project, at some point, I mean, you got it off the ground, kind of this bottoms-up initiative. And then at some point, it became high-pray enough where it needed that in-person support of someone that wasn't in Japan. And I understand that Jake Bullam is someone that you helped onto the project. And he kind of took more of a lead role, but location-based and close to everyone else, so he can help shepherd it along. um i'm curious your thoughts on that point of delegation like when do you decide when to delegate something so big and when do you decide oh i need to still be around and how do you navigate that trade-off jake is amazing we're we're you know we're friends every time i go to seattle we we hang out and he's just one of the best engineers i know so it was obvious that he would be a good owner for this the same rules of delegation apply as always so you know you delegate you never delegate the thing you don't want to do that's kind of the most important rule you always delegate the thing you do want to do and that you know well because then you can monitor the progress and make sure it's going well um and there's this really great book uh high output

  77. 1:01:10

    management by uh andy grove he was a you know old intel ceo and it's just like the most boring sounding book ever but it's just like the best and this is one of the pieces of advice is delegate the thing that you like to do so then you can monitor progress and so yeah it's it's kind of the same thing you kind of delegate a little bit you check in the more trust you have the less you have to check in and with jake he's so good technically and so proactive there's just very little i had to do it was very much on track from the start and so i think this coupled with some other work large migration to kind of graphql or modernize some of instagram data model ended up getting you promoted to this principal level before you left meta what was the story behind the promotion or anything that you might share that promotion i think will in in a one-on-one that i had with will my manager he was like hey like i think you should like we should put you up for ic8 and i was like cool and that's pretty much it i hadn't really thought about it yeah it's not something i really asked for um i think will was just like does a great job of recognizing people and kind of advocating for his team and he felt that i was ready and yeah that was that

  78. 1:02:19

    at any point in your journey? Because it sounds like you were impact and impact only and growing and your leverage and your credibility, everything was growing. And then the promos were this lagging thing where they just, oh, they kept happening as a byproduct. I'm curious though, to structure your thinking about how to get more leverage or kind of have more impact. Did you ever think about the levels or would you say that it's not good to think about like oh what's the next level more think in terms of just i don't know leverage or impact or something else you have to think about what levels are for right what levels exist so that the company can communicate to an engineer what it is they expect the engineer to do it also exists so that there's some accountability so for example in performance reviews the engineer at a particular level you can compare them to another engineer at that same level and also sometimes on the finance side different engineers or you know the pid costs a different amount so you can kind of think about what kind of portfolio you want so you know levels it kind of exists for company reasons and not for engineering reasons and for me it's just never the way that i thought about any of this like the thing that i like to do

  79. 1:03:32

    is work on interesting projects i like to figure out the problems and solve them i like to just make the things that people use delightful like the products that they use delightful this is what really motivates me so for me this was just never really the way i thought about it and i don't know like my first week at facebook i was like an ic4 and i was i had like all these ideas for stuff that we should build and so i just started writing like product briefs and then i remember i went to like the vp of like connectivity and like pitched him some And he just didn't understand it at all and thought it was terrible. And then that didn't work. And then I had another idea for Messenger, and I went and pitched that, and they also didn't do it. But then they actually did end up building it a couple years later, this particular idea. So yeah, for me, it's just like, what are the cool ideas? And how can I help? And who else is interested in this stuff? And how can we build cool stuff?

  80. 1:04:23

    You left Meta to go to Anthropic, and I'm very curious, what was your thinking about going to Anthropic? I remember using ChatGPT for the first time when it came out. This was, you know, this was like years ago. And I remember I was in Japan. I was the only engineer in my town. I was the only person that spoke English in my town. And there's just no one that I could talk to about tech stuff. And I remember every morning I read Hacker News. And I remember using ChatGPT and I was just like blown away by the product. and just this feeling that it gave me of just nowadays we take it for granted but you know lms are just magic it's just this absolutely incredible technology and i think now my view of it has shifted it's like to me it's lms are this kind of alien life form that we get to nurture and we get to bring into existence it's not just a technology and i'm also a really big reader i read a lot of sci-fi that's kind of my my big genre um and so at the time i was like oh my god I have to work on this stuff and you know what are what are the labs that are that are working on it so I went to talk to friends working you know at various labs and I feel like when I came to Anthropic I remember my first lunch this was with Ben Mann who's one of the founders here and

  81. 1:05:37

    we were sitting at lunch with like him and a bunch of other people and I mentioned this like weird like sci-fi book that I like it was I think it was like by Greg Egan or something it's like hard sci-fi author and I've literally never met anyone that's read this book and at the table I kind of gave an anecdote from it and everyone around the table was like oh yeah yeah that book was good but like what about this other book and so it was just like this group of people of these like intense sci-fi nerds these people that think so deeply about these same problems i care about and i i think the other part for me was how you're reading a lot of sci-fi you kind of get a sense of you know in a very speculative way how this thing can play out ai is just so transformative to society I think it's hitting engineering first and it's going to hit every part of society it's going to affect everything and we're seeing the very first waves of this right now and I think I just you know like I I read enough that I kind of knew the bad ways that this can play out and there can be so many ways this thing goes wrong and so for me anthropic was just the obvious choice because I wanted to be at a place where in the tiniest way I can make sure this thing goes well which is as

  82. 1:06:45

    an engineer this is all i can do um and it's funny i think like before i joined i sort of took safety seriously like you know it's like a thing that can happen and you know at meta it was always seen as this kind of tax where integrity teams and you know and so on they kind of like they get you to do stuff but it's not really the thing anyone's really excited to do because it's not the product and so this was kind of my view of safety before but at the same time i kind of speculatively knew that it could be kind of a very different thing and now being at anthropic i know it's completely different and i see every model that comes out and kind of the new risks that come with it and how as a company we put our money where our mouth is you know in terms of like how much compute goes to safety research and alignment research in terms of like how many people work on this we've held up model releases in the past because we did not know that they were safe and so we had to make sure that they're safe before.

  83. 1:07:38

    And I think also like with Opus 4, the risks just went way up. Like if the model can design, you know, like bioviruses and can do these things that are like really, really dangerous. And it's not just like, you know, like the baseline risk is something like election manipulation. This is something that, you know, like at Meadow was a really big deal. This is sort of a risk for kind of a low level model as the models get more dangerous. dangerous the risks get higher and very quickly you get into this territory where people can use the model to build things that are actually dangerous for humanity like not not just like you know like uh you know politics in a country but like literally the existence of humanity um and these this is not sci-fi this is a real risk today that we actively have to fight um and so for me just like getting to be a part of this and getting to contribute a little bit this is just what put me over. What about when you joined, when you think about the engineering cultures that you came from compared to Anthropic, were there any really jarring differences?

  84. 1:08:37

    Yeah, I would say the two things. One is still being a startup, there's a lot of common sense. And it's funny, I think this is something every big company loses. And it's sort of this thing you have to fight. Because over time, the decision makers get more distant from the impact of their decision whether it's the product or the people or whatever so you have to come up with all sorts of processes to bring them closer and to improve the quality of decision making but still being at a startup uh everyone just has common sense and generally just does the right thing so i don't have to spend a lot of time convincing people to do stuff if we should just do something it's it's obvious and everyone just does it i think the second thing is for me personally, something that I learned over time motivates me the most is mission. It's so important. And it's the thing that keeps me going to work every day, excited to go to work every day. It's the thing that makes me like code on the weekends because I want to do it, not because there's a deadline. And so I felt this a lot actually in Facebook groups. It was very mission oriented. And for a long time, Jen Dolsky was the VP and she used to be the CEO of change.org. And

  85. 1:09:41

    so she ran all the Facebook groups like a nonprofit. She had like a theory of change. and this theory about how you want to connect people to like-minded people, to form communities. And it was just so motivating to work on that. And I feel like at Instagram, you know, maybe because of the geographic distance or maybe something else, I just never quite felt that same mission. But I feel like at Anthropic, I feel that so strongly. And that's probably the most exciting thing for me. I know that, you know, your credit is the creator of Cloud Code. And I think you've you've told that story in many places but i'm kind of curious i was talking with a friend about what the environment was like when cloud code came and there were actually a lot of competing existing tools that hooked into the model and i'm curious what is it that was different about cloud code that kind of won out and just caught like wildfire internally at the time coding looked very different if you thought about ai coding people thought about autocomplete. I think there was some very early agents, but it was kind of a secondary thing next to the autocomplete. And oftentimes it was used for Q&A. It wasn't really used for coding. And so

  86. 1:10:54

    when people thought about AI for coding, it was just a completely different product that you imagined. It was like tab to autocomplete. And I thought that's what it was. And I thought that was kind of the state of it. And then Ben, who was my manager at the time, he pushed me to think a little bit bigger. And he, I think, really internalized because, you know, he was there from the beginning of Anthropic. And, you know, he was like at other labs before. And so I think he really understood the scaling laws kind of internally about how quickly the models are

  87. 1:11:26

    Boris Chernyimproving. And so he actually pushed me really hard to be like, don't build for the model of now um and so honestly for a long time quad code was not a great product and even when it was used

  88. 1:11:39

    internally i used it for maybe like 10 of my code or something like this you know use it sometimes but it really just can't do most things because the model is not capable enough and then at some point we released uh sonnet and opus 4 and i think this was maybe march of this year and the product just worked and we saw this in kind of the usage data and i saw this in my own coding I started to be able to use it for probably like half of my code. And this was totally borne out because this was actually like literally six months after starting the project. This was the timeline. And, you know, at this point, most of quad code is written using quad code.

  89. 1:12:14

    I think it's like 80 or 90%. If you look at teams at Anthropic, there's some teams that, you know, like 90% of their code is written using quad code. This is not just our team. and if you look at the impact on productivity even though anthropic has tripled i think since the start of the year uh productivity per engineer measured in you know like poor cause we were talking about this before has grown like almost 70 percent per engineer because of quad code and so you know like as a product person i usually think a step ahead and i think being at a lab you have to actually think kind of differently you have to think a step ahead um not two steps ahead. But also, you have to be really aware of the model and kind of the exponential that we're on. Did you see the recent interview with Karpathy? I haven't had a chance to watch it yet.

  90. 1:12:59

    Okay. So one thing that he said in the podcast was kind of like, you know, pushing back a little bit because basically vibe coding, although it has a lot of miraculous results because of what it can generate, there's also a lot of like, he said like slop or, you know, there's like some drawbacks so i'm curious like how do you think about that when the model produces um a lot of code but maybe it's not exactly how you'd like it or maybe the end result has some non-obvious problems with it ai coding is a tool like every other tool that we use and you have to learn how to use it so i think one of the most you know karpathy obviously like he knows how to code i think a lot of people that are new to this kind of tool they tend to just ask it to do stuff that's a little bit too big, or they hold a different bar for the model's code versus their own code. And so something that I do for the team is for the quad code team, we have the same exact

  91. 1:13:57

    Boris Chernybar, regardless of whether the code was written by the model or by a human. And so if the code sucks, we're not going to merge it. It's the same exact bar. And you just ask the model to improve

  92. 1:14:06

    the code and make it better. I think there's also kind of different ways of wielding these tools. Sometimes you want to vibe code. And this is really important for throwaway code and prototypes, code that's not in the critical path. And I do this all the time, but it's definitely not the thing you want to do all the time because you want maintainable code sometimes. You want to be very thoughtful about every line sometimes. So the way the problem, depending on the problem, you want a different approach. And so there's like a set of approaches that I'll use, like sometimes I'll vibe code stuff.

  93. 1:14:39

    This is actually quite rare. It's actually mostly for like prototypes and things like that, that are throwaway code. Usually I pair with a model to make to write code and so first we align on a plan you know so this is like shift tab and quad code to get into plan mode and first the the model will make a plan then i'll see the code and then i might ask it to improve the code or clean it up or so on but it's a very involved process i'm pairing with the model we're working together to to write this code and then sometimes i'll still write the code by hand so you know there's some parts of our core query loop where i have very strong opinions about like you know things like the names of parameters or kind of like on which particular line of code is some some code is and so for this i'll still write it by hand i think the the thing though is the models i think are still overall not great at coding i think there's still so much room to improve and this is the worst it's ever going to be but it's just insane to me to think a year back where the state of ai coding was you know like type ahead and it's just a completely different world and you sort of think about like where this is headed and kind of what's about to happen and what this looks like over the next few months and

  94. 1:15:49

    few years. And yeah, I think for me, what keeps me really excited about it is just having the context about this trajectory that we're on. When people hear cloud code, they think about coding. But there's many use cases outside of just software engineering, like querying data for data scientists. What are your thoughts when you think of cloud code for everything? It was the craziest thing when I walked in. I remember walking into the office, maybe it was six months ago or something, and our data scientist, Brandon, had cloud code up on his computer. He sits next to us. And I'm like, dude, what are you doing? Are you trying it out? And he's like, no, no. I'm like, it's doing my work. And I was like, what?

  95. 1:16:26

    so he like he figured out how to like use a terminal and like how to install node.js and then he installed quad code and then it was writing a bunch of sql and like doing analysis for him and now when i walk by kind of the the data scientists that sit next to us every person has like a bunch of quad codes up at the same time it's not just one anymore and they're doing all sorts of stuff they're like writing sql and you know kind of crunching data they're writing dbt pipelines and the writing code um so i think there's all these applications outside of coding and it's just so cool to see how people are are using this for all sorts of stuff and there's even like totally non-technical users like half of our sales team at anthropic uses quad code to do their work like they they can like connect it to salesforce and they can connect it to different data sources and you know like they can do their work this way so it's just so cool to see this is not how we designed it this is not the intent when i hear cloud code i also think of codex one of the biggest competitors and i'm curious what are your thoughts on the competition with codex and open ai what does cloud code do better um and also i'm curious like the stickiness

  96. 1:17:37

    of these ai products like you know what keeps people in cloud code versus codex for instance you know i'm not totally sure i don't at first time i don't really use the other products okay okay for me you know like the thing i tell the team is like it's so easy to get sidetracked by you know looking at competitors and i think this is something that i saw that big companies fall into this failure mode a lot where because there's so many competitors and it's so easy to see the thing you could build by just you know copying it it's a little bit harder to come up with novel ideas and things that solve the user need better.

  97. 1:18:16

    And so the thing that I try really hard to do and the thing that I nudge our team to do is don't get sidetracked by all these other products. There's always gonna be a lot, and the more there are, the bigger a sign of success that is for us. And the thing we stay laser-focused on is solving our problems and solving anthropic researchers' problems and solving our users' problems. Coming to the end of the conversation, I just want to ask a few career reflections. One thing I was curious about when I was looking is that you didn't have a CS degree or a computer science degree. And you've, yeah, you've become such a strong software engineer. And so I was curious, is there any part in your career where, you know, it might have held you back in any way? Or do you think it's not necessary or relevant? Yeah, I studied economics, and I actually dropped out to start startups.

  98. 1:19:08

    um you know for me anything that you do you learn on the job and i think programming is just such a practical skill i couldn't imagine you know the kinds of things you learn in school and like you know if you're if you're like in a data structures class or something you're like learning this but you haven't like built a product how is it relevant at all um so i don't know i think my recommendation would be to people like learn coding practically it's a very practical skill and then if you want to go back and learn the theory after go do that but personally i've never felt like it it's helped me back at all what about productivity tips so i saw that you said you work roughly nine to six every day and you only type with two fingers but your output is ridiculous i mean you have all these side projects and of course your main stuff's no joke so what's your top productivity tips or how do you you've maintained that yeah i think i think nowadays my tips are very different than what i would have said a couple years ago nowadays the tip is just learn how to use quad code and learn how to run a bunch of quad codes to do stuff like um you know we launched plugins like a couple weeks ago and daisy who's one of the the engineer that built it she just had her clods like set up

  99. 1:20:20

    asana board make asana tasks and then she had a swarm of like 20 clods just like build plugins over the weekend and uh you know she ran it in like a docker container dangerous mode and it was done after a couple of days. And this is the kind of thing that is the future of engineering. And I think nowadays, when we talk about tips for productivity, it's learn how to use clod in order to automate toil, and also how to use a bunch of clods together to do work. So you're kind of orchestrating instead of manually writing code. I think years ago, my tips would have been really different. It would have been a lot more prosaic than that, you know, like about like blocking off time and things like this yeah it's it's interesting with cloud code i wonder what that does for you know the famous um like maker's schedule versus like manager's schedule it feels like what you just said is that software engine is becoming more like a manager's style of working where you got a fleet of these cloud codes and you're not you don't need deep focus to move forward you need context switching across like 20 different things um so do you no longer have big focus blocks for coding or what are your thoughts on that not as much i tend to code on the

  100. 1:21:35

    weekends also um so i love the quiet time um but yeah otherwise i'll kind of start every morning i open quad code and um you know like the mobile app it's like there's like a code tab in quad now we just launched this this week but we've been kind of using it for a while and so every morning i wake up and I start a few agents to just like start my code for the day and it's crazy because I if you'd asked me like six months ago if this is how I would code I'll be like no are you like are you crazy like how can you code in this way but it actually works like this is here and it works and this is how I write a lot of my code now and I'll start a few agents then you know when I get to a computer I'll kind of check in on the status sometimes I'll just merge it if the code looks good sometimes I'll like pull it locally and kind of teleport to to edit a little But yeah, and I think like you're going to talk to Fiona later.

  101. 1:22:21

    And I think for her, from what she told me, she hasn't coded in, you know, like a decade. But she's writing code like multiple times a week now. Because as a manager, even though her schedule is insane, she can still use the mobile app and she can use web and, you know, she can still open a terminal to just kind of write code for her. So, yeah, it's just crazy. Like we get to live through this transition where the thing that we do and like the thing that I grew up on, it's just totally changing. And yeah, it's just so cool. Like it's becoming accessible to everyone. And then last question for you is knowing everything that you know now in your career, if you could go back to yourself when you just entered the industry and give yourself some advice, what would you say?

  102. 1:23:09

    Just use common sense. i think there's a lot of stuff in a especially in big companies that pulls you away from common sense there's a lot of this like organertia things are this way because they have been this way there's a lot of misaligned incentives there's also a lot of good things but there's these things also so it's just really important to use common sense for this and you know early on in my career i was kind of starting a bunch of startups and worked at a lot of startups and I think there too it's the same thing kind of use common sense to figure out what the market wants and what users want to build it so yeah just like trust yourself and and develop your common sense awesome well thank you so much for us for your time really appreciate it yeah thanks thanks for listening to the podcast I don't sell anything or do sponsorships but if you want to help out with the podcast, you can support by engaging with the content on YouTube or on Spotify. If you want to drop a review, that'll be super helpful. And if there's any guests that you want to bring on to, please let me know. I feel like sourcing very senior ICs.

  103. 1:24:18

    There's no well-studied list out there on Google that I can just search this up. So if there's someone in your org or at your company who you really look up to and you want to hear their career story, let me know and I'll reach out to them.

More interviews