<?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: Thanh hung Pham</title>
    <description>The latest articles on DEV Community by Thanh hung Pham (@thanh_hungpham_c49dbf482).</description>
    <link>https://dev.to/thanh_hungpham_c49dbf482</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%2F2850721%2F69547fac-58fa-4b61-8bf3-c792355dc35e.png</url>
      <title>DEV Community: Thanh hung Pham</title>
      <link>https://dev.to/thanh_hungpham_c49dbf482</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thanh_hungpham_c49dbf482"/>
    <language>en</language>
    <item>
      <title>Laya – An Alternative to Jev for AI Decision-Making</title>
      <dc:creator>Thanh hung Pham</dc:creator>
      <pubDate>Thu, 01 Oct 2026 09:23:17 +0000</pubDate>
      <link>https://dev.to/thanh_hungpham_c49dbf482/laya-an-alternative-to-jev-for-ai-decision-making-20fb</link>
      <guid>https://dev.to/thanh_hungpham_c49dbf482/laya-an-alternative-to-jev-for-ai-decision-making-20fb</guid>
      <description>&lt;p&gt;When building an application that uses AI, the most common choice today is almost always an LLM.&lt;/p&gt;

&lt;p&gt;Application sends a prompt:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Context + Instruction
        ↓
       LLM
        ↓
Generated response
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We use GPT, Claude, Gemini, or other models to chat, summarize, generate content, write code, analyze documents, and so on.&lt;/p&gt;

&lt;p&gt;But there is a rather interesting question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;What if the application does not need AI to generate text?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For example, the application only needs AI to answer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What category does this ticket belong to?&lt;/li&gt;
&lt;li&gt;Which team should this request be routed to?&lt;/li&gt;
&lt;li&gt;Is this document related to the case?&lt;/li&gt;
&lt;li&gt;Is this transaction suspicious?&lt;/li&gt;
&lt;li&gt;Which branch should the workflow follow?&lt;/li&gt;
&lt;li&gt;Does this user belong to group A or B?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In these cases, the application does not really need a long answer.&lt;/p&gt;

&lt;p&gt;It only needs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
  ↓
Decision
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is where the concept of an &lt;strong&gt;AI Decision Model&lt;/strong&gt; becomes interesting.&lt;/p&gt;

&lt;p&gt;One notable example is &lt;strong&gt;Jev&lt;/strong&gt;. And if you are looking for an open-source/self-hostable approach for this type of workload, &lt;strong&gt;Laya&lt;/strong&gt; is a project worth exploring.&lt;/p&gt;




&lt;h1&gt;
  
  
  1. What is Jev?
&lt;/h1&gt;

&lt;p&gt;Jev is an AI decision model from TypeSafe AI.&lt;/p&gt;

&lt;p&gt;The fundamental difference between Jev and a typical LLM is the intended use case.&lt;/p&gt;

&lt;p&gt;LLMs are designed to process and generate language.&lt;/p&gt;

&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User:
I cannot login to my account.

LLM:
It looks like you're having trouble accessing
your account. Please try resetting your password...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Meanwhile, a decision model focuses on a different question:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User message
     ↓
Which category?
     ↓
ACCOUNT
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Instead of asking the model to generate a free-form answer, the application defines a &lt;strong&gt;decision space&lt;/strong&gt; in advance.&lt;/p&gt;

&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;BILLING
TECHNICAL
ACCOUNT
SALES
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then the model selects one result from these options.&lt;/p&gt;

&lt;p&gt;The result could contain a decision and probability, for example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"decision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ACCOUNT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"probability"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;0.94&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is quite an interesting abstraction for a software system:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI does not always need to talk to the user. Sometimes AI only needs to provide a decision to the application.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  2. Why not use an LLM for this?
&lt;/h1&gt;

&lt;p&gt;This is a completely reasonable question.&lt;/p&gt;

&lt;p&gt;We can tell an LLM:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Classify this support ticket.

Possible categories:
- BILLING
- TECHNICAL
- ACCOUNT
- SALES

