<?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: aless prx</title>
    <description>The latest articles on DEV Community by aless prx (@aless_prx_1f4cf3a9a3f2568).</description>
    <link>https://dev.to/aless_prx_1f4cf3a9a3f2568</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3923756%2F9004b906-5b7e-42f4-9a15-7bdd9f8ce5e5.png</url>
      <title>DEV Community: aless prx</title>
      <link>https://dev.to/aless_prx_1f4cf3a9a3f2568</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aless_prx_1f4cf3a9a3f2568"/>
    <language>en</language>
    <item>
      <title>Building an AI sourcer that actually finds the right talent</title>
      <dc:creator>aless prx</dc:creator>
      <pubDate>Sun, 10 May 2026 19:57:31 +0000</pubDate>
      <link>https://dev.to/aless_prx_1f4cf3a9a3f2568/building-an-ai-sourcer-that-actually-finds-the-right-talent-50hg</link>
      <guid>https://dev.to/aless_prx_1f4cf3a9a3f2568/building-an-ai-sourcer-that-actually-finds-the-right-talent-50hg</guid>
      <description>&lt;p&gt;Spent the last few weekends building an AI sourcing agent. Quick version: feed it a role, it ranks candidates, drafts the outreach. The model layer was the easy part. The data layer is where every project like this quietly dies.&lt;/p&gt;

&lt;p&gt;Every "B2B data" provider gives you the same five filters — job title, location, company, seniority, industry — and a giant pool of half-stale profiles. So your "AI sourcer" ends up recommending the same 200 people as everyone else's AI sourcer, with last-quarter's job titles. That's not a sourcing agent. That's a list rental.&lt;/p&gt;

&lt;p&gt;I switched the data layer to &lt;a href="https://dataforb2b.ai" rel="noopener noreferrer"&gt;DataForB2B&lt;/a&gt; and the agent suddenly had something to actually reason over. 70+ filters — including the ones that matter for technical sourcing: GitHub repositories, certifications, languages spoken, years of experience, past employers, funding stage of current company. Profiles are sourced live across 60+ public sources, not pulled from a cached export that's been rotting in a warehouse for nine months. Work emails and GitHub profiles come back enriched on the same call. GDPR/CCPA compliant.&lt;/p&gt;

&lt;p&gt;Three things I'd flag if you're building anything similar:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Niche filters are the whole game.&lt;/strong&gt; Anyone can return "Senior Engineer at Series B startup." Returning "Senior Engineer, contributes to Rust async runtimes, was at the founding team of a YC company" is what makes the agent feel smart.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live &amp;gt; cached.&lt;/strong&gt; A "match" who left the company eight months ago is worse than no match — your agent confidently emails the wrong person.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enrich in the same call.&lt;/strong&gt; Two-step pipelines (find → enrich) double your latency and your failure surface. Get the email and the profile back together.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If your AI agent is only as good as the &lt;a href="https://dataforb2b.ai" rel="noopener noreferrer"&gt;B2B data API&lt;/a&gt; under it, that's where to spend the next afternoon.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
    </item>
    <item>
      <title>One API for LinkedIn, WhatsApp and Email outreach</title>
      <dc:creator>aless prx</dc:creator>
      <pubDate>Sun, 10 May 2026 19:54:06 +0000</pubDate>
      <link>https://dev.to/aless_prx_1f4cf3a9a3f2568/one-api-for-linkedin-whatsapp-and-email-outreach-19cn</link>
      <guid>https://dev.to/aless_prx_1f4cf3a9a3f2568/one-api-for-linkedin-whatsapp-and-email-outreach-19cn</guid>
      <description>&lt;p&gt;Building an AI sales agent on the side. The LLM part is the easy 20%. The hard 80% is the outreach plumbing — LinkedIn, WhatsApp, and Email each come with their own auth model, their own rate limits, their own webhook flavor, and their own way of breaking on a Tuesday afternoon.&lt;/p&gt;

&lt;p&gt;Three integrations, three sets of edge cases. Before my agent could send a single message, I'd spent a full week on glue code and zero time on the agent itself.&lt;/p&gt;

&lt;p&gt;So I stopped maintaining the plumbing and pushed it to &lt;a href="https://linkupapi.com" rel="noopener noreferrer"&gt;LinkupAPI&lt;/a&gt;. Same surface for all three channels, managed accounts, a single webhook for replies and checkpoints. The agent just decides &lt;em&gt;who, when, and what&lt;/em&gt; — and calls one endpoint.&lt;/p&gt;

&lt;p&gt;Three things I'd flag to anyone wiring up an outreach agent:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Multi-account rotation matters more than clever copy.&lt;/strong&gt; Build it before you tune prompts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agents retry. A lot.&lt;/strong&gt; Make every send idempotent or you'll double-message your best lead.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Treat checkpoints as a normal event, not an error.&lt;/strong&gt; Pause that one account, keep the run alive.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That's the whole post. If your agent is drowning in outreach integration code, a &lt;a href="https://linkupapi.com" rel="noopener noreferrer"&gt;unified outreach API&lt;/a&gt; is the part most people underweight until they've already built — and re-built — the wrong thing.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
    </item>
  </channel>
</rss>
