<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: R.Karunya Naidu</title>
    <description>The latest articles on DEV Community by R.Karunya Naidu (@karunya18).</description>
    <link>https://dev.to/karunya18</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4147568%2Feb80f9e9-0d2b-4e9d-8047-476c8762173b.png</url>
      <title>DEV Community: R.Karunya Naidu</title>
      <link>https://dev.to/karunya18</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/karunya18"/>
    <language>en</language>
    <item>
      <title>Designing a tool that uses LLMs to negotiate SaaS prices. Looking for feedback on the architecture.</title>
      <dc:creator>R.Karunya Naidu</dc:creator>
      <pubDate>Mon, 28 Sep 2026 17:08:04 +0000</pubDate>
      <link>https://dev.to/karunya18/designing-a-tool-that-uses-llms-to-negotiate-saas-prices-looking-for-feedback-on-the-architecture-35kf</link>
      <guid>https://dev.to/karunya18/designing-a-tool-that-uses-llms-to-negotiate-saas-prices-looking-for-feedback-on-the-architecture-35kf</guid>
      <description>&lt;p&gt;One of the easiest ways to make an AI application difficult to use is to turn every capability into another screen.&lt;br&gt;
While building DealMind, we wanted to avoid that.&lt;br&gt;
The product has memory, evidence, strategies, what-if analysis, counteroffer guidance, customer history, and learning.&lt;br&gt;
But the user should not feel like they are navigating seven different applications.&lt;br&gt;
The solution was to organize everything around one object:&lt;br&gt;
the current negotiation.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;One simple workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The main workflow is:&lt;br&gt;
Dashboard&lt;br&gt;
↓&lt;br&gt;
New Negotiation&lt;br&gt;
↓&lt;br&gt;
Analyze&lt;br&gt;
↓&lt;br&gt;
Recommendation&lt;br&gt;
↓&lt;br&gt;
Strategies / What-if / Counteroffer / Evidence / Customer&lt;br&gt;
↓&lt;br&gt;
Record Outcome&lt;br&gt;
↓&lt;br&gt;
Learning&lt;br&gt;
This keeps the user's mental model simple.&lt;br&gt;
The user starts with a deal.&lt;br&gt;
Everything else exists to help with that deal.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;New Negotiation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The New Negotiation screen captures information that matters to the negotiation:&lt;br&gt;
• Customer&lt;br&gt;
• Industry&lt;br&gt;
• Segment&lt;br&gt;
• Deal value&lt;br&gt;
• Initial offer&lt;br&gt;
• Customer counteroffer&lt;br&gt;
• Requested discount&lt;br&gt;
• Objection&lt;br&gt;
• Competitor pressure&lt;br&gt;
• Contract length&lt;br&gt;
The user can enter their own negotiation.&lt;br&gt;
There is also a demo scenario for quickly understanding the workflow.&lt;br&gt;
The demo customer is not hardcoded into the product's identity.&lt;br&gt;
The system should work with arbitrary customers and negotiation values.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The deal workspace&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;After analysis, the user enters the deal workspace.&lt;br&gt;
Instead of creating separate permanent pages for every feature, the current negotiation contains tabs such as:&lt;br&gt;
&lt;strong&gt;Overview&lt;br&gt;
Strategies&lt;br&gt;
What-if&lt;br&gt;
Counteroffer&lt;br&gt;
Evidence&lt;br&gt;
Customer&lt;/strong&gt;&lt;br&gt;
This keeps the tools contextual.&lt;br&gt;
For example, evidence is useful because it explains the current recommendation.&lt;br&gt;
What-if analysis is useful because it lets the user explore the current deal.&lt;br&gt;
Customer history is useful because it provides context for the current customer.&lt;br&gt;
Everything belongs to the same workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Making memory visible&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Hindsight should not be hidden behind the backend.&lt;br&gt;
One of the UX goals was to make memory visible when it matters.&lt;br&gt;
The user should be able to see that the recommendation is based on historical experience.&lt;br&gt;
Evidence identifiers help connect the recommendation to recalled memories.&lt;br&gt;
This gives the user a way to understand:&lt;br&gt;
&lt;strong&gt;What did the system remember?&lt;/strong&gt;&lt;br&gt;
and:&lt;br&gt;
&lt;strong&gt;Why did that memory matter?&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Handling uncertainty&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A professional AI interface also needs to communicate when it does not have enough information.&lt;br&gt;
If Hindsight is temporarily unavailable, the system should not pretend that it recalled historical negotiations.&lt;br&gt;
Instead, the interface should indicate that historical memory is unavailable.&lt;br&gt;
Similarly, if the LLM is unavailable and the application uses a deterministic fallback, that should be clear.&lt;br&gt;
We considered this an important UX principle:&lt;br&gt;
&lt;strong&gt;Uncertainty should be visible rather than hidden.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The 60-second workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The same design philosophy applies to the short product demo.&lt;br&gt;
The demo should tell one story:&lt;/p&gt;

