<?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: srivalli jalla</title>
    <description>The latest articles on DEV Community by srivalli jalla (@srivalli_jalla_70b9119ecd).</description>
    <link>https://dev.to/srivalli_jalla_70b9119ecd</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%2F3975041%2F813a31c1-d800-46a5-9006-82b3e2ef57cc.png</url>
      <title>DEV Community: srivalli jalla</title>
      <link>https://dev.to/srivalli_jalla_70b9119ecd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/srivalli_jalla_70b9119ecd"/>
    <language>en</language>
    <item>
      <title>How I Automated My Daily Job Search Using n8n and AI 🤖💼</title>
      <dc:creator>srivalli jalla</dc:creator>
      <pubDate>Wed, 07 Oct 2026 05:13:18 +0000</pubDate>
      <link>https://dev.to/srivalli_jalla_70b9119ecd/how-i-automated-my-daily-job-search-using-n8n-and-ai-479p</link>
      <guid>https://dev.to/srivalli_jalla_70b9119ecd/how-i-automated-my-daily-job-search-using-n8n-and-ai-479p</guid>
      <description>&lt;p&gt;Searching for jobs manually every single day can quickly become repetitive and inefficient. You scroll through multiple job boards, read dense job descriptions, filter out irrelevant postings, and track links manually.&lt;/p&gt;

&lt;p&gt;To streamline this process, I built a zero-cost, automated workflow using n8n and AI that automatically aggregates job postings from Wellfound, extracts key details using an LLM, and delivers structured daily updates straight to my Gmail inbox.&lt;/p&gt;

&lt;p&gt;Here is a breakdown of how the automation works and how you can replicate it.&lt;/p&gt;

&lt;p&gt;🛠️ The Architecture &amp;amp; Workflow&lt;br&gt;
The entire automation is powered by an n8n workflow composed of six core nodes:&lt;/p&gt;

&lt;p&gt;[ Schedule Trigger ] ──► [ RSS Read ] ──► [ Limit ] ──► [ AI Model ] ──► [ If Condition ] ──► [ Gmail Node ]&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Schedule Trigger ⏰&lt;br&gt;
Set to run automatically on a daily schedule (e.g., every morning at 9:00 AM) so job updates are ready before starting the workday.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;RSS Read 📡&lt;br&gt;
Connects directly to Wellfound’s RSS feed to fetch real-time listing updates for specific roles (e.g., Python Developer, Cloud AI Engineer).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Limit Node 🚦&lt;br&gt;
Restricts the maximum number of items processed per run to keep daily alerts focused on the newest listings.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Message a Model (AI Node) 🧠&lt;br&gt;
Passes raw feed content into an LLM (such as OpenAI GPT or Google Gemini) with a tailored prompt to extract structured metadata:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;📌 Role Title&lt;/p&gt;

&lt;p&gt;🏢 Company / Source&lt;/p&gt;

&lt;p&gt;📍 Work Mode / Location&lt;/p&gt;

&lt;p&gt;💰 Stipend / Salary&lt;/p&gt;

&lt;p&gt;🛠️ Key Tech Stack&lt;/p&gt;

&lt;p&gt;📝 Brief Summary&lt;/p&gt;

&lt;p&gt;🔗 Direct Apply URL&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;If Condition 🔀&lt;br&gt;
Evaluates whether valid job listings were processed before proceeding, preventing empty or corrupted emails from being sent.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Send a Message (Gmail) 📧&lt;br&gt;
Uses n8n’s Gmail node to dispatch clean, emoji-formatted summaries directly to my inbox.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;📬 What the Output Looks Like&lt;br&gt;
Instead of raw RSS data or unstructured links, the output arrives as a clean, easy-to-read summary directly in Gmail:&lt;/p&gt;

&lt;p&gt;🎯 New Role: Python Developer (Cloud AI Platform) at NGRS&lt;/p&gt;

&lt;p&gt;📌 Role: Python Developer (Cloud AI Platform)&lt;/p&gt;

&lt;p&gt;🏢 Company: NGRS (via Wellfound)&lt;/p&gt;

&lt;p&gt;📍 Work Mode: New York City&lt;/p&gt;

&lt;p&gt;🛠️ Key Tech Stack: Python, Cloud, AI&lt;/p&gt;

&lt;p&gt;📝 Brief Summary: NGRS is hiring a Python Developer to contribute to their Cloud AI Platform based in New York City.&lt;/p&gt;

&lt;p&gt;🔗 Link to Apply: [Click Here to Apply]&lt;/p&gt;

&lt;p&gt;🚀 How to Set Up Your Own Version&lt;br&gt;
If you want to run this workflow yourself:&lt;/p&gt;

