<?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: shubhamkumbhalkar</title>
    <description>The latest articles on DEV Community by shubhamkumbhalkar (@shubhamkumbhalkar).</description>
    <link>https://dev.to/shubhamkumbhalkar</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%2F4128784%2Ffffbb8d8-9aac-42f7-a68c-654ed5df3db6.png</url>
      <title>DEV Community: shubhamkumbhalkar</title>
      <link>https://dev.to/shubhamkumbhalkar</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shubhamkumbhalkar"/>
    <language>en</language>
    <item>
      <title>4 Agent Skills for backend engineers: design review, zero-downtime migration, production GenAI, forecasting</title>
      <dc:creator>shubhamkumbhalkar</dc:creator>
      <pubDate>Thu, 17 Sep 2026 00:25:31 +0000</pubDate>
      <link>https://dev.to/shubhamkumbhalkar/4-agent-skills-for-backend-engineers-design-review-zero-downtime-migration-production-genai-3fj3</link>
      <guid>https://dev.to/shubhamkumbhalkar/4-agent-skills-for-backend-engineers-design-review-zero-downtime-migration-production-genai-3fj3</guid>
      <description>&lt;p&gt;Agent Skills are a simple idea: a folder of instructions an AI coding agent can load to do a specific task the same way every time. Most of the ones I saw were frontend or generic workflows, so I packaged four checklists I actually use on large-scale backend systems and open-sourced them.&lt;/p&gt;

&lt;h3&gt;
  
  
  Install them on any agent (Claude Code, Codex, Cursor):
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;npx skills add shubhamkumbhalkar/skills&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  distributed-systems-design-review
&lt;/h4&gt;

&lt;p&gt;Point it at a design doc or PR and it reviews for the failure modes that cause real incidents: retries without idempotency, retry storms with no circuit breaker, missing backpressure, cross-store write drift, hot partitions, and missing golden-signal observability. For each gap it gives the concrete failure scenario, the blast radius, and a specific fix, then a Ship / Ship-with-changes / Needs-rework verdict.&lt;/p&gt;

&lt;h4&gt;
  
  
  zero-downtime-migration
&lt;/h4&gt;

&lt;p&gt;Migrating a live or Tier-1 system is where teams get hurt. This skill produces a phased plan built on one rule: every phase is independently reversible. Expand (dual-write), backfill (idempotent, reconciled), shadow-verify against real traffic, incremental cutover (1/5/25/50/100%), then contract. It also reviews someone else's migration plan for one-way steps and missing rollbacks.&lt;/p&gt;

&lt;h4&gt;
  
  
  genai-production-readiness
&lt;/h4&gt;

&lt;p&gt;LLM features fail differently: non-deterministic, manipulable by inputs, and they degrade silently. This skill checks the things a demo skips: an eval set with a regression gate, grounding and hallucination handling, prompt-injection defense on untrusted input, a human-in-the-loop boundary for consequential actions, cost/latency bounds and fallbacks, PII handling, and observability. It ends with a go / no-go.&lt;/p&gt;

&lt;h4&gt;
  
  
  time-series-forecasting-review
&lt;/h4&gt;

&lt;p&gt;Forecasting is deceptively easy to get wrong: leakage and bad backtests inflate offline metrics, then quiet drift erodes them in production. This skill catches data leakage, random-fold validation (instead of rolling-origin backtests), missing naive baselines, mishandled seasonality and known-future covariates, the wrong error metric (MAPE near zeros), and no online accuracy monitoring. Includes notes for foundation models like TimesFM (zero-shot vs fine-tuned, context length, license).&lt;/p&gt;

&lt;h3&gt;
  
  
  Why
&lt;/h3&gt;

&lt;p&gt;These encode the review discipline I use on systems that process a lot of revenue at high uptime, plus applied GenAI and forecasting in production. They are opinionated on purpose.&lt;/p&gt;

