The Pragmatic Engineer - Being a founding engineer at an AI startup
Episode Date: December 3, 2025Brought to You By:• Statsig — The unified platform for flags, analytics, experiments, and more. • Linear — The system for modern product development. —Michelle Lim join...ed Warp as engineer number one and is now building her own startup, Flint. She brings a strong product-first mindset shaped by her time at Facebook, Slack, Robinhood, and Warp. Michelle shares why she chose Warp over safer offers, how she evaluates early-stage opportunities, and what she believes distinguishes great founding engineers.Together, we cover how product-first engineers create value, why negotiating equity at early-stage startups requires a different approach, and why asking founders for references is a smart move. Michelle also shares lessons from building consumer and infrastructure products, how she thinks about tech stack choices, and how engineers can increase their impact by taking on work outside their job descriptions.If you want to understand what founders look for in early engineers or how to grow into a founding-engineer role, this episode is full of practical advice backed by real examples—Timestamps(00:00) Intro(01:32) How Michelle got into software engineering (03:30) Michelle’s internships (06:19) Learnings from Slack (08:48) Product learnings at Robinhood(12:47) Joining Warp as engineer #1(22:01) Negotiating equity(26:04) Asking founders for references(27:36) The top reference questions to ask(32:53) The evolution of Warp’s tech stack (35:38) Product-first engineering vs. code-first(38:27) Hiring product-first engineers (41:49) Different types of founding engineers (44:42) How Flint uses AI tools (45:31) Avoiding getting burned in founder exits(49:26) Hiring top talent(50:15) An overview of Flint(56:08) Advice for aspiring founding engineers(1:01:05) Rapid fire round—The Pragmatic Engineer deepdives relevant for this episode:• Thriving as a founding engineer: lessons from the trenches• From software engineer to AI engineer• AI Engineering in the real world• The AI Engineering stack—Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
Transcript
Discussion (0)
I did my internships from 12,000 people to 1,200 at Slack and then 300 at Robin Hood.
And I found that every time I went down, roughly an order of magnitude, I felt way more ownership.
Obviously, the next step is joining a two-person company and then starting my own.
The stack at Warp actually first started out with TypeScript.
And then two to three months in, we decided to scrap that repository and just rebuild everything in rust.
I have to ask why.
It was for performance reasons, and it was also speed of development.
There was also a very strong sentiment a month.
developers that they would only use high-performance terminals that would build low levels.
How do you think a product engineer versus a founding engineer defers?
I think founding engineer counts.
What does it take to be a standout founding engineer?
Michelle Lim was the founding software engineer at AI startup Warp,
and is now the founder at her own startup, Flint, where she is now also hiring founding engineers.
In this conversation we cover, Michelle's thinking process to take a risk and join as engineer
number one at a little-known startup when she had better, paying, and safer options.
thriving as a founding engineer and why you only to pick up work that no one else wants to do.
Figuring out if you're more of a product first or code first engineer so you find your place better.
How Michelle's current startup builds autonomous websites and uses AI coding day-to-day and many more.
If you're currently working at an early stage startup or want to work one day at a place like this
and want to know the tactics on how to do well in these environments, this episode is for you.
This podcast episode is presented by Statsig, the Unified Platform for Flags, Analytics Experiments and more.
Check out the show.
We'll still learn more about them and our other season sponsor.
So, Michelle, welcome to the podcast.
Thanks, Gorgay.
I'm so glad to be here.
It's awesome to have you.
How did you get into software engineering?
So I actually started in college.
I first joined an entrepreneurship club, and I was working on a bio company.
But every week, I saw that the companies in my club that were making the most progress
were people who had programmers on their team.
So I felt like, oh, like, if I wanted to move faster in entrepreneurship, I wanted to
actually build the thing myself so we can move a lot faster.
So I took my first computer science class ever in the spring of my freshman year, which is
very late compared to, I think, most of your listeners.
Yeah, it's never too late, is it?
Never too late.
And then from there on, did you move over to computer science?
Did you start studying at a university or did you do it on the side?
Yeah.
So at that moment, I actually then started majoring in computer science.
I really fell in love with computer science, especially the debugging was my favorite part,
which is really funny for most people, I think.
So the back story was that I almost became a medical doctor.
Like I grew up in Singapore, yeah, where that was the thing to do if you're good at the sciences.
And I really fell in love with medicine because I really liked diagnosis, like differential diagnosis.
You know, someone comes in with, you know, a swollen left leg.
you're like, oh, that could be a problem of your right lung.
And I thought that that was so cool.
Or based on the vision that you're seeing in your eyes,
it could be a very specific part of your brain that was malfunctioning.
So I really liked the debugging part of my computer science assignments
where I started seeing that there was always a pattern in which the bugs occurred.
And then I could trace it back to the specific lines of code or systems that led to it.
So I felt like almost like I was a doctor for the computer.
And it also helped me a lot.
in terms of being able to build things, which I really loved.
I started interning at tech companies and really found love with the art of software engineering.
And that just further validated that I really love software engineering.
And then you entered some really cool companies.
I think it was meta, Slack, Robin Hood.
How easy or hard was it to get into your first internship?
Obviously, the first one is always going to be the hardest.
And then what did you learn at these places?
I was very lucky to have had this university program where they actually placed students in tech companies.
And my very, very first internship actually was in Sao Paulo, Brazil, where I was working as an intern for a healthcare company.
And that was where I really got my start and really learned software engineering from a very senior developer there in Brazil.
So I'm very thankful for that and for, I guess, the listeners.
who have university programs
who are in student school,
reach out to the career's office,
they could be really helpful
in helping you get your start.
For Facebook, it was
also, it was me
called applying to the website
to this program called
Facebook University.
So this is for folks
who are underrepresented
and who are new to computer science
and they bring you into the program
and then bring you through a two-week boot camp
where you're building an app
every single day.
Every single day.
This is pre-AI, right?
This is pre-AI.
So I was using my hands to write Android apps in Java.
And so every day we were building apps.
And then after the two-week boot camp, we were put into pods where we had to build a fully
functioning app by the end of the internship.
And that's when I learned Git for the first time.
I learned how to collaborate with my friends.
I learned how to read a really large code basis
because we were building a receipt splitting app
through OCR as well as like Bluetooth
where you could find your friends near you
and then drag and drop avatars into the receipt items.
So if there are three broccoli and you ate two broccoli
and ate one broccoli, I would drag your avatar twice
into the receipt item and mine once
and then it would split accordingly.
It was really fun, really cool,
because this was a personal problem of mine splitting receipts.
But we end up having to dig really deep into the open source libraries of the OCR from Google as well as like a Bluetooth protocol that was online.
So I became really good at that.
And I was also very fortunate that our team actually won for being one of the best apps in the internship program.
Awesome.
And got to meet Mark Zuckerberg in his office.
Wow.
So after a Facebook internship, you ended up working a little bit at Slack and at Robin Hood as well.
what, right? Yeah, that's right. And that was where I really caught the startup bugs. So I joined
Slack through the Kleiner Perkins Fellowship Program. So this is like a fellowship program for
students to intern over the summer with the portfolio companies of this VC called Kleiner Perkins.
And at the time, no one I knew was really using Slack. It was only 1,200 people at the time.
and I was really excited about the chance to see what this whole like startup scene was like.
I mean, at the time I considered Slack a startup, like looking back, it's not a startup.
But it felt like a startup to me, like someone who at the time wasn't really familiar with tech companies.
And I had such a good time at Slack.
And I think we can also be fair.
Like, sure, Slack today is maybe not a startup.
But like compared to a lot of companies, they still act way more than a startup, even today.
Oh, yeah.
It was really awesome.
everyone had so much product ownership.
It was a lot of fun because it was also incredible to be at a company where you were using the product that you were building every single day.
Yeah.
Like it was like I would start using a feature.
Then I would be like, oh, like, I think that instead of me having to search through my emojis every time I need to react, what if we put like a frequently used emoji?
Like, you know, I'll design it myself, posted in this like feature request channel.
and Stuart Butterfield at the time responded
being like, yes, we should do this.
And then I had another idea around like scheduling messages
so that I didn't have to wait to the time
I wanted to send the message to send it out.
And I posted it to the channel as well.
And he said, that's so unnatural.
We'll never do that.
But that's really cool getting feedback
straight from the CEO or co-founder.
That's awesome.
That was like such an awesome culture to be in
where the CEO was so excited about the product.
I feel the culture talks a lot, you know, both at Meta and as like the fact that the CEO and co-founder is very, is open to talking, okay, they're not going to spend a whole day, you know, talking with like interns or new joiners, but they do and they're accessible. I feel that's going to make a big difference between, you know, like some companies and then other companies where this is impossible.
Absolutely. Yeah. Especially now as a founder myself, like I always make sure to spend a lot of time and be generous in my time with people on my team.
And then what did you learn at Robin Hood?
So Robin Hood, I found through a tech fair.
Robin Hood was where I really found my sweet spot about what I loved to do in software engineering.
I was working on the Robin Hood News tab.
So this is a tab that let users see the news for the day and how that would affect their stocks.
And at the time, Robin Hood only had three tabs.
The first tab was the main tab, you know, trade.
Portfolio trade, yeah.
And then the third tab was like settings.
So notification.
And I was working on the second tab.
And I had, it was maybe like five or six of us working on that main tab.
And I was in charge of deciding what news to show on every person's feed.
Yeah.
And this is like millions of people using it, right?
in making decisions based on that.
Like, this is like not some, like, hidden feature.
Yeah, and I was 19 or 20, very young,
and they gave me that opportunity to build that.
And I really found that I love, I love that.
I found my sweet spot in that I felt like I got to work on very cool computer science concepts.
Like we were using Robin Hood version of Kafka to do the data pipelines when we receive.
For messaging?
Yeah, for messaging.
because we had to parse the video feeds and the news feeds coming from a lot of our partners,
like Bloomberg, were selling the news to us.
And then we had to then tag them and then based on the tags,
and as well as what the users were invested in, figure out what are the relevant news,
what to do if it's too sparse.
How do you populate the feed such as there's no bias for machine learning?
because we also wanted to keep learning what to rank first.
And if you had a very prescriptive way of ranking your feed,
then you would just be giving biased data to the machine learning algorithm
for deciding what is the most interesting item.
So to me, like that was really exciting because one,
I was learning a really cool computer science concept,
but then two, I was also deciding, like,
a lot of the product requirements, you know,
what does the user want, but then what is technically feasible,
based on what are the business partners we had and like based on our tech stack and then based on like latency requirements.
So I felt like I was able to activate like all parts of my brain thinking about the technical side but also the product side.
And because of that I felt like, oh, I really love software engineering like this.
This is where I want to be.
Do you love software engineering, startups or both?
It was actually both.
Facebook's Slack and then Robin Hood.
they actually became smaller and smaller, right, as I did my internships.
Yeah.
From 12,000 people to 1,200 at Slack and then 300 at Robin Hood.
And I found that every time I went down, like roughly in order of magnitude,
I felt like way more ownership.
And I felt like the line of sight between me building and the user's impact that I was making was extremely clear.
And so I knew like, okay, now that I've done the 12,000, the 1,000, the 1,000,
100 and then 300.
Obviously the next step is like joining a two-person company and then starting my own.
And then Slack, did you work after graduation or was that your last internship?
Robin Hood was my last internship.
So Facebook's like and Robin Hood will my internships.
Okay.
And then like it's well, then you have a healthcare company.
And the healthcare company, yes.
So it's incredible.
You have four internships and I guess in four different summers.
Three summers.
And three summers.
You kind of had them together, which is amazing.
And now like you had all these companies behind your back on your resume.
I'm assuming, you know, you could have decided to go into a bunch of different companies.
And then yet you decided to go into this unknown company that at the time was completely unknown.
It just raised something.
It seems like a pretty risky bet to go into an early stage or like seed stage startup.
Tell me, what was your thinking after this?
Again, you've seen these different companies.
And how did you end up at like such a small company?
It felt like taking a big risk, I'll be honest.
Oh, yeah.
It was a very big risk.
there wasn't any code written yet at the time.
There was no code.
No code written.
So it was just an idea and like a founder with an idea.
They were very nice mocks.
The first hire of Warp was actually a designer.
And then can you tell me like what was the kind of idea?
What was the stage at Warp when you came there?
What was the vision?
What were the mocks like?
Oh yeah.
Well, first of all, it was called Denver at the time.
Denver.
Denver.
And no, no wonder it didn't stick.
I remember being like, if you want to think of,
about SEO, Denver Terminal is definitely not the way to go.
Back then, I already had a lot of growth intuition.
But it was meant as a placeholder as they figure out what the, as Zach, the founder,
was thinking about names.
So there was, the key mark was a terminal that had the terminal input at the bottom, anchored
at the very bottom.
And then there was a blinking cursor that was a line instead of a rectangle.
and then there was a concept of blocks
where terminal inputs and outputs were grouped together
and there were lines between the blocks
and that was the key one
and then I think the second mock was collaboration
so it had like different avatars
on each of the terminal blocks
so it was almost like Google Doc or Figma
like oh you could have multiple people looking at this mock
at this terminal that's so cool
and then there was the concept
of like sharing environment variables and presets.
Because we all know like everyone is such a pain to get environment variables,
especially in teams.
I mean, no one wants to confess this,
but I'm sure everyone has had sent,
has the experience of sending environment variables through Slack.
And that's,
it's not good.
Yeah, and also, of course,
I mean,
you always have them in your local files,
which is a necessity.
But yeah,
as you said, sharing them.
You don't want to put it into GitHub,
but yeah,
How do you transfer them?
Yeah, exactly.
Sharing those keys that should not be shared because your colleagues need them or your teammates.
Yeah.
As you said.
So like, do I understand the vision was like basically the vision was like, hey, the terminal has been around forever.
Here's a couple of cool ideas on how we can innovate.
And this was pre-AI, right?
This was pre-AI.
But already that was the vision.
Now, can you tell me a little bit about like I feel not many people talk about this,
especially when you're still earlier in your career, you're a new grad.
okay, you know, like you've had a couple of like really cool internship, which means probably, you know, like a lot more companies will be open to hiring you. Were you interviewing at other companies as well? Or was this the first one you did? And how did you think about it? How did you go about like negotiating your, you know, your first full time competition? Because I guess with internship, you don't have much negotiation. But here, you probably had some leeway. Oh, yeah. Everyone wanted engineers at the time. The thing is that I never really envisioned myself joining.
such a small company.
It was only two people
and there was no quote written.
So my focus during my job search process
was focusing on 15 to 20 people teams, series A.
I had a couple options that had $10 million ARL already.
So I could join a rocket ship,
see like fast growth and then get to know for sure
that there will be a lot of opportunities
because when you have a fast growth company,
there's just way more things to do than there are people.
Michelle was just talking about how she had the option of joining startups
that were growing really fast even before AI.
Today, what I'm seeing is many startups are growing even faster
because they can get to incredible velocity with AI coding tools,
and so they can ship features a lot faster than before.
But without measurement, you don't know which features are helping
and which are hurting your growth.
When you're shipping 10x faster with AI, that uncertainty compounds.
You could be shipping faster towards better metrics, or you could be shipping more features that hurt conversion and retention.
This is where a presenting partner, Statsic, comes in.
Statsk built experimentation and feature management that acts as guardrails for AI accelerated development.
Here's how it works.
You ship a feature to 10% of users in a controlled experiment.
Statsk automatically creates a control group and measures the impact.
If the feature improves metrics, you confidently scale to 100%.
If it would hurt metrics, you cache it early when it's only affecting 10%.
10% of users, not your entire user base.
You're making data-driven decisions at the same pace your shipping code.
Companies like Notion went from single-digit experiments per quarter to over 300
experiments with Statsik.
They shipped over 600 features behind future flags, catching the ones that would hurt
Mexico early, and launching the winners.
This is the faster testing, validation, and learning loop that matters when you're shipping
at AI velocity.
Most teams stitched together separate systems, wait on queries, and try to correlate user
segments that don't match.
By the time they know if something worked, they've already moved on to the next feature.
With Statsig, you have everything in one place.
Feature flags, experimentation, and analytics with the same user data.
Statsic has a generous free tier to get started and pro-pricing for teams starts at $150 per month.
To learn more and get a 30-day enterprise trial, go to Statsic.com slash pragmatic.
And now, let's get back to why to Michelle chose to join a very early stage startup.
So I actually had a lot of those options.
But ever since talking to
Zach, the founder of Warp,
I kept thinking every day about the product
and how we could make it better.
And it was just a product that I had to,
I discovered that I had a lot of passion for.
Because when I was doing the software engineering internships,
I actually found that there was a lot of real business impact
from improving the terminal.
In the summer of 2018, Slack had multiple outages.
That was the first time that Slack was bringing on new enterprise clients like IBM and Disney.
And so what, you know, the double-nested loops that could have worked for selling to startups no longer worked at IBM and Disney scale.
And so a lot of things were breaking.
A lot of terminal, a lot of internal tools were run through CLIs.
A lot of commands were being shared on Slack.
there was an ops rotation.
So I felt like...
You were seeing the potential
of like how just like sharing commands better,
like better tooling,
a collaborative CLI,
even as Slack could have been helpful at your time, right?
Yeah, so I saw a huge business impact.
And then second,
I also personally as someone who just learned
computer science just a few years back,
saw that it was a very big barrier to entry
for a lot of computer science students
because computer science is already so,
scary to learn for someone who's new to it. But what is even scarier is trying to move the cursor
from one character on your command to another and realizing that the mouse doesn't work. Like,
I felt like there was also a lot of impact on society that can be made if coding was a lot simpler
for everybody. If we could make a terminal more accessible, if you could move the cursor with your
mouse instead of memorizing control A and Emacs shortcuts. So it was like, okay, this business
idea, there's a lot of business impact and potential revenue. And if we do well, we can make
computer science a lot more accessible. Like, when else can I join such a cool idea as the first
engineer? I could always look for a job in any of these like $10 million ARR, like doubling every
quarter of things. But it's so rare to kind of coincide with the window in which this company was
being started and that I get the chance to be the first engineer. The other thing was like,
in other companies, if I were to join, I wouldn't get the opportunity to work so closely with
someone who was a principal engineer at Google. Yeah, so Zach was the principal Google engineer
right? He's a long time software engineer. Yeah, former CTO at Time magazine. And I felt like I,
some of my friends would go
study master's
programs to be better at computer
science, but here I had this
opportunity to go
through Zach University, to
become a really good software engineer
very quickly, working directly with him.
He was looking through all my tech
docs, all my pool requests,
and I just became a very good
engineer very fast. That was how
I made the decision.
It was definitely very atypical.
Like, I could
I've gone back to Robin Hood, I had that return offer, but I just knew that I needed to be
somewhere a lot smaller. Did you negotiate your compensation, especially with startups when you're
joining early on in a Silicon Valley startup or at like honestly, most startups that are kind of like
either have venture funding or plan venture funding, a part of compensation is equity, which is
always a bit tricky subject for for most software engineers. How did you research equity? How did you
learn about it? Did you negotiate it or just kind of took whatever was, you know,
on the offer, because I feel this is a topic that not many people talk about, but it does get
pretty important, right? It is so important to negotiate for equity. I really negotiated
hard for as much equity as possible. And what I was willing to trade off was cash. How was
your offer presented? Yeah, I was presented a spreadsheet that had three options with increasing
salary and decreasing
equity. It was a really good spreadsheet
and I actually used this today
where it actually translates. Also, at your
startup, if someone gets an offer, they're going to get a spreadsheet
like this? Yes. At Flint, my company,
you will get this spreadsheet that helps you calculate
what the equity actually means in terms of the
compensation value. We also
calculate text as well as dilution at every stage.
And then we also have this
calculator that helps you calculate the expected
value of your stock based on different outcomes and the likelihoods of each outcome.
And all credit is to Zach from Warb, who let me use this spreadsheet.
But anyway, there are three options.
And I argued very hard for the one with the most equity.
And I was willing to go extremely low on cash.
And in terms of what leverage I had, this is probably a bad negotiation strategy.
but the way that I negotiated that was saying,
hey, Zach, I actually really, really want to work with you.
I will work with you.
I will sign this offer.
This is, I really want to build this thing.
Let's go do it.
I would really appreciate we could do this offer,
this number instead of this number.
Some might say that that's a really bad negotiation strategy
because you are losing all the cards
by saying that you don't have any other options.
And, you know, some might say
the best way to increase your offer is by having competition.
But I think that early stage companies where you're joining as just like one or two people,
it really means a lot of the founder that you are bought in, ready to go, excited to help them.
And they want you to be happy and they want to make sure that you have a good deal.
I will say like, you know, the general advice of negotiation that you read online.
First of all, a lot of it is written when you're negotiating against face,
corporations where the person giving the offer, let's say, an engineering manager or HR,
they don't own this thing.
They're given numbers and they have a job to do, which is close people, and they don't
have too much emotion.
And a lot of that advice will work, you know, like, that they do.
But as you say, in a startup, it's people.
It's a very small team.
The founders do care.
And I will say this, like a lot of good founders will actually just not make offer to
people who they don't think believe in what they do because it's so early. So I feel like what you
did like of course, you know, like it probably goes against all the advice out there because the advice
is not for this. Like I feel being authentic, like being excited. I cannot talk for all founders,
but I know some founders. And I do think this means an honestly like in the end, following your gut
is a pretty good strategy a lot of times. A funny thing about gut is that actually the day before the
offer, I was making the decision. I had, you know, the 10 million era company that was doubling
and I had warp. I'm in Denver at the time. And my stomach was actually acting up the night before
because I think it was feeling that it was the dissonance between like what I was going to do
versus what I really wanted to do. Now, one thing I've heard that is also atypical and no one will
suggest, but you still did it, is you know, when a company makes you an offer, they often ask for references
for you to talk with other people or before they make an offer.
I heard you did that with Zach, Warf's CEO.
How did that happen?
Yeah, I actually pulled up the email before this,
and I saw that I said like, hey, Zach, really excited about this.
I'm happy to send you my ref checks.
I would also like to learn more about how you are as a manager.
Can you send me references for people that you have managed before?
especially when they were junior and junior.
I'll see.
I would recommend everyone to do this, actually.
They say, like, you don't leave companies.
You leave managers.
And at a startup, you can't pick your manager.
You can't leave a team.
Like, my friends working at Google could be having a bad time with one team,
and then they could switch to another team.
At a startup, you are married to that manager.
So you need to learn as much as possible about what it would be like working with them.
And you have reference checks are, by the way, the most important part of any interview process.
Like that is sometimes even more important than the onsite itself.
So at your current startup, you're also doing reference checks.
Always.
Always.
And what do you look in a reference check now?
Just kind of, you know, thinking a little bit from a founder you've been on the other side.
because I feel there are coming back, but I don't hear it that frequently.
And I don't think a lot of people know how to do it well.
If I as a founder, I'm evaluating a candidate, the most important question I ask is,
would you want to work with this person again?
And the answer I'm looking for is not yes.
The answer I'm looking for is, hell yes.
I don't even know why you're even asking me this question.
You're so lucky to have this person.
I don't know what's happening in the waters of your company,
by how are you able to pull someone like this?
That is what I'm looking for.
If I'm hearing like a, oh, like, yeah, I think that they could be great.
Or like, yeah, they're very strong.
That to me is like a bad reference track that does not pass my test.
One day of a work trial is a very good approximator.
But it's just not the same as like working long term with someone.
So this is very important.
I actually think that like engineers have a lot.
of power and leverage, because the good ones, a lot more people want them.
But at the same time, it's very hard for you to assess, like, what is it going to be like
working at this AI startup?
Because it doesn't have that much reference points from the outside.
So it's very important to assess how they are as a manager.
As a more junior person entering a company, I think one of the ways that is,
that you could have a bad time is if you join a company where they don't promote and mentor and
grow younger people. I've seen this happen at my friend's companies where they would be the
first 10 people who built the company and then as soon as the company does well, they're replaced
by executives and then they're never promoted beyond the entry level that they were in, even though
they built the company and they spent a lot of their time.
and effort and youth and energy working on the company.
So it was really important in my reference check to check how much opportunity did someone
young and junior get?
What were career conversations like?
How did promotions work?
What was it like doing the tough times?
And Zach passed, like, exceeded all of the tests in that I talked to two engineers that were
new grads slash interns working for Zach and then very quickly became director of
engineering at Google Sheets. So he was clearly someone who would bet on young talent and then
help to promote them. And I saw that again, again, at Warp, where a lot of younger new grads
were given positions of tech lead or being able to run the most critical project streams
at Warp, because Zach always bets on the young talent.
I think in general, this probably sounds like a great strategy of trying to get or asking
for references from your future manager and asking them about what you care.
You know, this might be in your case.
It was like, yeah, can I have a career trajectory if you're looking for, let's say, stability,
maybe look for that.
But I think it's just like such an underrated.
I haven't heard anyone else do this.
So congrats on doing it and assuring it with us.
Yeah.
The last thing I'll add there is that even if it's not for evaluation, it could be for advice.
Like how would you be able to work with this manager best?
Like maybe it's like insisting on the weekly one-on-ones.
it's about proactively asking for advice in this specific way.
So it doesn't hurt you to do it.
And you can always frame it as you that you're getting advice on how to work closer with them.
I love how Michelle shared the story of how Warp was founded and how she joined as a founding engineer.
Talking about the founding of a startup touches nicely on the origin of our season sponsor, Linear.
The idea for Linear came about when their founders were going through hypergrowth phases of Airbnb, Coinbase, and Uber.
As you'd expect with real scale, these companies started to slow down.
used to take days, started taking weeks, sometimes even months, not because people work less
harder, but because there were a lot more moving parts that needed to be coordinated.
As an example, in the early days of Uber, it took a single engineer about five days to integrate
tests and ship a new payment method to the app, Google Wallage.
But years later, it took around two months for three engineers on my team to build and
release Google Pay because there was so much more planning, coordination with stakeholders,
working with other stakeholder teams and the vendor themselves.
As teams grow in size, product development gets its particularly hard.
Every team involved in the process uses a different set of tools and workflows.
This fragmentation means there's no scalable way to answer what has been committed, what's at risk, who's actually accountable?
Who are we building this feature for?
It's often a total mess.
The conventional approach is to compensate for tooling gaps with more headcount or with more status meetings.
But in my experience, it doesn't help much.
This is why linear exists.
To give high-girl teams a clarity and cordial.
they need without the overhead.
Linearist founders build a tool they wish they had during those chaotic hypergoat scaling
phases.
You can try it yourself at linear.
at app slash pragmatic and see why teams like Ramp and Clay also switched over.
And now let's get back to Michelle and her time as a founding engineer at War.
When you joined Warp, what kind of technologies did you work on and how do you find your
so-called kind of stack or place?
Because you later talked about how, you know, in startups or in tech companies, there's
kind of like more product and more infrastructure, more front and more back end.
Where did you end up in this sense?
So the stack at Warp actually first started out with JavaScript and then we didn't...
Not even TypeScript.
Oh, it was TypeScript.
And then two to three months in, we decided to scrap that repository and then rewrite every,
just like rebuild everything in Rust.
I have to ask why, although I suspect why.
Yeah.
So it was for performance reasons and it was also speed of development.
So while it was really fast to push out JavaScript code,
we then needed to spend a lot of cycles testing,
stress testing it against a lot of performance.
Contrains.
So one thing I did without JavaScript app
was that I drew a thousand rectangles.
And then I started scrolling the terminal
and the scrolling was breaking.
And it's extremely important for us
to be able to draw a lot of rectangles
because, yeah, like terminals output a lot of,
a lot of logs and everything needs to be really fast.
There was also a very strong sentiment amongst developers
that they would only use high-performance terminals
that would build low-level.
So even if there were two applications
that were completely identical,
but one was built in Rust,
it would just be distributed a lot better.
People would love it.
You had this, back then,
the Rust community was small,
but growing very fast and extremely passionate,
and so it was also very important for marketing.
that we built it in Rust.
It was very, really funny when we decided to do, to build in Rust.
And then Zach sent the O'Reilly Rust book to everybody.
So me, the other founding engineer, Alok, and he and then we would just read every day.
And then every time we learn something new, we're like, oh, let's rewrite what we wrote
previously.
There are way too many unwraps.
So let's go fix that.
We also had a privilege of a world.
working with Nathan Sobel, who was the inventor of the Adam editor and then eventually started Zad.
And he had a lot of rust experience.
And every day he would pair program with me.
And I just learned all of the rust idioms that work really well.
I guess pair programming does work.
Oh, yeah.
I really enjoyed pair programming with Nathan because I learned a lot of small ergonical things
that makes a big difference in using.
the IDE. He asked a question earlier about like product engineering versus infrastructure engineering.
And I wrote a piece like many, many years ago before the word product engineer even became
in everyone's lexicon. Product engineering and product first coding are like people who are more
motivated by user problems and excited about solving the user impact and then they see technology
as a means to an end of user impact. And then there's like the co-first people who tend to more
map onto infrastructure engineering
where they're really excited about
the best performance, the best libraries,
elegance. I found through my
Robin Hood internship that I very much
am like a product engineer at heart
and I find that
this division of product versus infrastructure
engineering is a way better
split to think about engineering
than front end and back end
because of the mental models
of like people tend to segment
into like roughly
speaking two camps. So the product
first people who care about user impact.
They've gone into computer science because of the things that computer science can do for people.
And then the second camp, which is code first people who are really excited about the code itself
and really excited about pushing the limits of code.
And they tend to map to more infrastructure problems.
When you split people up in front end and back end, it's like it does a mismatch in the mental models of people.
Like, this is my experience.
I was a frontend engineer at one of my internships.
and all I was given are monks to implement.
And so I wasn't able to solve problems for users.
So then I felt like, oh, I want to go to backend engineering.
And then in my other internship, I was placed into infrastructure.
So I spent two weeks migrating from Amazon Athena to Presto.
And all I did was write SQL and migrate database roles.
And I was finally working on something that was closer to the metal,
but also I was.
wasn't really seeing how solving any user problems. And so it made me feel like, oh, wow,
like maybe I don't really want to do software engineering. And it was only after I got that
opportunity and I advocated for joining the news tab team, the Robin Hood News team, that I finally
saw like, whoa, like I actually really love solving user impact problems and user problems. And
then while solving the user problems, I get to use tools like back end and front end. And it didn't
matter to me which one I was using as long as I was solving the problem of like the user,
which is what news do I see and how does it look? And like I really sense that product engineer,
it's also a kind of a word or a phrase that that is now spreading across startups. So many
startups are now hiring specifically product engineers. So it is happening. As a founder yourself,
I assume at some point
you will hire product engineers
if you're not already hiring
but what would you look for
like outside of the
like this person can code
and you know has the basics
but what are the things
that will tell you if like
okay this person would be good
at product engineer versus maybe not as much
one key signal is whether or not
they have worked for a company
that was product first in nature
like if they had worked on
more like a user facing
type SaaS tool like
Figma, Notion or Slack, you know that those companies are very focused on product first thinking
and they pick people who are product first. Then in an interview, you can also kind of tell
based on how the candidate answers questions. So when you ask them what they were doing,
at their previous roles, some people will focus a lot on like the very cool technology.
And then others will focus on the business problem of like, oh, like, you know,
know, we were leaking $700,000 a year to Amazon.
And so it was very important that we migrated over to our own open source hosted Presto.
And then we did this and then this is what happened to the business as opposed to like,
oh, like, you know, it was very important for us to do this thing.
And it was very difficult because of X, Y, Z reasons.
And then we used this library, but then this library didn't work.
You know, you could really tell the difference.
And it was very important also for our interview process to involve a product.
around where we asked people like, you know, what would they change about the terminal?
What would they change about a favorite app that they're already using? And then the best people
who are thinking in terms of product would know how, well, first of all, I would have an opinion
about how to improve a product. And then second or four, would know how to talk about it
from the user's perspective. And last of all, are able to create milestones in that product
based on user visible milestones. So you would want, if you have a,
like 100 things to do, how do you group it and sequence the things to do in a way where every
milestone the user could see a difference as opposed to like maybe spending like 60% of your
time improving performance or latency that would not be seen by the user until this front and was added,
for example.
Yeah, so I'm hearing that like understanding the business, caring about the product, like having
a lot of things that we might have associated purely in the past with just product managers,
having some of that is increasingly important.
And for engineers, we'll have none of it.
That's also fine.
But it feels like increasingly they might be a better fit for infrastructure work
or places where you don't need to think about product.
There's like someone or a company where there is a product manager.
And they take care of all of that.
And it's just implementation.
Which sounds a little bit less fun.
But these places exist and some people, there are engineers who appreciate this.
There are so many.
I mean, and they're all extremely important.
when you are at a company with a lot of scale
like really like performance memory
like the infrastructure you use is so important
but then when you're talking about startups
you're just starting out
and so you need someone who is
able to plug in all the holes in the company
and the scale at the very beginning
doesn't tend to be something that requires
like that mainly billions of roles to handle
or like requests per second to handle
Yeah, so you've been a founding engineer. You're now a founder. Clearly, you're also hiring founding engineers. And at Warp, you also hire product engineers. How do you think a product engineer versus a founding engineer differs? Or do they, is it just a timing? Or is it also a little bit of different personality or different challenges? Yeah, that's a very good question. So I would say like founding engineer versus product engineer, they're like different axes. So you could be a founding product engineer. You could be a founding infrastructure.
engineer, or you could be like a later stage product engineer, a later stage infrastructure
engineer, later stage software engineer, AI engineer.
I think that folks might differ on the definition, but I think founding engineer counts if you
are in the first five or so that joins within the first few months of the company starting.
A product engineer, in my definition, is someone who is excited about.
solving user problems, and they are full stack in being able to do that.
So they could go in and build a front-end feature, a back-end feature, or something that's
end-to-end.
They could also go into AI.
They could go into infrastructure.
They would use whatever tools in the tool belt of programming to solve the problem for
the user.
I think these days, the way that startups are putting these job descriptions out, I think
that they are actually more looking for.
for purely front-end engineers.
No one uses the term front-end engineers anymore.
I think when someone is, like, reading a job description,
one should read it closely,
because I think that a lot of startups here
are using the word product engineer more as a kind of like a synonym
for front-end only engineering.
So not all of them mean the product engineer
and how we were talking about.
Yeah.
What do you think today at your startup, for example,
now that we have all these AI tools,
Do you think it's going to push us away from even pair programming, even if people are in the same space?
Or do you think the people who still do it are actually going to benefit a lot from it?
I think almost like with the rise of AI, everyone now is pair programming with an AI.
And having someone to talk to or some bot to talk to allows everyone to have a rubber duck every day.
And that helps everyone get better.
I think that with the rise of the return to office,
there's also a lot more opportunities for sitting next to each other
and just learning how people use their tools
that we didn't get during the remote time
because Warp was remote first.
And during the first two years,
I don't think I ever saw Zach in person.
Oh, wow, yeah.
Yeah, during 2020.
Of course.
Yeah.
It was that time.
At your current startup,
how much are at Flint?
How much are you using AI?
Oh, all the time.
It's almost a requirement at this point to use AI to code,
because then you can be more productive.
What are your favorite tools, or commonly the tools that you reach for?
Always cloud code.
Do you still use the ID or not as much, or to review stuff?
So we use cloud code inside the IDE?
Yeah.
Inside VS code or I'm not sure if you can do a cursor or one of them.
It's cursor, and then we have an engineer who only codes on BIM, so he uses CloudCode on
BIM.
Oh, but then Cloth runs there as well.
That's pretty cool.
It's crazy how quickly we've changed from ID-only, most engineers to actually just, like, warming
up to this.
Yeah, technology gets better.
One interesting topic that you mentioned earlier is some cautionary tales about how, when
you're joining an early state startup, especially in AI startup, some engineers can feel a little
bit screwed by founders. And, and, you know, I think, you know, we talked about how you
managed to, like, you know, get a great offer at an AI company with a founder who, like,
checked all the boxes. But I think it's important to talk about some negative patterns you
might have seen or heard and how to avoid it. Because, again, there's an explosion of startups,
of AI startups, of founders who want to recruit engineers. And sometimes, I guess,
things can be too good to be true.
Yeah, yeah.
I'm sensing a lot amongst my friends as well that people feel like specifically the founder might be
acquihered away by a bigger company and then be the only one in the company that received any
monetary benefit from the acquisition.
So this is some of the exacts that we've seen in the news.
Yeah.
Of some of the founders being hired away and then the team is left hanging.
That is the specific scenario.
people are really scared off.
And I had a friend who told me that because of all these equi hires of the founders that's happening,
like she's just going to join Open AI instead because it's safe.
I think it's all about really understanding the character of the founder.
One great way to find out about the founder is to do reference checks.
Like is this, yeah, is this someone who actually has a good character,
who is generous with their people who care about their team?
the other good approximator is to see if the founder themselves were founding engineers to begin with
because there's just like that lift experience and empathy that you just cannot get
unless you went through the ritual of having been a founding engineer
where you're in there the day that there wasn't even any code to the day that there was cold
and then the day we had our first user the days where we didn't have the first user
all that like pain and struggles
to now have like all this
empathy that hey like
these folks are entrusting me
with their career and they are taking
a lot of risk
I cannot
see a world in which I wouldn't offer
secondaries and tender offers
and opportunities to them
it's a big sacrifice
and maybe it's even worth asking
on the interview specifically these questions
that if the company
was to have some as a kind of raise a new round and man the founders would take secondaries would
it be offered to other employees if there was an acquisition to happen would you bring the team
with you i guess you know it's not binding but i feel there's difference between when people don't ask
and everyone just assumes versus it doesn't hurt too much to ask potentially especially if it's a
startup that seems to have just a rocket ship trajectory oh yeah absolutely you definitely have the
the leverage to us in this times.
I mean, it's an innocent and of question, right?
The worst thing is they don't answer it or they refuse to answer or they can say something,
right? And then you have some data point.
Yeah, the other thing is also to not listen too hard on what their answer is and to listen
to whether or not they had thought about it before.
When I was asking Zach about how he thought about early employees, like, it was very clear
that he had been thinking about it for years.
And so the answer that came out was very well thought out.
And it was a really obvious thing for him to be thinking about.
Well, I was like, you know, a less thoughtful manager might give you a good answer,
but it's very clear they just came up with it on the spot.
So now that you have a startup and, you know, you've now moved from, again,
being working at companies to being a founding engineer's now founding your own company.
And congratulations on coming out from stealth.
Thank you.
With Flint, how do you find, what does it take?
to hire world-class engineers in an environment like Silicon Valley or with other founders
you're talking to and also from your own experience.
I think it's about showing that you care a lot about the team and that you value people
on your team and that there's high trust between you and them, that you will do every measure
it takes to make sure that they are going to have a good time.
And it's also about having really big vision about how this company is going to change the world and it's going to be huge and that this is a chance to change the world.
Speaking of which, your startup Flint, can we talk about how you came up with the idea around websites and also how both what you're building but also how you're thinking these AI agents will change the world, the web?
So the website itself's become agendic.
They build themselves.
That means that if you wake up in the morning to a competitor having launched overnight,
your website would have already generated you a comparison page that compares you with their competitor.
And then it's already optimizing for conversions.
And it's also keeping track of the differences in your product and them every day and then updating it.
So something that would have taken five agencies.
three months to do, suddenly gets done overnight when you were sleeping.
And we're thinking of also automating all of the other marketing workflows around that.
Like, we can hook into your sales calls and your gone calls and then find out ways of selling
your product or solution pages that you might be missing.
Oh, wow.
Yeah.
This is proper next level.
Oh, yeah.
Like, marketers really love this.
I mean, I'm not just talking obviously from the marketing angle, but just from a software
and during how you have all these
different input channels to capture
feedback and then to eventually
generate. This sounds really cool.
Yeah, it is
bringing autonomy to the web.
We're really building a new kind of internet here
where the website is now not only generated
by AI and for AI, but it's
also becoming AI itself to be more
dynamic and proactive.
My co-founder actually ran
teams at Neuro, which is an autonomous vehicle company. And we talk a lot about how autonomous
websites are similar to autonomous vehicles in that it does, they take in data through a perception
system. Then there's a decision-making system about, okay, like based on this competitor,
based on these sales calls, like, what should we do? And then it would then have a control system
that then actually implements the pages. And then it would then start off that loop again,
where based on how the page is doing
in the environment, which is the market,
what should we then do?
So by putting all of that perception,
that decision-making and control systems
into the same entity,
we finally close the feedback loop
that is the reason why it requires five agencies
talking to each other to build a page.
We had to have the five agencies
because there were separate tools
and different specialties to be busing information between.
and now if you put all of the tools in the same entity,
you start having a closed loop
where the website continuously optimizes it self for your business.
It's very exciting.
So the first phase is that,
which is let's respond to your market based on real-time data streams.
And then the next phase would be real-time morphing and shape-shifting of the page
based on who is visiting.
It could be a healthcare executive that comes,
and then we morph the page to highlight healthcare case studies,
or like compliance-related requirements from healthcare.
And then we could even generate a sales demo
that's specifically for that healthcare executive.
Instead of needing to click contact sales
and then wait a week for a Zoom call
where someone is extremely bored talking to you,
just have the website generator demo close you on the spot.
And then if it's an AI agent that's visiting,
we can also speak different.
The website could also speak differently.
The agent doesn't want to speak in HTML.
They want to speak in MCPE.
they want to speak in tool calls, APIs,
markdown, JSON.
There is a new agent-to-agent protocol
that we're building here
to redefine the way that
agents interact with the web.
We also create the concept of an agentic web
where instead of going to Google
to find links,
you could have the agents talk with each other
to tell which agents are more credible than others
and be able to communicate very quickly
to help to sell a customer on the deal.
This is so interesting because I feel like we're so focused right now,
or at least I'm so focused on how LMs can help developer tools,
like just change how we do things,
that we kind of forget that there's a whole world out there
where these tools can really just, you know,
like change a bunch of stuff like how we think of websites
and how dynamic they are and how, like, ultra-dynamic or ultra-personalize they can be.
This is really cool.
Yeah, everything we know about the Internet is about,
to change and Flynn is building that. Even today, one really interesting problem that we're solving,
it's almost a research level problem. It's in terms of creating on-brand lending pages. So it might seem
very simple from the outside because, like, oh, like, can't we just like choose the background
color and the typography of a page and then turn out a page? Turns out that like especially
today, brand is very important. You wouldn't put a length.
If you're a SaaS company, you wouldn't put like a cursor generated page in front of a Fortune 500 client you're trying to close.
You want to make sure that your page really matches your brand down to the very pixel.
And we have developed a capability in Flint to create a page that looks almost as if the customer themselves built it.
So we work with cognition on the events pages as well as their comparison pages between windsurf and cursor, for example.
And that's being cited by LOMs.
So it feels to me, you know, you've got an exposed, like you, like one part of how you got here.
Maybe you've got it otherwise, but it feels you really got here because you were at a founding
engineer at a startup. You've seen so many things. So what would your advice be to software engineers
who would love to join as a founding engineer, maybe an AI startup or a fast-gold startup these
days, a lot of them are AI, not all of them? If it's someone who, you know, has some experience
in the field, what tactics you think might work for them?
It's about showing that you've built in AI before,
because that scale is very much high in demand,
and it's very new, very few people, relatively speaking,
have ever built an AI product before.
So just spending like some time over weekends,
knowing how to build an AI product
already helps you stand out above many people.
And by an AI product, we mean something that is using LLMs underneath the hood to do whatever it might be.
I don't know.
May that be just a search engine based on LMs or anything that scratches your itch?
Yeah, really anything that scratches your itch that uses any of the models, the completion APIs.
In terms of excelling in that role, it starts off with picking the right founder.
But then once you do join, it's all about volunteering to do the things that no one wants to do,
most important thing for the business. So I did what most engineers would consider to be the
worst job ever, which is to be the face of the company on Hacker News at Warp. So I wrote the
blog posts, I published them on Hacker News, and I answered all the questions on Hacker News.
I went out there and I created our company Twitter and I was writing tweets for the company.
Then starting a YouTube channel for the company before any developer tool company is really
thought about doing YouTube, starting a Discord channel, like filing every feedback, starting the GitHub,
like things that like very different, like outside of engineering, but the business really needed.
And then you were still doing your engineering job. You're still like, you know, like fixing bug and
etc. But on the top of it, you're figuring out how to help the company, right?
Yeah, yeah. You still have to make sure that you're doing your number one job, which is software
engineering. So that needs to still stay the main focus and you should only volunteer for other stuff if you
are already doing well in your main job.
The benefit of doing a lot of these things
and learning how to do a lot of these things
is that then
you get to learn
what businesses need.
You can come out with ideas that are not
just developer tool companies, for example.
And at one point,
because I was doing all of these things
and then hiring all the people, I remember
after one of the board meetings,
my founder reached out to me and said that,
hey, like Michelle, like you hired all these people in growth.
I want you to be head of growth.
You're going to be starting and managing this team from now on.
And I don't know, I was like 22 at the time.
And suddenly an executive suddenly reporting to the board every quarter on like wow numbers and revenue.
You wouldn't get that unless you volunteer to do random things.
And then make sure that every time you do this, you do them exceedingly well.
Because it's not necessarily just about doing well in that domain.
It's about the founder knowing that whenever they pass you a job to be done,
it would be done, excellently.
And then this way you get more and more responsibilities.
Eventually, I end up leading enterprise sales for Warp.
Oh, wow.
Because we had this problem where we started getting a lot of security questionnaires
from companies that were using Warp.
And I saw that problem and I was like, oh, this is not a security problem.
this is an enterprise sales opportunity.
This is the start of a conversation
in which if we have an enterprise deal,
we could fill your questionnaires
and we could have SOC2 reports
and we could have all these nice compliance controls
and admin panel
if you paid us like this amount of money.
Yeah, it's things like this that really help you
do well in a company.
It's doing the things that are very unsexy
that nobody wants to do
because before you know it,
you might be running enterprise sales
because no one wanted to work on security questionnaires.
It was a hot potato that was passed around multiple quarters until it went to me.
And I guess it's probably needless to say, but if you are working as a founding engineer or like,
or even as a software engineer, you're picking up all these things and you're balancing all these things.
And from the outside, it's like, how are you doing all these things?
I guess as a founder, it's kind of preparing you to be a founder because as a founder,
you'll definitely have to balance all these hot potatoes at the same time.
Oh yeah. The job of a founder and a manager is to always, like, it's always about taking the things that no one wants to do. So that everyone else can be in their zone of genius. They can spend all their time working on this engineering problem. And yes, I will deal with Echo News.
As closing, let's you do some rapid questions. I'm going to ask a question and then you tell me what comes to mind. Sounds good.
Yeah, that sounds great. What's your favorite programming language and why?
Oh, Rust. I feel like I, I feel like I.
get a lot of satisfaction every time I pass the borough checker
because it's very difficult to write code that compiles.
And at Flint, you use Rust as well?
Flint, we are a typescript shop.
We are building autonomous websites
and we're building websites that build themselves
with like, you know,
so it's helpful to be writing in a language that builds the website.
I'm sure Russ will find this way in there sooner or later.
All right, we'll see.
What are one or two movies that you would recommend that you enjoyed?
Yeah, I really enjoyed weapons. It looks like a horror movie on the outside, but it is very enjoyable. There are many comedic moments in it. And I also really enjoyed the nonlinear narrative where it's a story about sometime in the early 2000s, there were children who started running out of their houses at 2 a.m. And then they all disappeared for a month.
and the movie
it's just a real life story
and then the movie creates a narrative
for like what could have happened
and then every chapter in the movie
was showing a different character's perspective
and every perspective
added a different way of viewing the story
altogether and almost changed the genre each time
and as a horror movie fan
I also saw that every chapter was a different character
in a horror movie trope
which I also found like it was really smart
so yeah highly recommend
I am not a horror movie fan. I watched this movie, not knowing what I got myself. I will say it's memorable. It still gives me the shivers and it still makes me think. So, great recommendation. Thank you.
Michelle, thanks for being on the podcast. This was just really interesting to see, you know, like how much you can learn being as a founding engineer, how you can do it and how it can lead to starting your own company doing super exciting things with Flint. So good luck, good luck with Flint and thanks for being here.
Thank you so much.
I always find it interesting to hear how someone became a founder, and Michelle's story felt pretty
approachable to me. What really got my attention was how Michelle was volunteering to do the
unattractive work, in this case working with a marketing agency to build marketing websites at
warp, and this got her the idea and expertise to start her current startup, which is about
creating marketing and launch websites with AI. Michelle's story is a great reminder that to be a great
founder, you probably need more than just software engineering. It's also helpful if you
understand different parts of the business and you get your hands dirty with non-tech work as well.
One other thing I found interesting is how Michelle thinks that GEO, generative engine optimization,
basically LLMs recommending websites, will soon become perhaps even more important than search engine optimization.
Thanks are changing fast in the web thanks to AI and perhaps web pages will become a lot more responsive
and fluid thanks to AI and in response to LLMs.
For more details on how to be a solid founding engineer, see the
pragmatic engineer deep dives linked in the show notes below, including an article on lessons
from the trenches of being a founding engineer. If you've enjoyed this podcast, please do
subscribe on your favorite podcast platform and on YouTube. A special thank you if you also
leave a rating on the show. Thanks and see you in the next one.