&lt;p&gt;Clone the Repository: Download the open-source workflow file from my GitHub repository:&lt;br&gt;
👉 GitHub Repository[cite: 6]&lt;/p&gt;

&lt;p&gt;Import into n8n: Open your n8n instance, navigate to Workflows, and select Import from File.&lt;/p&gt;

&lt;p&gt;Configure Credentials:&lt;/p&gt;

&lt;p&gt;Link your Gmail OAuth2 credentials.&lt;/p&gt;

&lt;p&gt;Add an API key for your preferred AI provider in the Message a Model node.&lt;/p&gt;

&lt;p&gt;Customize the RSS Feed: Replace the RSS URL with your custom Wellfound query feed.&lt;/p&gt;

&lt;p&gt;Activate: Switch the workflow toggle to Active.&lt;/p&gt;

&lt;p&gt;💡 Key Takeaways&lt;br&gt;
Time Saved: Eliminates 15–20 minutes of daily manual searching and reading.&lt;/p&gt;

&lt;p&gt;Structured Data: Raw RSS feeds are transformed into scannable summaries.&lt;/p&gt;

&lt;p&gt;Low Code / No Code: Built completely using n8n visual workflows without needing complex server infrastructure.&lt;/p&gt;

&lt;p&gt;Have you built similar job search or RSS automation workflows? Let's connect in the comments! 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frryje0uyzlgztowdla7l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frryje0uyzlgztowdla7l.png" alt=" " width="800" height="500"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5sejiuoau0ssqrcod2q2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5sejiuoau0ssqrcod2q2.png" alt=" " width="800" height="500"&gt;&lt;/a&gt;&lt;a href="https://dev.tourl"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>automation</category>
    </item>
    <item>
      <title>Building a Sales Deal Assistant That Remembers Customer Objections Across Deal Cycles</title>
      <dc:creator>srivalli jalla</dc:creator>
      <pubDate>Mon, 28 Sep 2026 13:30:29 +0000</pubDate>
      <link>https://dev.to/srivalli_jalla_70b9119ecd/building-a-sales-deal-assistant-that-remembers-customer-objections-across-deal-cycles-2c7f</link>
      <guid>https://dev.to/srivalli_jalla_70b9119ecd/building-a-sales-deal-assistant-that-remembers-customer-objections-across-deal-cycles-2c7f</guid>
      <description>&lt;p&gt;Building AI agents that rely solely on standard prompt contexts often leads to a major bottleneck in real-world workflows: statelessness. When an agent loses history between customer touchpoints, users are forced to repeatedly enter past context, leading to friction and poor user experience.&lt;/p&gt;

&lt;p&gt;To solve this issue in sales workflows, I built a &lt;strong&gt;Sales Deal Intelligence Assistant&lt;/strong&gt;. By combining &lt;strong&gt;Groq&lt;/strong&gt; for high-speed inference with &lt;strong&gt;Vectorize Hindsight&lt;/strong&gt; for persistent agent memory, the assistant retains past customer objections and recalls them weeks or months later to draft tailored follow-up strategies.&lt;/p&gt;




&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;

&lt;p&gt;The application is built using standard Python tools and designed for simplicity:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; Streamlit interactive interface.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;LLM Engine:&lt;/strong&gt; Groq API (&lt;code&gt;llama-3.3-70b-versatile&lt;/code&gt; / &lt;code&gt;openai/gpt-oss-120b&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agent Memory Layer:&lt;/strong&gt; Vectorize Hindsight SDK using &lt;code&gt;hindsight.retain()&lt;/code&gt; and &lt;code&gt;hindsight.recall()&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  1. Storing Context with &lt;code&gt;hindsight.retain()&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;When a sales representative finishes a call, they input meeting details into the assistant. The app parses the key points—such as budget limits or feature requests—and sends them to Hindsight memory, indexed by prospect name (&lt;code&gt;bank_id&lt;/code&gt;):&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
python
from hindsight_client import Hindsight

hindsight = Hindsight(api_key=HINDSIGHT_API_KEY)

# Retaining prospect objections into memory
hindsight.retain(
    bank_id="srivalli",
    content="Prospect: srivalli. Objections raised: Price is too high and we need SSO integration. Key features wanted: audit logs."
)


# Recalling stored memory context for a specific prospect
recall_response = hindsight.recall(
    bank_id="srivalli",
    query="What were their main objections and concerns?"
)

# Pass recalled memory context into Groq LLM prompt
prompt = f"""
You are an expert sales assistant. Write a personalized follow-up email.
Recalled prospect memory context:
{recall_response}
"""
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>webdev</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