Return JSON only.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then receive:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"category"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ACCOUNT"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So why do we need a separate decision model?&lt;/p&gt;

&lt;p&gt;Not because LLMs cannot do it.&lt;/p&gt;

&lt;p&gt;LLMs are very good at this.&lt;/p&gt;

&lt;p&gt;The issue is the &lt;strong&gt;fit between the model and the workload&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When using an LLM, the flow is still:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Prompt
   ↓
Understand context
   ↓
Reason
   ↓
Generate tokens
   ↓
Produce JSON
   ↓
Parse response
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;While the application only needs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
  ↓
Classification
  ↓
Result
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If your workload is primarily classification, routing, scoring, or yes/no decisions, a model designed for decision tasks can be a reasonable approach.&lt;/p&gt;

&lt;p&gt;This is not about:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Decision Model is better than LLM.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It is about:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Choose the type of model that fits the type of workload.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  3. What is Laya?
&lt;/h1&gt;

&lt;p&gt;Laya follows a similar &lt;strong&gt;AI Decision Model&lt;/strong&gt; approach.&lt;/p&gt;

&lt;p&gt;What makes Laya interesting is its &lt;strong&gt;open-source/open-weight and self-hostable&lt;/strong&gt; approach.&lt;/p&gt;

&lt;p&gt;Instead of the application being completely dependent on an external decision API, developers can deploy the model within their own infrastructure.&lt;/p&gt;

&lt;p&gt;From an architecture perspective:&lt;/p&gt;

&lt;h3&gt;
  
  
  Hosted approach
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Application
     │
     ▼
External AI API
     │
     ▼
Decision
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Self-hosted approach
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Application
     │
     ▼
Laya Server
     │
     ▼
Decision Model
     │
     ▼
Decision
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This provides another option for teams that want more control over:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Data&lt;/li&gt;
&lt;li&gt;Network&lt;/li&gt;
&lt;li&gt;Deployment&lt;/li&gt;
&lt;li&gt;Infrastructure&lt;/li&gt;
&lt;li&gt;Cost&lt;/li&gt;
&lt;li&gt;Model lifecycle&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Especially for enterprise applications, being able to run a model within internal infrastructure can sometimes be very important.&lt;/p&gt;




&lt;h1&gt;
  
  
  4. How can Laya replace Jev?
&lt;/h1&gt;

&lt;p&gt;This is probably the most important part.&lt;/p&gt;

&lt;p&gt;If Jev represents the approach:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI as a Decision API&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;then Laya can be considered another option for the same class of workloads.&lt;/p&gt;

&lt;p&gt;For example, the application needs to classify a ticket:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Incoming Ticket
       │
       ▼
Decision Model
       │
       ├── BILLING
       ├── ACCOUNT
       ├── TECHNICAL
       └── SALES
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If using Jev, the decision is made through the Jev service.&lt;/p&gt;

&lt;p&gt;If using Laya, the developer can deploy the decision model within their own infrastructure.&lt;/p&gt;

&lt;p&gt;However, "replace" here should not be understood as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Laya is a drop-in replacement for Jev in every case.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The two systems may differ in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Model&lt;/li&gt;
&lt;li&gt;API&lt;/li&gt;
&lt;li&gt;Performance&lt;/li&gt;
&lt;li&gt;Capability&lt;/li&gt;
&lt;li&gt;Deployment&lt;/li&gt;
&lt;li&gt;Ecosystem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The main point is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;If your workload is suitable for an AI Decision Model, Laya can be an option to consider alongside Jev.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Especially if your requirements include:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Decision Model
+
Self-hosting
+
Open-source/open-weight
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then Laya becomes more interesting.&lt;/p&gt;




&lt;h1&gt;
  
  
  5. How is Laya different from an LLM?
&lt;/h1&gt;

&lt;p&gt;It can be viewed simply as follows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;              AI Models
                  │
        ┌─────────┴─────────┐
        │                   │
        ▼                   ▼
      LLM             Decision Model
        │                   │
        ▼                   ▼