&lt;p&gt;Load a negotiation.&lt;br&gt;
Analyze it.&lt;br&gt;
Recall Hindsight memory.&lt;br&gt;
Show evidence.&lt;br&gt;
Show confidence and economics.&lt;br&gt;
Explore strategies.&lt;br&gt;
Record the outcome.&lt;br&gt;
Show the learning update. The user should be able to understand the entire memory loop without navigating through unrelated screens.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Why the learning loop affects UX&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The learning feature also changes how we think about the product.&lt;br&gt;
If the application only produced a recommendation, the workflow would end at the recommendation.&lt;br&gt;
But DealMind continues:&lt;br&gt;
&lt;strong&gt;Recommendation → Outcome → Memory → Future recommendation&lt;/strong&gt;&lt;br&gt;
That means the UX needs to make the outcome step visible.&lt;br&gt;
The user should understand that recording the result is not just administrative work.&lt;br&gt;
It is how the system gains another piece of organizational experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Keeping technical complexity away from the main workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Another design decision was keeping technical system information separate.&lt;br&gt;
API health, memory configuration, and system status belong in Settings.&lt;br&gt;
They should not dominate the main negotiation experience.&lt;br&gt;
The salesperson's main concern is the deal.&lt;br&gt;
The system's technical implementation should support that workflow without getting in its way.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Human-centered decision support&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;DealMind is designed to support the salesperson rather than replace them.&lt;br&gt;
The interface presents evidence, calculations, strategies, and customer context.&lt;br&gt;
The user decides what to do.&lt;br&gt;
This makes the product feel more like a negotiation workspace than an autonomous chatbot.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The UX challenge in DealMind was not simply making the interface look good.&lt;br&gt;
It was making the memory loop understandable.&lt;br&gt;
The user should be able to see:&lt;br&gt;
&lt;strong&gt;What the system remembered.&lt;br&gt;
Why it mattered.&lt;br&gt;
What the system recommends.&lt;br&gt;
What happened afterward.&lt;br&gt;
How that outcome can become future memory.__&lt;/strong&gt;&lt;br&gt;
That is what guided the DealMind workflow.&lt;br&gt;
The product becomes more useful as organizational experience accumulates, while the interface remains centered on one simple thing:&lt;br&gt;
&lt;strong&gt;the negotiation happening right now.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>llm</category>
      <category>saas</category>
    </item>
    <item>
      <title>Designing a tool that uses LLMs to negotiate SaaS prices. Looking for feedback on the architecture.</title>
      <dc:creator>R.Karunya Naidu</dc:creator>
      <pubDate>Mon, 28 Sep 2026 16:23:40 +0000</pubDate>
      <link>https://dev.to/karunya18/designing-an-ai-negotiation-agent-that-gets-more-useful-after-the-first-deal-12a4</link>
      <guid>https://dev.to/karunya18/designing-an-ai-negotiation-agent-that-gets-more-useful-after-the-first-deal-12a4</guid>
      <description>&lt;p&gt;One of the easiest ways to make an AI application difficult to use is to turn every capability into another screen.&lt;br&gt;
While building DealMind, we wanted to avoid that.&lt;br&gt;
The product has memory, evidence, strategies, what-if analysis, counteroffer guidance, customer history, and learning.&lt;br&gt;
But the user should not feel like they are navigating seven different applications.&lt;br&gt;
The solution was to organize everything around one object:&lt;br&gt;
the current negotiation.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;One simple workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The main workflow is:&lt;br&gt;
Dashboard&lt;br&gt;
   ↓&lt;br&gt;
New Negotiation&lt;br&gt;
   ↓&lt;br&gt;
Analyze&lt;br&gt;
   ↓&lt;br&gt;
Recommendation&lt;br&gt;
   ↓&lt;br&gt;
Strategies / What-if / Counteroffer / Evidence / Customer&lt;br&gt;
   ↓&lt;br&gt;
Record Outcome&lt;br&gt;
   ↓&lt;br&gt;