&lt;p&gt;Repo (MIT): &lt;code&gt;https://github.com/shubhamkumbhalkar/skills&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;PRs welcome. If you run them on your codebase, tell me what they caught and what they missed.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>architecture</category>
      <category>llm</category>
    </item>
    <item>
      <title>I automated my job search across 7 job boards</title>
      <dc:creator>shubhamkumbhalkar</dc:creator>
      <pubDate>Wed, 16 Sep 2026 23:31:01 +0000</pubDate>
      <link>https://dev.to/shubhamkumbhalkar/i-automated-my-job-search-across-7-job-boards-368e</link>
      <guid>https://dev.to/shubhamkumbhalkar/i-automated-my-job-search-across-7-job-boards-368e</guid>
      <description>&lt;p&gt;Job hunting is a part-time job on top of your job. The worst part isn't the interviews, it's the daily grind of refreshing a dozen career pages, copy-pasting the same details, and rewriting the same cover letter with a new company name.&lt;/p&gt;

&lt;p&gt;So I built a small tool to do the repetitive 80% and leave the 20% that actually needs me.&lt;/p&gt;

&lt;p&gt;What it does&lt;/p&gt;

&lt;p&gt;Every morning it:&lt;/p&gt;

&lt;p&gt;Scans 7 job platforms (Lever, Greenhouse, Ashby, SmartRecruiters, Workday, Indeed/Google via JobSpy, Hiring.cafe).&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%2F6p0qmufifem7ocij3xxk.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%2F6p0qmufifem7ocij3xxk.png" alt="Overall workflow of the system" width="800" height="595"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scores each opening against my resume from 0 to 100 with an LLM.&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%2Fc3f38m71tppczru8qatw.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%2Fc3f38m71tppczru8qatw.png" alt="Daily screened jobs that are above threshold" width="800" height="763"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For anything above my threshold, drafts a tailored cover letter and a "why this company" answer.&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%2Ftz4uor224nnk3od1axaw.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%2Ftz4uor224nnk3od1axaw.png" alt="Apply Link and description" width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sends me one Slack card per role, with the apply link.&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%2F2g7bhdryl0kcwtf9thlo.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%2F2g7bhdryl0kcwtf9thlo.png" alt="Cover Letter and why this company" width="799" height="275"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then in Slack I tap the link and apply, react ✅ to mark it applied (it tracks the pipeline), or react 📞 to get interview prep, STAR stories mapped to likely questions, back in the thread. A weekly report summarizes how many roles I saw, scored, and applied to.&lt;/p&gt;

&lt;p&gt;The one rule: keep a human in the loop&lt;/p&gt;

&lt;p&gt;The tool does not auto-submit applications. That was deliberate. Blasting auto-filled applications is bad for employers and bad for you. The tool removes the toil (finding, scoring, drafting, tracking); I still make every apply decision and do every interview.&lt;/p&gt;

&lt;p&gt;How it's built&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Python, with a thin client per platform, so adding a board is one small file.&lt;/li&gt;
&lt;li&gt;A pluggable AI backend: a local model for free, or the Anthropic API for speed.&lt;/li&gt;
&lt;li&gt;Deduplication by job id and by title+company, a per-company cap per run, and platform balancing so a single board doesn't crowd out the rest.&lt;/li&gt;
&lt;li&gt;A cron job runs the daily scan; a Slack bot watches reactions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What I learned&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Scoring against your actual resume, not just keyword matching, cuts the noise dramatically.&lt;/li&gt;
&lt;li&gt;The Slack "one card per role, react to act" loop is what made me actually keep up with it.&lt;/li&gt;
&lt;li&gt;Keeping a human in the loop made it something I trust to run every day.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Try it&lt;/p&gt;

&lt;p&gt;It's open source (MIT): &lt;a href="https://github.com/shubhamkumbhalkar/lever-auto-apply" rel="noopener noreferrer"&gt;https://github.com/shubhamkumbhalkar/lever-auto-apply&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;PRs welcome, especially new platform clients. If you try it, tell me what breaks.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>career</category>
      <category>hiring</category>
    </item>
  </channel>
</rss>