Generate content       Make decision
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;LLMs are suitable for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"Write an email."
"Summarize this document."
"Explain this code."
"Generate a report."
"Answer this question."
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Decision Models are more suitable for:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"Which category?"
"Which route?"
"Yes or No?"
"Which option?"
"What score?"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An important point is that a &lt;strong&gt;Decision Model does not necessarily have to replace an LLM&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;They can be used together.&lt;/p&gt;




&lt;h1&gt;
  
  
  6. Combining Laya and an LLM
&lt;/h1&gt;

&lt;p&gt;This is where the architecture becomes interesting in production.&lt;/p&gt;

&lt;p&gt;For example, imagine building a Customer Support system.&lt;/p&gt;

&lt;p&gt;The user sends:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"I was charged twice for the same transaction."
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The first step could use Laya:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User Message
      ↓
    Laya
      ↓
    BILLING
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then the application routes the request to the billing flow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;BILLING
   ↓
LLM
   ↓
Generate response
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Architecture:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                  User Message
                       │
                       ▼
                  ┌─────────┐
                  │  Laya   │
                  └────┬────┘
                       │
                       ▼
                  Classification
                       │
             ┌─────────┼─────────┐
             ▼         ▼         ▼
          Billing   Account   Technical
             │
             ▼
            LLM
             │
             ▼
      Generate Response
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here, each model has a clear responsibility.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Laya:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Where should this request go?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;LLM:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Now that we know which flow the request belongs to, generate the response.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is how AI can become part of the software architecture instead of simply being a chatbot called from somewhere in the application.&lt;/p&gt;




&lt;h1&gt;
  
  
  7. Another use case: Workflow
&lt;/h1&gt;

&lt;p&gt;Imagine a workflow for processing documents.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Upload Document
       ↓
Extract Information
       ↓
Decision
       ↓
┌───────────────┐
│ APPROVE       │
│ REVIEW        │
│ REJECT        │
└───────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A decision model can act as a source of a decision signal:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"decision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"REVIEW"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"probability"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;0.81&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then the business application decides what to do:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;probability &amp;gt;= 0.90
        ↓
    automatic flow

0.60 - 0.90
        ↓
    human review

&amp;lt; 0.60
        ↓
      fallback
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The important point here is:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI does not necessarily have to have the authority to decide the entire workflow.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI can simply provide a signal.&lt;/p&gt;

&lt;p&gt;The business application still controls:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Business rules&lt;/li&gt;
&lt;li&gt;Authorization&lt;/li&gt;
&lt;li&gt;Validation&lt;/li&gt;
&lt;li&gt;Workflow&lt;/li&gt;
&lt;li&gt;Audit&lt;/li&gt;
&lt;li&gt;Final action&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is an approach worth considering when introducing AI into enterprise systems.&lt;/p&gt;




&lt;h1&gt;
  
  
  8. Problems that are suitable for Laya
&lt;/h1&gt;

&lt;p&gt;Laya is particularly worth experimenting with for problems that have a relatively clear decision space.&lt;/p&gt;

&lt;h3&gt;
  
  
  Classification
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Document
   ↓
INVOICE
CONTRACT
ID_DOCUMENT
OTHER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Routing
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Request
   ↓
TEAM_A
TEAM_B
TEAM_C
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Binary decision
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Request
   ↓
YES / NO
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Scoring
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
   ↓
Risk Score
0.0 ───────── 1.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Workflow decision
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Application
      ↓
Decision
      ↓
Next Step
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Intent detection
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User message
      ↓
LOGIN
PAYMENT
REFUND
ACCOUNT
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These are all very common operations in backend systems.&lt;/p&gt;




&lt;h1&gt;
  
  
  9. Self-hosting: Why does it matter?
&lt;/h1&gt;

&lt;p&gt;One of the reasons developers may be interested in Laya is its self-hosting capability.&lt;/p&gt;

&lt;p&gt;With an external AI service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Your System
    ↓
Internet
    ↓
AI Provider
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With a self-hosted model:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Your System
    ↓
Internal Network
    ↓
Laya
    ↓