Learning&lt;br&gt;
This keeps the user's mental model simple.&lt;br&gt;
The user starts with a deal.&lt;br&gt;
Everything else exists to help with that deal.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;New Negotiation&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The New Negotiation screen captures information that matters to the negotiation:&lt;br&gt;
• Customer &lt;br&gt;
• Industry &lt;br&gt;
• Segment &lt;br&gt;
• Deal value &lt;br&gt;
• Initial offer &lt;br&gt;
• Customer counteroffer &lt;br&gt;
• Requested discount &lt;br&gt;
• Objection &lt;br&gt;
• Competitor pressure &lt;br&gt;
• Contract length &lt;br&gt;
The user can enter their own negotiation.&lt;br&gt;
There is also a demo scenario for quickly understanding the workflow.&lt;br&gt;
The demo customer is not hardcoded into the product's identity.&lt;br&gt;
The system should work with arbitrary customers and negotiation values.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The deal workspace&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;After analysis, the user enters the deal workspace.&lt;br&gt;
Instead of creating separate permanent pages for every feature, the current negotiation contains tabs such as:&lt;br&gt;
&lt;strong&gt;Overview&lt;br&gt;
Strategies&lt;br&gt;
What-if&lt;br&gt;
Counteroffer&lt;br&gt;
Evidence&lt;br&gt;
Customer&lt;/strong&gt;&lt;br&gt;
This keeps the tools contextual.&lt;br&gt;
For example, evidence is useful because it explains the current recommendation.&lt;br&gt;
What-if analysis is useful because it lets the user explore the current deal.&lt;br&gt;
Customer history is useful because it provides context for the current customer.&lt;br&gt;
Everything belongs to the same workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Making memory visible&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Hindsight should not be hidden behind the backend.&lt;br&gt;
One of the UX goals was to make memory visible when it matters.&lt;br&gt;
The user should be able to see that the recommendation is based on historical experience.&lt;br&gt;
Evidence identifiers help connect the recommendation to recalled memories.&lt;br&gt;
This gives the user a way to understand:&lt;br&gt;
&lt;strong&gt;What did the system remember?&lt;/strong&gt;&lt;br&gt;
and:&lt;br&gt;
&lt;strong&gt;Why did that memory matter?&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Handling uncertainty&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;A professional AI interface also needs to communicate when it does not have enough information.&lt;br&gt;
If Hindsight is temporarily unavailable, the system should not pretend that it recalled historical negotiations.&lt;br&gt;
Instead, the interface should indicate that historical memory is unavailable.&lt;br&gt;
Similarly, if the LLM is unavailable and the application uses a deterministic fallback, that should be clear.&lt;br&gt;
We considered this an important UX principle:&lt;br&gt;
&lt;strong&gt;Uncertainty should be visible rather than hidden.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The 60-second workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The same design philosophy applies to the short product demo.&lt;br&gt;
The demo should tell one story:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Load a negotiation. &lt;/li&gt;
&lt;li&gt; Analyze it. &lt;/li&gt;
&lt;li&gt; Recall Hindsight memory. &lt;/li&gt;
&lt;li&gt; Show evidence. &lt;/li&gt;
&lt;li&gt; Show confidence and economics. &lt;/li&gt;
&lt;li&gt; Explore strategies. &lt;/li&gt;
&lt;li&gt; Record the outcome. &lt;/li&gt;
&lt;li&gt; Show the learning update. 
The user should be able to understand the entire memory loop without navigating through unrelated screens.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Why the learning loop affects UX&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The learning feature also changes how we think about the product.&lt;br&gt;
If the application only produced a recommendation, the workflow would end at the recommendation.&lt;br&gt;
But DealMind continues:&lt;br&gt;
&lt;strong&gt;Recommendation → Outcome → Memory → Future recommendation&lt;/strong&gt;&lt;br&gt;
That means the UX needs to make the outcome step visible.&lt;br&gt;
The user should understand that recording the result is not just administrative work.&lt;br&gt;
It is how the system gains another piece of organizational experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Keeping technical complexity away from the main workflow&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Another design decision was keeping technical system information separate.&lt;br&gt;
API health, memory configuration, and system status belong in Settings.&lt;br&gt;
They should not dominate the main negotiation experience.&lt;br&gt;
The salesperson's main concern is the deal.&lt;br&gt;
The system's technical implementation should support that workflow without getting in its way.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Human-centered decision support&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;DealMind is designed to support the salesperson rather than replace them.&lt;br&gt;
The interface presents evidence, calculations, strategies, and customer context.&lt;br&gt;
The user decides what to do.&lt;br&gt;
This makes the product feel more like a negotiation workspace than an autonomous chatbot.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The UX challenge in DealMind was not simply making the interface look good.&lt;br&gt;
It was making the memory loop understandable.&lt;br&gt;
The user should be able to see:&lt;br&gt;
&lt;strong&gt;What the system remembered.&lt;br&gt;
Why it mattered.&lt;br&gt;
What the system recommends.&lt;br&gt;
What happened afterward.&lt;br&gt;
How that outcome can become future memory.&lt;/strong&gt;__&lt;br&gt;
That is what guided the DealMind workflow.&lt;br&gt;
The product becomes more useful as organizational experience accumulates, while the interface remains centered on one simple thing:&lt;br&gt;
&lt;strong&gt;the negotiation happening right now.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>llm</category>
      <category>startup</category>
    </item>
  </channel>
</rss>
