AI Engineer World's Fair 2026
Building uReview, Uber’s Multi-Agent Code Review Engine — Will Bond & Ameya Ketkar, Uber
Read the talk
Building uReview, Uber’s Multi-Agent Code Review Engine
Will Bond and Ameya Ketkar explain how Uber routes code changes through multiple reviewers, filters their output, learns from developer behavior, and lets hundreds of teams maintain local rules without giving up platform-wide consistency.
From a talk by Will Bond and Ameya Ketkar
At a glance
Ideas worth remembering
uReview separates review surfaces from generators, then rates, categorizes, filters, and deduplicates candidate comments before delivering them.
Useful observability combines what developers say, what they change, and how the agent produced its finding: sentiment, addressal rate, and agent trajectories answer different questions.
Team-owned review rules need ownership integration, nearby configuration, deterministic routing, and feedback to their authors. Writing a skill was easier than operating it consistently and cheaply at scale.
Uber reports around 25,000 comments per week, a 67% addressal rate, and 60% lower cost than a naive implementation. Addressal measures developer behavior, while the reported 70% quality and accuracy improvement lacks enough methodology to reproduce.
Agent-facing reviews need greater accuracy because a bad comment can induce repeated changes and reversals. As agents assume more detailed work, the speakers propose moving human review toward architecture, domain expertise, and product judgment.
As pull requests grew, review became the bottleneck
Uber’s scale makes code review an allocation problem as much as a code-quality problem. Thousands of engineers work across hundreds of teams, 12 sites, and six language-specific monorepos. Over the preceding 24 months, both pull-request volume and pull-request size grew. The company’s time to first review rose from three hours in 2024 to nine hours in 2026, leading Bond to identify review as the new bottleneck. Those numbers explain why Uber invested in automation; they do not by themselves measure uReview’s impact.
Uber built uReview internally partly because its development surfaces were in transition. The company was using Phabricator while migrating to GitHub, and Bond says most available products did not support Phabricator. Uber also wanted the same review rules to operate inside an agent’s coding loop, rather than creating one review regime for people and another for generated code.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Generate broadly, then control what reaches the engineer
GitHub, Phabricator, and the agent loop all send review requests into the uReview service. The service also receives user feedback and routes work among multiple generators tuned for different cost and performance characteristics. Third-party review systems can plug into the same architecture, giving Uber a way to compare internal generators with outside alternatives.
Multiple generators create an immediate product problem: overlapping findings can flood a pull request with repetitive comments. uReview separates candidate generation from publication. A post-processing stage rates, categorizes, filters, and deduplicates comments, with the goal of showing engineers only actionable, high-confidence findings. The talk does not reveal the scoring thresholds or deduplication algorithm, so this is an architectural description rather than a reproducible ranking recipe.
GitHub, Phabricator, and the agent loop submit review requests.
Several review surfaces share one routing service. Multiple generators can propose findings, but post-processing decides which comments reach the reviewer.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Cost and surveys could not explain review quality
The first uReview implementation was deliberately small: one prompt performed per-file logic checks, a simple agent conducted a more thorough review, and a dispatcher chose which generator to use. Its observability was similarly coarse—cost tracking, an NPS survey, Google Forms, and Slack support. The team could see that quality relative to cost varied widely, but those signals did not explain which comments failed or why.
The next iteration classified developers’ replies to uReview comments by positive or negative sentiment and by additional categories. Aggregating those responses exposed recurring classes of bugs and system issues that the uReview team could address. Ketkar reports that this moved many pull requests toward a better quality-to-cost position.
The team then added two complementary signals. Addressal rate asks whether a developer changes the code after receiving a comment. Agent trajectories act as runtime profiles, recording the tool calls and the system’s recorded reasoning process behind a review. Sentiment captures what developers say, addressal captures what they do, and trajectories show how the reviewer reached its result. Together, these signals gave the team more useful evidence for tuning runtime, performance, quality, and cost.
The key warning is that a model does not reliably signal when its review is wrong. It can present a bad finding with confidence, so model confidence cannot replace team knowledge or evaluation. Teams need to supply their style guides, patterns, and anti-patterns. The runtime also needs guardrails that keep the agent from wasting turns: review has a useful time budget, and irrelevant work consumes both time and inference cost while potentially degrading the result.
The system publishes a selected review finding.
uReview combines expressed reactions, observed developer actions, and execution traces to find problems and revise review behavior.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
From general reviewers to team-owned agents
uReview’s customization stack begins with two scopes of general review. A single-file reviewer looks for logic bugs within each file. A deeper multi-file reviewer incorporates anti-patterns and style guides from Uber’s six monorepos, allowing it to reason across a larger change rather than treating every file independently.
The platform then adds more specialized mechanisms:
- AI linters: Few-shot systems gather context in a more controlled way and apply rules to a file to find systematic, mechanical issues. Ketkar describes deterministic context collection, but the talk does not establish that the model’s final judgment is deterministic.
- Custom agents: Teams can define a reviewer connected to their knowledge base, previous pull requests, and a review skill. This carries more local history and procedure than the general reviewers.
Making custom agents available was harder than exposing a prompt box. uReview ties them to Uber’s ownership model, stores customizations near the code so developers can update them, and uses deterministic routing to decide which team receives which review type, model, and generator. These choices make ownership and execution discoverable instead of relying on a parallel registry maintained by the central platform team.
Rule authors also need to see the consequences of their work. uReview returns agent trajectories, addressal rates, and sentiment analysis to contributing teams. A team can discover that developers dislike or ignore a rule and revise it. Writing the initial skill was often easy—Ketkar says teams could ask Claude to derive one from previous pull-request reviews. Running those skills at organizational scale with consistent quality and low cost required repeated work from both the platform team and each team authoring rules.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
What the reported results do—and do not—show
Ketkar reports that uReview produces around 25,000 comments each week. About 10% of comments receive some feedback, while 4% of pull requests receive negative feedback. Those percentages have different denominators and should not be combined into an approval rate. Silence also does not prove that a comment was correct or useful.
The overall addressal rate is around 67%, and developers address almost three quarters of high-severity issues. These figures show that developers act on a substantial portion of uReview’s output. Addressal is still a behavioral proxy: it does not directly prove that every addressed finding was correct or that it prevented a defect.
Compared with what Ketkar calls a naive implementation, Uber reports 60% lower cost and roughly 70% higher quality and accuracy after adding observability and evaluation. The talk does not define the quality or accuracy metrics, identify the measurement window, or say whether 70% is a relative increase or a percentage-point change. The result is therefore directionally useful but not independently reproducible from the presentation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Agent-facing review raises the accuracy requirement
The final part shifts from uReview’s current operation to where the speakers expect software development to go. Engineers are interacting with implementation details less as agents write more code. Humans still approved code at the time of the talk, while Bond presents automatic approval and landing for some percentage of changes as a near-future direction rather than a shipped uReview result.
A single review platform can serve humans and agents, but the audiences behave differently. Humans become frustrated by a pull request covered in 100 minor comments; an agent will work through them. Yet agent willingness makes bad feedback more dangerous, not less. An inaccurate comment can make an agent change the code, request another review, and then reverse the change after the next comment. Accuracy must rise because errors can create an unstable review-and-repair cycle.
This creates a second problem: uReview improved by learning from human reactions and actions. If humans leave the detailed review loop, the system loses part of the feedback that helped tune its prompts and agents. Bond warns that removing that corrective signal could lead to quality degradation and low-quality generated code, but the talk does not specify a replacement feedback mechanism.
The proposed answer is to expand the outer loop rather than eliminate it. Agents take on more implementation and detailed review, while engineers move their attention toward architecture, domain expertise, and product thinking. Bond includes performance optimization and API compatibility among the implementation concerns that agents may increasingly handle. The human role becomes guidance at a higher level—but preserving effective feedback while making that move remains an open design problem.
High comment volume, including 100 small nits, can frustrate an engineer.
Agents tolerate more comments, but inaccurate findings can create repeated reversals. The proposed outer loop moves human attention toward higher-level judgment.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
The official AI Engineer page includes the recording, timestamped transcript, chapter navigation, and a reading version of the talk.
Further reading
- Will Bond on XReference
Bond’s supplied speaker profile identifies his work on AI developer experience and uReview.
- AI EngineerReference
Conference organizer and publisher of the recording.
Related talks
- Agentic SDLC at Uber - Building Blocks for Uber’s Software Factory
Provides the adjacent Uber architecture behind the agent inner loop that uReview is intended to serve.
- AI-powered entomology: Lessons from millions of AI code reviews
Examines the closely related problem of distinguishing useful pull-request findings from hallucinated or unwanted comments.
- Agents reported thousands of bugs, how many were real? - Ian Butler and Nick Gregory
Adds a useful counterpoint on false-positive rates and the difficulty of verifying agent-generated bug reports.
Read the complete timestamped transcript
- 0:01
[music]
- 0:12
>> All right, hello everyone.
- 0:14
My name is Will and uh I'm here to talk
- 0:17
to you about automated code review. Uh
- 0:21
my teammate Amir and I work at Uber and
- 0:24
we're going to be walking through U
- 0:25
Review, a system that Uber has built uh
- 0:28
to help increase the velocity of our
- 0:30
software engineering teams.
- 0:33
Um for a little bit of context about
- 0:35
what software engineering org at Uber
- 0:37
looks like, we have thousands of
- 0:39
software engineers who work across
- 0:42
hundreds of teams uh located across 12
- 0:45
different sites and uh they work in
- 0:47
primarily one of six language-specific
- 0:50
monorepos.
- 0:51
As many of you have probably noticed
- 0:52
over the past 24 months, the volume of
- 0:55
PRs, the size of PRs has been growing.
- 0:58
One of the ways that that's been exposed
- 1:00
to us has been through uh the metric
- 1:02
that we track of the first time to
- 1:04
review. Back in 2024, we were seeing
- 1:07
that engineers would get their first
- 1:09
review within 3 hours.
- 1:11
Now in 2026, that has grown to 9 hours
- 1:14
uh in addition to all of the volume
- 1:15
changes. So, in short, code review is
- 1:19
now the bottleneck that we are running
- 1:20
into.
- 1:21
Um specifically around automated code
- 1:24
review, uh there are there are various
- 1:26
options available in the industry, uh
- 1:28
but Uber spent the time to invest in
- 1:31
building an in-house solution due to
- 1:33
some of the constraints that we have.
- 1:34
One of those is uh we currently use
- 1:37
Fabricator and have for a long time and
- 1:39
are in the process of migrating to
- 1:40
GitHub. Uh most of the solutions do not
- 1:43
provide support for Fabricator. Um in
- 1:46
addition, if you were at the previous
- 1:47
talk, you saw Uday and Adam talking
- 1:49
about the agentic SDLC. A big part of
- 1:52
what we want to do is bring a consistent
- 1:54
code review experience to the inner loop
- 1:57
so that our agents are getting the same
- 1:59
code review, the same rules, everything
- 2:01
applied as our humans do.
- 2:04
With hundreds of teams across the
- 2:06
company, we can't have centralized
- 2:08
management of our code reviews, our
- 2:10
customizations, and our rules, and even
- 2:13
the knowledge that goes into those code
- 2:14
reviews. We need to distribute that. So,
- 2:16
we have a need for
- 2:18
plugging into existing team ownership
- 2:21
system rather than trying to replicate
- 2:23
that externally.
- 2:25
Uh finally, with the volume of code
- 2:27
reviews that we perform, we need the
- 2:29
ability to take factors like the risk
- 2:32
profile and the complexity of a code
- 2:35
change and factor that in when deciding
- 2:38
how we're going to run a code review.
- 2:40
Not all code gets the exact same review.
- 2:43
And then finally, consistency. We need
- 2:45
to make sure that we have security and
- 2:46
compliance reviews run across
- 2:48
everything. We can't rely on teams
- 2:51
hoping to run the skill the code review
- 2:53
skill that happens. We need reliability
- 2:55
there.
- 2:57
With all that said, I wanted to give you
- 2:58
an overview of the architecture of what
- 3:01
you review looks like. We'll talk about
- 3:03
a couple of the big pieces, and then
- 3:04
we're going to dive into a few focus
- 3:06
areas.
- 3:07
At the top, you'll notice that we have
- 3:09
our code review surface areas, GitHub,
- 3:12
Fabricator, and the agent loop.
- 3:14
These all feed into you review service.
- 3:18
These This takes in requests for
- 3:20
reviews.
- 3:21
It brings in feedback from users, and it
- 3:24
routes it. We have a number of different
- 3:25
generators. Now, these generators are
- 3:28
tuned for different performance and cost
- 3:33
avenues. There are We also have the
- 3:35
ability to plug into third-party code
- 3:37
review systems so that we can compare
- 3:39
ourselves to what's available more
- 3:42
broadly.
- 3:43
Finally, with all these different
- 3:44
generators, we might be might be
- 3:46
duplicating comments, and we can
- 3:48
actually create quite a high volume of
- 3:51
comments. If you've ever used AI to to
- 3:53
run a code review, you've probably seen
- 3:54
that. So, we run through a number of
- 3:57
steps in the post-processing where we
- 4:00
both rate, categorize, filter, and
- 4:03
deduplicate comments so that our
- 4:04
engineers get only the highest
- 4:06
confidence comments that are actionable
- 4:08
for them to work on.
- 4:10
You'll also notice along the bottom we
- 4:12
talk a little bit about feedback in our
- 4:14
evaluation. But, with this context of
- 4:16
the overall system, I'm now going to
- 4:18
hand it off to Ameya to dive into our
- 4:19
first focus area.
- 4:24
>> Hello.
- 4:25
Hello, everyone. So, I will be talking
- 4:27
about how we evolve U review with
- 4:30
observability and evaluation.
- 4:33
So, U review had a very humble
- 4:34
beginning. Basically, it was a single
- 4:37
prompt that you should do logic checks
- 4:38
per file, a simple agent which used to
- 4:40
do thorough review. And we had a
- 4:42
dispatcher to decide whether to go which
- 4:46
generator to choose.
- 4:48
Even what we used to collect as
- 4:49
observability was very surface-level. We
- 4:51
used to collect cost. We used to run an
- 4:53
NPS survey, have Google Forms being
- 4:55
filled, Slack support. And with all of
- 4:58
this, we saw that our quality to cost
- 5:00
ratio was like all over the place. Like,
- 5:03
our goal is to be in the second
- 5:04
quadrant, that is the top left quadrant,
- 5:07
but
- 5:08
you can see we were all over the place.
- 5:11
Then what we did is that we started
- 5:13
collecting more data. So, we started
- 5:17
collecting the sentiments of the replies
- 5:20
that were made to the U review
- 5:22
that the U review uh call
- 5:25
you know, the U review agent got from
- 5:27
the developers. So, we categorized them
- 5:29
into positive, negative. We classified
- 5:31
them into
- 5:32
various categories, and we found a bunch
- 5:35
a lot of classes of bugs and issues that
- 5:37
we could actually solve. And with that,
- 5:40
we improved the system, and we were able
- 5:42
to move a large number of PRs to a high
- 5:45
quality to cost ratio.
- 5:47
Um but, we still felt that this was not
- 5:49
enough.
- 5:51
We need to know more of how the review
- 5:53
is done. So we started tracking things
- 5:55
like address rate. So basically when a U
- 5:58
review comment is made, does the
- 6:00
developer go and actually address the
- 6:02
comment? We started tracking that. And
- 6:05
then we also
- 6:07
started doing more like a runtime
- 6:08
profile, which is like the agent
- 6:10
trajectory,
- 6:11
which told us
- 6:13
why the agent is doing what it what it
- 6:15
did. We get to know what tools calls it
- 6:19
made. We get to know what thinking
- 6:20
process it had. And then with that
- 6:22
insight, we were able to actually tune
- 6:25
our runtime, tune our performance such
- 6:27
that the agent could very quickly give
- 6:30
us
- 6:32
high-quality results at a low cost.
- 6:35
One of the biggest learnings in this
- 6:37
process was like the model doesn't know
- 6:39
that it's wrong. It always confidently
- 6:41
says 100% sure that yeah, this is the
- 6:44
review for your code. Go ahead. But we
- 6:46
saw that no, it actually needs a lot of
- 6:48
guidance from the teams because each
- 6:50
team has its own style guide, its own
- 6:54
patterns or like anti-patterns that they
- 6:56
want to look for. So that all should be
- 6:58
like baked into the agent. And we also
- 7:01
realized that we need to have guardrails
- 7:03
for the agent. So we need to tell the
- 7:05
agent what not to waste turns doing.
- 7:07
Like code review is something that has
- 7:09
to happen in like a specific time span.
- 7:12
And then if it starts spending time
- 7:14
doing things that it should not be
- 7:16
doing, uh leads to a bad quality code
- 7:19
review.
- 7:20
Uh second focus area for U review has
- 7:24
been
- 7:25
nations.
- 7:26
We
- 7:27
We went very deep on team customizations
- 7:29
because as we'll presented that we have
- 7:31
hundreds of teams and everyone has like
- 7:33
their own way or their own thing for
- 7:35
code review.
- 7:37
So our review stack is pretty
- 7:38
straightforward. We have single-file
- 7:40
reviewers and multi-file reviewers.
- 7:43
Uh, we basically do a general purpose
- 7:45
"Hey, find me all logic bugs per file"
- 7:48
uh, kind of a review. And uh, then we
- 7:50
also do a deep review because we have
- 7:52
like six mono repos. So, all these mono
- 7:54
repos have their own anti-pattern style
- 7:57
guides and all baked into this agent
- 7:59
review which does have a nice multi-file
- 8:01
review.
- 8:02
But, then we extended it further
- 8:04
uh, basically to AI linters. These are
- 8:07
basically few shot uh,
- 8:09
AI problem uh, or like a few shots uh,
- 8:12
system where uh, developers can
- 8:15
basically
- 8:16
kind of deterministically get more
- 8:18
context and then run rules with that
- 8:21
context and like a file and find some
- 8:24
uh, systematic and mechanical issues.
- 8:26
And finally uh, the most powerful thing
- 8:29
is the custom agent uh, where the teams
- 8:31
could basically define their own custom
- 8:33
agent, link it to like a knowledge base,
- 8:36
uh, link it to their past PRs, have like
- 8:38
a skill to do the review, and so on.
- 8:41
But, uh, all of this was not simple
- 8:44
because we had to actually uh, piggyback
- 8:46
on our uh, ownership model which is at
- 8:48
Uber uh, so that we can like very
- 8:50
logically roll out to all the teams.
- 8:54
Uh, we had to basically do a
- 8:57
uh, what do you say? Co-locate the
- 8:58
customizations next to where the
- 9:00
developers write their code so that they
- 9:02
can like quickly uh, keep updating these
- 9:04
customizations. We had to implement a
- 9:06
smart deterministic uh, routing so that
- 9:10
we could route which team gets what kind
- 9:12
of review with which model, what kind of
- 9:14
generators, and so on.
- 9:16
And finally uh, the hard thing was like
- 9:18
we had to actually surface all of this
- 9:20
observability that I talked before, like
- 9:23
the agent trajectory, addressal rate,
- 9:25
uh, sentiment analysis back to the
- 9:27
teams. So, so that the teams could
- 9:29
actually understand that "Oh, I wrote
- 9:31
this rule, but maybe not a lot of
- 9:33
developers are liking it in my team, so
- 9:35
let me go and update it." And then we
- 9:37
had to give Bubble up that kind of
- 9:39
observability to all the people who are
- 9:41
contributing to the platform.
- 9:43
Uh
- 9:44
one thing that we learned is that
- 9:46
actually writing the skill was very
- 9:48
easy. Like teams just very quickly wrote
- 9:51
a skill by asking Claude to write one,
- 9:53
go over my
- 9:55
previous PR reviews and write me a
- 9:57
skill. But the hard part was how to run
- 10:00
these skills at scale with consistent
- 10:02
quality and low cost. And that required
- 10:05
a lot of iterations not only from the
- 10:07
U-Review team side, but also like for
- 10:09
each team who was trying to write these
- 10:11
rules. Uh
- 10:13
in results, we basically uh see that,
- 10:16
you know, uh U-Review does like around
- 10:18
25,000 comments a week. And uh we get
- 10:21
10% of them actually get some feedback.
- 10:24
And only 4% of the PRs actually get some
- 10:26
negative feedback. Uh we also saw that
- 10:30
um
- 10:31
the overall addressal rate was uh around
- 10:33
67%
- 10:34
and almost three quarters of the high
- 10:36
severity issues uh
- 10:39
were usually addressed by the
- 10:40
developers, which shows that U-Review
- 10:42
actually adds some value to the entire
- 10:45
development life cycle. And then uh with
- 10:47
all the observability and
- 10:49
uh evals that I showed that I went
- 10:51
through, we saw that against like a very
- 10:53
naive implementation, our costs were
- 10:55
down by 60% and our quality and our
- 10:58
accuracy was up by uh around 70%.
- 11:02
Uh
- 11:02
for a last focus area, I'll give the mic
- 11:05
back to Will and he will go over the
- 11:07
inner versus outer loop.
- 11:11
>> Awesome. So, now that we've talked about
- 11:14
uh some of the details of actually
- 11:16
implementing high-quality reviews, it
- 11:19
kind of brings us to the last area,
- 11:21
which is where we start talking about
- 11:24
where things are going, right? With
- 11:25
moving to the Agentech SDLC,
- 11:28
we're moving software into a model where
- 11:31
engineers are interacting with the code
- 11:34
less.
- 11:35
They're often times not as involved in
- 11:37
authoring the code. Uh currently, we
- 11:40
still have uh humans approving the code,
- 11:43
uh but we see a a short path in the near
- 11:46
future to a percentage of our code
- 11:50
landing automatically, having automatic
- 11:51
approvals, right? The various parts of
- 11:54
the industry are already moving there.
- 11:56
Um
- 11:57
Part of the way along the process was
- 11:59
figuring out by having our single code
- 12:02
review platform, what did we need to
- 12:04
tune for the various audiences that are
- 12:07
actually getting these code reviews? Um
- 12:10
you know, the interface, that's one area
- 12:12
that's sort of intuitive there. Uh one
- 12:14
thing that might be less intuitive is
- 12:16
around accuracy. Uh with the inner loop,
- 12:20
our accuracy needs actually need to go
- 12:22
up,
- 12:23
or else we can result in uh dealing with
- 12:26
cavitation of an agent where it fixes
- 12:28
something, goes back, gets another code
- 12:29
review, and has to kind of like fix
- 12:31
backwards because the quality of the
- 12:33
comment was low. Um
- 12:36
The one of the other interesting things
- 12:38
is agents are more than happy to go
- 12:39
through and fix 100 nits on a pull
- 12:42
request where your engineers really get
- 12:44
frustrated in situations like that. Um
- 12:47
but probably the most interesting aspect
- 12:49
of this transition is the feedback. As
- 12:53
you can see, quite a bit of what went
- 12:55
into getting high-quality code reviews
- 12:57
at Uber was bringing the human feedback
- 13:01
into the system and using that to figure
- 13:04
out how to tune our prompts, how to tune
- 13:06
our agents.
- 13:08
Uh and so as we move to a model where
- 13:12
humans are less in the loop, where
- 13:15
software engineering is moving to an
- 13:17
agentic model,
- 13:19
we're effectively going to a place where
- 13:21
we're starting to talk about are we
- 13:23
going to kill the outer loop? Is the
- 13:24
human engineer not going to be involved
- 13:28
in the code review.
- 13:29
Some people are already here.
- 13:31
Now,
- 13:32
with the feedback taken into
- 13:34
consideration,
- 13:35
you start wondering, all right,
- 13:37
what could this result in, right? I'll
- 13:39
let your imagination go there in terms
- 13:41
of quality degradation, slop, and so
- 13:43
forth. But, rather than killing the
- 13:45
outer loop, I think that we believe and
- 13:48
the industry has just started to really
- 13:50
kind of coalesce on this idea that we're
- 13:52
really expanding the outer loop. Rather
- 13:55
than removing humans from the code
- 13:57
review process, we are moving their
- 14:01
responsibilities up a layer.
- 14:03
Rather than them dealing with the
- 14:05
details of the implementation, the agent
- 14:07
is great at writing the software.
- 14:09
The agent is getting much, much better
- 14:11
at reviewing the software as a human
- 14:13
would. But now, as software engineers,
- 14:15
we still are going to have an outer
- 14:17
loop. It's just going to look a little
- 14:18
different. Instead of you worrying about
- 14:20
the optimization of the performance and
- 14:23
the API compatibility, you're going to
- 14:25
be thinking more about architecture in
- 14:27
your code reviews. You're going to have
- 14:29
time to focus on the domain expertise
- 14:31
that you have and product thinking. So,
- 14:34
we believe that as we adopt this
- 14:36
automated uh code review, this is going
- 14:40
to be the result of how our engineers
- 14:42
are interacting with the system and
- 14:43
guiding it.
- 14:47
And that's it. Thank you so much for
- 14:48
coming. Thanks.