Model
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This can be suitable for systems that need tighter control over data or infrastructure.&lt;/p&gt;

&lt;p&gt;But self-hosting is not free in terms of operations.&lt;/p&gt;

&lt;p&gt;You will need to care about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU/GPU&lt;/li&gt;
&lt;li&gt;Memory&lt;/li&gt;
&lt;li&gt;Deployment&lt;/li&gt;
&lt;li&gt;Monitoring&lt;/li&gt;
&lt;li&gt;Scaling&lt;/li&gt;
&lt;li&gt;Availability&lt;/li&gt;
&lt;li&gt;Model updates&lt;/li&gt;
&lt;li&gt;Security&lt;/li&gt;
&lt;li&gt;Operational cost&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Therefore, the question should not simply be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Is Laya open-source?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead, it should be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Does self-hosting actually fit my workload and infrastructure?"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  10. Laya vs Jev
&lt;/h1&gt;

&lt;p&gt;If we look at them at the architecture level, we can place the two approaches side by side:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                 Decision AI
                     │
          ┌──────────┴──────────┐
          │                     │
         Jev                   Laya
          │                     │
   Hosted Decision        Self-hostable
       Service             Decision Model
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The differences to consider are not only model accuracy.&lt;/p&gt;

&lt;p&gt;When evaluating a solution in practice, developers should look at:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API compatibility&lt;/li&gt;
&lt;li&gt;Model capability&lt;/li&gt;
&lt;li&gt;Latency&lt;/li&gt;
&lt;li&gt;Throughput&lt;/li&gt;
&lt;li&gt;Accuracy on real-world data&lt;/li&gt;
&lt;li&gt;Hardware requirements&lt;/li&gt;
&lt;li&gt;Deployment complexity&lt;/li&gt;
&lt;li&gt;Monitoring&lt;/li&gt;
&lt;li&gt;Cost&lt;/li&gt;
&lt;li&gt;Data privacy&lt;/li&gt;
&lt;li&gt;Licensing&lt;/li&gt;
&lt;li&gt;Ecosystem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In particular, you should not benchmark using only a few simple examples.&lt;/p&gt;

&lt;p&gt;A model may perform very well in a demo but produce different results when running on production data.&lt;/p&gt;




&lt;h1&gt;
  
  
  11. When should you not use Laya?
&lt;/h1&gt;

&lt;p&gt;Not every application needs a Decision Model.&lt;/p&gt;

&lt;p&gt;If the problem is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Generate a 2,000-word report
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then an LLM is more suitable.&lt;/p&gt;

&lt;p&gt;If you need:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Have a conversation with user
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then an LLM remains the natural choice.&lt;/p&gt;

&lt;p&gt;If you need:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Analyze a large document
and explain the reasoning
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then a generative model is also more suitable.&lt;/p&gt;

&lt;p&gt;A Decision Model is most suitable when:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
   ↓
Defined decision space
   ↓
Structured result
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the decision space is too open-ended or the application needs generated content, you may be using the wrong abstraction.&lt;/p&gt;




&lt;h1&gt;
  
  
  12. A Different Way to Look at AI Architecture
&lt;/h1&gt;

&lt;p&gt;What I find most interesting about Laya is not the question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Can Laya replace LLMs?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But rather, it raises a different question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Does every AI problem necessarily need an LLM?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In software engineering, we do not use the same technology for every workload.&lt;/p&gt;

&lt;p&gt;There are many types of databases.&lt;/p&gt;

&lt;p&gt;There are many types of message brokers.&lt;/p&gt;

&lt;p&gt;There are many types of storage.&lt;/p&gt;

&lt;p&gt;There are also many programming languages.&lt;/p&gt;

&lt;p&gt;AI can follow a similar direction.&lt;/p&gt;

&lt;p&gt;Instead of:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Everything
    ↓
LLM
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We could have:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                    AI Layer
                       │
          ┌────────────┼────────────┐
          │            │            │
          ▼            ▼            ▼
        LLM       Decision Model   Embedding
          │            │            │
          ▼            ▼            ▼
      Generation    Decisions     Retrieval
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AI then becomes a collection of capabilities rather than a single LLM.&lt;/p&gt;




&lt;h1&gt;
  
  
  13. Conclusion
&lt;/h1&gt;

&lt;p&gt;Laya is an interesting project if you are interested in &lt;strong&gt;AI Decision Models&lt;/strong&gt; and want to explore an open-source/self-hostable option alongside decision services such as Jev.&lt;/p&gt;

&lt;p&gt;The important point is not to view Laya as a "new LLM."&lt;/p&gt;

&lt;p&gt;It solves a different type of problem:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
  ↓
Understand
  ↓
Decision
  ↓
Application takes action
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Instead of:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Input
  ↓
LLM
  ↓
Generate everything
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This opens up a rather interesting way to design AI applications.&lt;/p&gt;

&lt;p&gt;LLMs can handle &lt;strong&gt;generation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Decision Models can handle &lt;strong&gt;decision-making&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The application still retains control over &lt;strong&gt;business logic and the final action&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Therefore, if you are building an AI-powered application, perhaps the first question should not be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Which model should I use?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"What does my application actually need AI to do?"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you need to generate → use a generative model.&lt;/p&gt;

&lt;p&gt;If you need to retrieve → use embeddings/retrieval.&lt;/p&gt;

&lt;p&gt;If you need to make decisions → a Decision Model such as Laya can be an option worth trying.&lt;/p&gt;

&lt;p&gt;And that is exactly what makes Laya interesting:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI does not necessarily have to generate everything. Sometimes, AI only needs to help software make a structured decision.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
    </item>
    <item>
      <title>AI-Native Software Development: Redesigning the Software Development Workflow with AI</title>
      <dc:creator>Thanh hung Pham</dc:creator>
      <pubDate>Sun, 27 Sep 2026 04:12:17 +0000</pubDate>
      <link>https://dev.to/thanh_hungpham_c49dbf482/ai-native-software-development-redesigning-the-software-development-workflow-with-ai-4jk7</link>
      <guid>https://dev.to/thanh_hungpham_c49dbf482/ai-native-software-development-redesigning-the-software-development-workflow-with-ai-4jk7</guid>
      <description>&lt;p&gt;AI is changing the way software engineers develop software. From analyzing requirements, designing solutions, writing code, creating tests, debugging, to code review, more and more tasks can be supported or automated by AI.&lt;/p&gt;

&lt;p&gt;However, most of the ways we currently apply AI are still focused on individuals or individual stages. Developers use AI coding assistants, QA uses AI to generate test cases, BA uses AI to analyze requirements, while DevOps uses AI to support CI/CD operations.&lt;/p&gt;

&lt;p&gt;This helps individuals work faster, but it does not solve a bigger problem: &lt;strong&gt;the entire engineering workflow has still not truly been redesigned for AI.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A developer can code faster, but still has to wait for requirement clarification. QA still has to understand the context again. Developers still have to explain the design to QA. Reviewers still have to read a large amount of code generated by AI. Knowledge is still scattered across documentation, tickets, source code, chat, and the minds of individual team members.&lt;/p&gt;

&lt;p&gt;Therefore, instead of only asking, "How much faster can AI help developers code?", we should ask a different question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How can AI make the entire software engineering workflow faster, more continuous, and less prone to rework?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That is the problem of &lt;strong&gt;AI-Native Software Development&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. The Problem Is Not Only Coding
&lt;/h2&gt;

&lt;p&gt;A software feature does not only involve writing code. A typical workflow may start with Product or BA analyzing requirements, followed by a Tech Lead or Architect designing the solution, Developer implementation, QA verification, Code Review, and finally Deployment.&lt;/p&gt;

&lt;p&gt;Throughout this entire process, coding is only one part.&lt;/p&gt;

&lt;p&gt;Actual time is also spent searching for information, clarification, design discussions, handoffs between roles, waiting for reviews, writing tests, debugging, handling CI failures, and especially rework when part of the context is misunderstood.&lt;/p&gt;

&lt;p&gt;For example, a requirement may be passed from BA to Developer in the form of a ticket. The Developer reads the ticket, asks additional questions, and searches for documentation. After the implementation is completed, QA has to read the ticket and code again to understand the system behavior. When an issue is found, the information goes back to the Developer. Each handoff creates coordination cost.&lt;/p&gt;

&lt;p&gt;Therefore, if we only optimize coding time, we are optimizing only one part of the system.&lt;/p&gt;

&lt;p&gt;The larger goal should be to reduce &lt;strong&gt;lead time, cycle time, waiting time, coordination cost, and rework&lt;/strong&gt; across the entire engineering process.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. AI Fragmentation Is a New Problem
&lt;/h2&gt;

&lt;p&gt;As AI begins to be introduced into teams, a new problem appears: AI fragmentation.&lt;/p&gt;

&lt;p&gt;Developer A uses one AI tool. Developer B uses another tool. QA has a separate workflow. BA uses another AI to write specifications.&lt;/p&gt;

&lt;p&gt;Each AI may have different context, instructions, and knowledge.&lt;/p&gt;

&lt;p&gt;This creates a paradox: the team has more AI, but does not have a unified AI engineering workflow.&lt;/p&gt;

&lt;p&gt;Knowledge is fragmented in a similar way. Business rules may exist in documentation, architecture decisions may exist in tickets or discussions, implementation knowledge exists in source code, and production knowledge exists in incidents or postmortems.&lt;/p&gt;

&lt;p&gt;When an AI agent handles a task, if it can only see part of this information, its output may lack context or fail to comply with the team's engineering standards.&lt;/p&gt;

&lt;p&gt;Therefore, AI-Native Software Development needs to address not only AI execution but also &lt;strong&gt;context and knowledge management&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. AI Should Not Be Added to Each Role Independently
&lt;/h2&gt;

&lt;p&gt;A natural approach is to build AI for each role:&lt;/p&gt;

&lt;p&gt;BA + AI, Architect + AI, Developer + AI, QA + AI, and DevOps + AI.&lt;/p&gt;

&lt;p&gt;But this approach still keeps the old workflow. AI simply becomes a tool alongside each role.&lt;/p&gt;

&lt;p&gt;Another approach is to integrate AI throughout the workflow.&lt;/p&gt;

&lt;p&gt;Requirements are analyzed with AI support and transformed into specifications. Specifications become the context for design. Design becomes the context for implementation. Implementation creates code and tests. QA uses requirement, design, and implementation context for verification. Verification results and production feedback continue to become engineering knowledge.&lt;/p&gt;

&lt;p&gt;Here, AI is not a separate tool for Developers or QA. AI becomes a layer that runs throughout the software development workflow.&lt;/p&gt;

&lt;p&gt;Humans still retain the decision-making role. AI supports analysis, generation, verification, and automation; humans are responsible for business decisions, architecture decisions, approvals, and accountability.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Artifacts Are the Bridge Between Roles
&lt;/h2&gt;

&lt;p&gt;One way to reduce context loss is to turn the output of each phase into a structured artifact.&lt;/p&gt;

&lt;p&gt;Instead of a Requirement existing only in a ticket or a meeting, it can be transformed into a Specification. The Specification is used to create a Technical Design. The Design is used to create an Implementation Plan. The Implementation Plan leads to Code and Test Cases. Then the Verification Report and Production Feedback continue to contribute to engineering knowledge.&lt;/p&gt;

&lt;p&gt;The important point here is that artifacts are not just documentation.&lt;/p&gt;

&lt;p&gt;Artifacts become &lt;strong&gt;context contracts between phases&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Developers do not need to start from an empty ticket. QA does not need to rebuild the entire context by themselves. An AI agent in a later phase can use artifacts from the previous phase to understand intent, constraints, and decisions.&lt;/p&gt;

&lt;p&gt;The handoff between BA, Tech Lead, Developer, and QA is therefore no longer simply about "sending information" but about transferring structured context.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Knowledge Must Become a Continuous Loop
&lt;/h2&gt;

&lt;p&gt;A typical AI system has a relatively simple flow:&lt;/p&gt;

&lt;p&gt;Knowledge → AI → Answer.&lt;/p&gt;

&lt;p&gt;In software engineering, the flow should be longer.&lt;/p&gt;

&lt;p&gt;Knowledge is used to create artifacts. Artifacts are used to implement software. Software generates test results, production behavior, and incident data. This information is then transformed into new knowledge.&lt;/p&gt;

&lt;p&gt;The lifecycle can be visualized as:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Knowledge → AI → Artifact → Implementation → Verification → Production Feedback → Knowledge.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For example, a production incident occurs. The team performs root cause analysis, fixes the issue, and creates a postmortem. If the postmortem only remains in a document without being added back into engineering knowledge, its value is limited to the current incident.&lt;/p&gt;

&lt;p&gt;If it becomes part of the shared context, the next time a developer or AI agent handles a similar problem, the system can use the previous experience.&lt;/p&gt;

&lt;p&gt;In this way, each task not only creates software but can also create additional knowledge for subsequent tasks.&lt;/p&gt;

&lt;p&gt;This is an important point for AI-Native Software Development to become a system that can improve over time rather than just a collection of AI tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Company Rules Must Become Part of the Context
&lt;/h2&gt;

&lt;p&gt;Another issue is governance.&lt;/p&gt;

&lt;p&gt;AI can generate code very quickly, but that code must comply with the company's architecture, security policies, coding standards, API conventions, database rules, testing requirements, and deployment process.&lt;/p&gt;

&lt;p&gt;If every developer has to manually provide these rules in AI prompts, it is difficult to ensure consistency.&lt;/p&gt;

&lt;p&gt;Instead, company rules should become part of the shared engineering context.&lt;/p&gt;

&lt;p&gt;When an AI agent handles a task, it receives not only the business requirement but also the engineering constraints.&lt;/p&gt;

&lt;p&gt;For example, a task to create a new API may need to understand API conventions, authentication requirements, logging standards, database guidelines, testing requirements, and deployment policies at the same time.&lt;/p&gt;

&lt;p&gt;Then AI is no longer simply answering the question, "How should I implement this feature?", but must solve the question, "How should I implement this feature within the team's engineering environment?"&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Automation Is What Makes the Workflow Truly Change
&lt;/h2&gt;

&lt;p&gt;If developers still have to copy requirements from Jira into AI, copy the output back into the IDE, manually create tests, create a PR, and run each step themselves, then AI is only supporting individual actions.&lt;/p&gt;

&lt;p&gt;The workflow truly changes when the steps can be connected.&lt;/p&gt;

&lt;p&gt;A new task can trigger context collection. The context is used to create a specification and implementation plan. After approval, an AI agent can perform the implementation, generate tests, and create a pull request. CI/CD continues with automated verification. AI can analyze failures and propose or perform fixes within the permitted scope.&lt;/p&gt;

&lt;p&gt;Humans only need to intervene at important decision gates.&lt;/p&gt;

&lt;p&gt;This transforms the workflow from a sequence of manual actions into a &lt;strong&gt;continuous engineering flow&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Humans Still Own Decisions
&lt;/h2&gt;

&lt;p&gt;AI running throughout the workflow does not mean removing humans.&lt;/p&gt;

&lt;p&gt;On the contrary, as AI participates more, clearly defining human responsibility becomes even more important.&lt;/p&gt;

&lt;p&gt;AI can analyze requirements, but Product or BA confirms the business intent. AI can propose architecture, but the Tech Lead or Architect decides the design. AI can generate code, but the Developer is responsible for the implementation. AI can generate and execute tests, but QA still confirms the quality criteria. AI can support deployment, but production releases still require appropriate approvals based on the risk level.&lt;/p&gt;

&lt;p&gt;A simple principle can be used:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI accelerates execution. Humans own decisions.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This also allows the workflow to divide steps into automatic execution and human approval instead of trying to automate everything.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Productivity Must Be Measured at the System Level
&lt;/h2&gt;

&lt;p&gt;If we want to prove that AI actually helps a team increase productivity, we should not only measure the amount of code generated by AI or the time a Developer spends writing code.&lt;/p&gt;

&lt;p&gt;More important metrics exist across the entire software delivery flow.&lt;/p&gt;

&lt;p&gt;For example, we can track Lead Time, Cycle Time, PR Throughput, Review Time, Rework, Defect Rate, Deployment Frequency, and Change Failure Rate.&lt;/p&gt;

&lt;p&gt;Suppose that before applying AI, a feature takes 10 days from requirement to deployment. After redesigning the workflow, the time spent on requirements, design, coding, testing, review, and rework is reduced, and the total cycle could decrease to 4.5 days.&lt;/p&gt;

&lt;p&gt;This number is only an illustrative example, not a guaranteed level of improvement.&lt;/p&gt;

&lt;p&gt;The important point is that the way we measure must change.&lt;/p&gt;

&lt;p&gt;We should not ask:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"How much faster does AI help developers write code?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead, we should ask:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"How has AI changed the entire engineering cycle?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If coding time decreases but rework or review time increases, the productivity of the system may not actually increase.&lt;/p&gt;

&lt;h2&gt;
  
  
  10. From SDLC to Continuous Engineering Flow
&lt;/h2&gt;

&lt;p&gt;Traditional SDLC is often described as a sequence of phases: Requirement, Design, Development, Testing, and Deployment.&lt;/p&gt;

&lt;p&gt;AI allows us to connect these phases more closely.&lt;/p&gt;

&lt;p&gt;Requirement creates Specification. Specification creates Design. Design creates an Implementation Plan. Implementation creates Code and Test. Verification creates Feedback. Production creates Knowledge. Knowledge flows back into Requirements and subsequent tasks.&lt;/p&gt;

&lt;p&gt;The workflow is no longer simply a linear pipeline.&lt;/p&gt;

&lt;p&gt;It becomes a continuous loop.&lt;/p&gt;

&lt;p&gt;AI can operate throughout this loop, using artifacts and knowledge from previous phases while simultaneously creating artifacts and knowledge for subsequent phases.&lt;/p&gt;

&lt;p&gt;This is the difference between "adding AI to the SDLC" and &lt;strong&gt;redesigning the engineering workflow for AI&lt;/strong&gt;.&lt;/p&gt;

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

&lt;p&gt;AI Engineering does not necessarily mean building a better AI coding assistant.&lt;/p&gt;

&lt;p&gt;The bigger challenge is redesigning how engineering teams work when AI is capable of participating in most phases of the software lifecycle.&lt;/p&gt;

&lt;p&gt;AI-Native Software Development needs to combine workflow, shared knowledge, context continuity, artifacts, AI agents, automation, governance, human decision-making, and measurement.&lt;/p&gt;

&lt;p&gt;The ultimate goal is not to make AI write more code.&lt;/p&gt;

&lt;p&gt;The goal is to reduce context switching, waiting, manual coordination, and rework, while increasing knowledge reuse and software delivery automation.&lt;/p&gt;

&lt;p&gt;Instead of each role using a separate AI, the team moves toward a unified engineering flow:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Requirement → Specification → Design → Development → Testing → Review → Deployment → Feedback → Knowledge → Next Requirement.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI runs throughout the flow.&lt;/p&gt;

&lt;p&gt;Humans own decisions.&lt;/p&gt;

&lt;p&gt;Artifacts preserve context.&lt;/p&gt;

&lt;p&gt;Knowledge accumulates through each cycle.&lt;/p&gt;

&lt;p&gt;Automation connects the steps.&lt;/p&gt;

&lt;p&gt;And measurement tells us whether the entire system is actually getting better.&lt;/p&gt;

&lt;p&gt;This is how &lt;strong&gt;AI-Native Software Development&lt;/strong&gt; can be viewed not as a collection of AI tools, but as a new way to operate the entire software engineering workflow in the AI era.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>automation</category>
      <category>softwaredevelopment</category>
      <category>softwareengineering</category>
    </item>
  </channel>
</rss>
