<?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: Alejandro</title>
    <description>The latest articles on DEV Community by Alejandro (@alx094).</description>
    <link>https://dev.to/alx094</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%2F3958368%2F541e2198-ec16-4959-a719-97e24a109b51.jpeg</url>
      <title>DEV Community: Alejandro</title>
      <link>https://dev.to/alx094</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alx094"/>
    <language>en</language>
    <item>
      <title>How to hire senior engineers without LinkedIn</title>
      <dc:creator>Alejandro</dc:creator>
      <pubDate>Fri, 28 Aug 2026 07:37:02 +0000</pubDate>
      <link>https://dev.to/alx094/how-to-hire-senior-engineers-without-linkedin-56o7</link>
      <guid>https://dev.to/alx094/how-to-hire-senior-engineers-without-linkedin-56o7</guid>
      <description>&lt;h2&gt;
  
  
  Why LinkedIn fails for senior developers
&lt;/h2&gt;

&lt;p&gt;Engineers with eight, ten, fifteen years of experience get fifty messages a week through LinkedIn. The vast majority are interchangeable: a framework name, a salary range, "would love to chat." Nobody can sort these by hand, so they sort by ignoring them all.&lt;/p&gt;

&lt;p&gt;It's a selection effect. The developers who reply to InMail are the ones who haven't yet decided LinkedIn is noise. As they get more senior, that threshold gets crossed. The people you most want to hire are exactly the people least reachable through the platform.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You're not failing to write a better InMail. You're trying to be heard on a channel your audience has muted.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There's also a status mismatch. A senior engineer reading an InMail is being addressed by an "outreach specialist" they've never heard of, about a company whose product they've never used, for a role they didn't apply to. Every layer of the message signals "this was not written for you." Three seconds of scanning, archive.&lt;/p&gt;

&lt;h2&gt;
  
  
  The four channels that actually work
&lt;/h2&gt;

&lt;p&gt;In rough order of cost-per-hire:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Warm intros from existing engineers&lt;/strong&gt; — your best channel. Twenty-X conversion vs cold. Limited by your team's network.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conference talks and technical writing&lt;/strong&gt; — a developer who saw your CTO give a talk on consensus protocols already knows two things: that the team is technical, and that the work is interesting. You've pre-qualified them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open-source contributions&lt;/strong&gt; — if your stack is open, contributors to your repos are pre-selected for fit. They've shipped code that ran in your codebase.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paid contact (reachdev.io, or a Stripe link in their portfolio)&lt;/strong&gt; — pays the developer to read your message. Lowest friction to start, highest reply rate among cold channels.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The first three are slow. They compound, but they take quarters to produce a single senior hire. The fourth is fast — within a week — and the topic of the rest of this post.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why paid contact converts at 30–50%
&lt;/h2&gt;

&lt;p&gt;The economics are inverted from InMail. On LinkedIn, sending costs you nothing and reading costs the developer their afternoon. So they don't read. On a platform where you pay the developer to read, they read. Whether they reply is a separate question — but at least the message gets attention.&lt;/p&gt;

&lt;p&gt;In the reachdev model:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You buy credits.&lt;/li&gt;
&lt;li&gt;You spend credits to message a specific developer at their listed price (usually €1–€5 per message).&lt;/li&gt;
&lt;li&gt;The developer reads. If they reply within the window, they claim your credits.&lt;/li&gt;
&lt;li&gt;If they don't reply, the credits return to your balance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You only pay for messages that &lt;em&gt;land&lt;/em&gt;. The downside risk is the same as InMail: zero. The upside — the reply rate — is ten to twenty times higher.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You're not buying time. You're buying the first 30 seconds of attention you couldn't get for free.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What a pitch that lands looks like
&lt;/h2&gt;

&lt;p&gt;Five rules, learned the hard way:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Name the role, the team size, and the comp band in the first three lines.&lt;/strong&gt; Hiding any of these signals "we're not serious."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reference one specific thing about the developer&lt;/strong&gt; — a repo, a talk, a comment they left on a PR. Not "loved your profile." Not "your background is impressive."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Founder or hiring manager only.&lt;/strong&gt; A senior engineer will read a message from a CTO and not from a recruiter. This is unfair but true. If your founders are too busy, this isn't the channel for you yet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lead with the problem, not the perks.&lt;/strong&gt; "We're rewriting our payments service in Rust because Python can't hit our p99 SLO" beats any bullet point about kombucha or unlimited PTO.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;End with a 1-sentence ask.&lt;/strong&gt; "Worth a 25-minute call next week?" — not "let me know your availability and we can set up a chat."&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  A bad pitch and a good one
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Bad&lt;/strong&gt; — what the developer sees forty times a week:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Hi Jane! I came across your profile and was really impressed with your background. We're a fast-growing Series B startup in the fintech space and we're looking for a Senior Backend Engineer to join our amazing team. Comp is competitive, equity is meaningful, and our culture is second to none. Would love to set up a quick chat to learn more about you. Let me know what works!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Good&lt;/strong&gt; — what gets a reply:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Jane — saw your raftdb repo last year and we ended up using it as a reference when we wrote our own Raft layer at Acme. We're building a distributed rate-limiter that needs to survive partial network partitions; current implementation uses Redis and falls over above 50k qps. Looking for a senior backend engineer to own the rewrite in Go. Team is 4 engineers, comp €140–170k + 0.3–0.6% equity, fully remote in EU TZ. Worth a 25-minute call next week to see if it's interesting?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Same length. Tenfold reply rate. The difference is specificity — proof that the sender actually read the developer's work and isn't copy-pasting.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to expect
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Reply rate&lt;/strong&gt; — 30–50% on first contact, vs 3% on InMail.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time to first reply&lt;/strong&gt; — usually 24–48 hours. Most developers check the platform once a day.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost per qualified conversation&lt;/strong&gt; — €5–€20, plus the 5–10 minutes you spent writing the pitch. Compare to the €300–€800 per qualified intro a contingency recruiter charges.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conversion to hire&lt;/strong&gt; — same as any senior pipeline, ~5–10% from first conversation to offer accepted. The platform doesn't fix your interview process, but it gets better candidates into it.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  How to start
&lt;/h2&gt;

&lt;p&gt;If you're hiring two or fewer senior roles per year, this channel pays for itself in your first hire. Buy 200 credits (€20), find five developers in your stack, write five real pitches, see what happens.&lt;/p&gt;

&lt;p&gt;If you're hiring at volume, treat reachdev as one of three or four channels rather than your primary funnel. Combine with conference presence, OSS sponsorship, and a referral program. The senior engineers you want are reachable — just not the way LinkedIn taught everyone to reach them.&lt;/p&gt;

&lt;p&gt;Pay attention to the developers who &lt;em&gt;don't&lt;/em&gt; reply. Some have set very high prices because they're not looking. Some haven't checked the platform that week. That's information. Adjust your shortlist accordingly, and keep going.&lt;/p&gt;




&lt;p&gt;Originally published at &lt;a href="https://reachdev.io/blog/hire-senior-engineers-without-linkedin" rel="noopener noreferrer"&gt;reachdev.io&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>hiring</category>
      <category>career</category>
      <category>recruiting</category>
      <category>startup</category>
    </item>
    <item>
      <title>How to price your developer profile</title>
      <dc:creator>Alejandro</dc:creator>
      <pubDate>Thu, 27 Aug 2026 15:35:18 +0000</pubDate>
      <link>https://dev.to/alx094/how-to-price-your-developer-profile-5e1d</link>
      <guid>https://dev.to/alx094/how-to-price-your-developer-profile-5e1d</guid>
      <description>&lt;h2&gt;
  
  
  You're not pricing your time. You're pricing access.
&lt;/h2&gt;

&lt;p&gt;The first instinct is to derive the number from your hourly rate. Divide your consulting rate by something — sixty, a hundred — call it a minute-of-attention price. Don't do this. The math is intuitive and wrong.&lt;/p&gt;

&lt;p&gt;You're not selling a minute of work. You're selling the right to interrupt you — to put a thoughtful message in front of you that you'll read end-to-end and answer with one sentence. The price isn't payment for that minute; it's a &lt;em&gt;filter&lt;/em&gt; that ensures the minute is worth spending.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Anyone can pay for a minute of your time. The point of the price is to make sure they don't waste it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The three inputs that matter
&lt;/h2&gt;

&lt;p&gt;Build the number from three multipliers, in this order:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Seniority floor&lt;/strong&gt; — how much your average correspondent earns. A staff engineer's correspondents are well-funded series-B founders; a junior's are hiring agencies with thin margins. Set the floor at "annoying but not blocking" for the senders you actually want.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stack scarcity&lt;/strong&gt; — Go, Rust, embedded, ML infra, Solidity, niche compliance — anything where supply is small and demand is loud. Multiply the floor by 2–4×.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inbound volume&lt;/strong&gt; — if your GitHub bio already gets you five DMs a week, you have a tolerance problem and need a high price. If you're invisible online, start low so people &lt;em&gt;can&lt;/em&gt; find you.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  A starting table
&lt;/h2&gt;

&lt;p&gt;Concrete numbers, in reachdev credits (1€ = 10 credits). Adjust up for scarce stacks, down for entry-level:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;0–2 years experience&lt;/strong&gt; — 3 to 5 credits (€0.30–€0.50). You're optimizing for volume; you want to read the messages.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;3–5 years&lt;/strong&gt; — 5 to 10 credits (€0.50–€1.00). Mid-market for full-time roles. Filters out agencies with bad margins.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;6–9 years (senior)&lt;/strong&gt; — 10 to 20 credits (€1–€2). Most senior devs land here. Stops mass-sends, lets serious recruiters and founders through.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;10+ years (staff / principal / specialist)&lt;/strong&gt; — 25 to 50 credits (€2.50–€5). Scarce stack? Push to the top of the range.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are starting points, not absolutes. The right number for &lt;em&gt;you&lt;/em&gt; is the one that produces 2–4 high-quality messages a week. Tune from there.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Start at the number that makes you slightly uncomfortable. Then check it weekly.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The two failure modes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Too low.&lt;/strong&gt; You'll see it within a week: the inbox fills with agency boilerplate, the messages get shorter and less specific, you start ignoring the badge again. The cost wasn't real enough to filter. Double it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Too high.&lt;/strong&gt; Subtler — you'll just see silence. Two, three, four weeks with nothing. That doesn't always mean the price is wrong (some weeks are quiet), but if you go a month with zero contacts and your profile traffic is normal, cut the price by a third.&lt;/p&gt;

&lt;p&gt;The point is to be &lt;em&gt;visible&lt;/em&gt; to thoughtful senders and &lt;em&gt;invisible&lt;/em&gt; to lazy ones. Both ends of the bell curve are bad.&lt;/p&gt;

&lt;h2&gt;
  
  
  Adjustments by situation
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Actively looking for a job&lt;/strong&gt; — drop the price 30–50%. You want more shots on goal, even if the average quality is lower.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Happy where you are&lt;/strong&gt; — raise it. You're not optimizing for volume; you're optimizing for &lt;em&gt;only the very best&lt;/em&gt; getting through.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Niche stack with no inbound&lt;/strong&gt; — start &lt;em&gt;low&lt;/em&gt; until the channel finds you. You can always raise.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Geography premium&lt;/strong&gt; — if you're in a SF/NYC/London time zone and the senders are too, you can charge ~30% more than EU-only profiles.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What to do this week
&lt;/h2&gt;

&lt;p&gt;Pick a number from the table above. Set it. Leave it for ten days. Count the messages you get and how many you reply to. If you're below two weekly contacts, cut it by a third. If you're above six and most aren't worth reading, double it.&lt;/p&gt;

&lt;p&gt;Two adjustments are usually enough to land somewhere stable. The number will drift up over time as your profile gets known — that's normal, and a sign things are working.&lt;/p&gt;

&lt;p&gt;The price isn't a wall. It's a signal. It tells everyone on the other side: &lt;em&gt;I read every message that comes in. Make it count.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>career</category>
      <category>productivity</category>
      <category>recruiting</category>
      <category>developers</category>
    </item>
    <item>
      <title>How to stop recruiter spam as a developer</title>
      <dc:creator>Alejandro</dc:creator>
      <pubDate>Fri, 29 May 2026 11:45:01 +0000</pubDate>
      <link>https://dev.to/alx094/how-to-stop-recruiter-spam-as-a-developer-2cng</link>
      <guid>https://dev.to/alx094/how-to-stop-recruiter-spam-as-a-developer-2cng</guid>
      <description>&lt;h2&gt;
  
  
  The problem isn't filters. It's economics.
&lt;/h2&gt;

&lt;p&gt;Every developer with a public GitHub eventually hits the same wall: the inbox becomes worthless. LinkedIn InMail, Twitter DMs, email scraped from a commit signature, even &lt;code&gt;contact@your-domain&lt;/code&gt; — all of it fills up with copy-pasted pitches for roles that don't fit, salaries that don't match, and stacks you stopped touching three years ago.&lt;/p&gt;

&lt;p&gt;The instinct is to filter harder. Disable LinkedIn messages. Add a keyword blocker. Set your status to "not open to work." It barely moves the needle, because the underlying math hasn't changed: a recruiter can send a hundred messages in a morning at zero marginal cost. If even one replies, the campaign was worth it. The other ninety-nine cost them nothing.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When sending is free, every inbox is the recipient's problem. The sender has no skin in the game.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is the same problem email had in 1998, that comments had in 2005, and that Twitter had until Elon broke verification. Every system where access to attention is free eventually degrades into spam. The fix isn't downstream — better blocklists, smarter classifiers, longer unsubscribe flows. The fix is upstream: &lt;strong&gt;make sending cost something&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "cost something" actually means
&lt;/h2&gt;

&lt;p&gt;The cost doesn't need to be large. It needs to be &lt;em&gt;real&lt;/em&gt;. A friction that filters out the spray-and-pray crowd but doesn't shut out a thoughtful company that genuinely wants to talk to you.&lt;/p&gt;

&lt;p&gt;There are a few shapes this can take:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Time-cost&lt;/strong&gt; — a custom application form, a take-home, a required intro video. Works, but it costs &lt;em&gt;you&lt;/em&gt; time too, every time you read one. And it doesn't stop the worst offenders, who'll auto-fill.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Social-cost&lt;/strong&gt; — only respond to warm intros. Works for some founders, doesn't work if your network is small or you're new to a city. Excludes good people.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Money-cost&lt;/strong&gt; — the recruiter pays, in cash or credits, to send a single message. Crucially, the money goes to &lt;em&gt;you&lt;/em&gt;, not to the platform.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The third one is the only one that scales. It puts the cost on the side that benefits from sending — and pays the person whose attention is being spent.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A recruiter who pays $5 to message you has already filtered themselves.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Why this isn't paywalling your inbox
&lt;/h2&gt;

&lt;p&gt;The objection I hear most: "This sounds like I'm charging people to talk to me. Aren't I supposed to be findable?"&lt;/p&gt;

&lt;p&gt;You still are. The price isn't on &lt;em&gt;reading&lt;/em&gt;, it's on &lt;em&gt;sending&lt;/em&gt;. Anyone can land on your public profile — the page is open, the SEO works, Google indexes it. What costs credits is the act of pushing a message into your inbox. The asymmetry between effortless sending and effortful reading is what got us here in the first place.&lt;/p&gt;

&lt;p&gt;Two more details that matter:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;If you don't reply within the window, the recruiter gets their credits back. You're not pocketing money for ghosting people.&lt;/li&gt;
&lt;li&gt;You can set the price low, high, or temporarily disable it.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What changes the first week
&lt;/h2&gt;

&lt;p&gt;I've watched a dozen developers turn this on. The pattern is consistent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Volume drops 80–95% within forty-eight hours.&lt;/li&gt;
&lt;li&gt;The remaining messages are read end-to-end — because there are few enough to read.&lt;/li&gt;
&lt;li&gt;Response rate to the messages you &lt;em&gt;do&lt;/em&gt; get goes up, because the senders are doing real research.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You stop dreading the notification badge. The inbox becomes a tool again. Occasionally a great role shows up. You reply, claim the credits, move on with your day.&lt;/p&gt;




&lt;h2&gt;
  
  
  How to start
&lt;/h2&gt;

&lt;p&gt;If you want to do this on reachdev.io specifically: create a profile, pick a price, drop the link in your GitHub bio and your email signature, and stop reading LinkedIn InMail forever. It takes about ten minutes.&lt;/p&gt;

&lt;p&gt;If you want to do this &lt;em&gt;without&lt;/em&gt; reachdev.io: try writing a paragraph at the top of your portfolio that says "I respond to recruiter messages for $20 paid via Stripe link, refunded if I don't reply within a week." It works less smoothly, but the principle is the same — and it'll teach you very quickly what the right number is.&lt;/p&gt;

&lt;p&gt;Either way: the moment you put a price on it, the math flips. And the inbox becomes yours again.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>career</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
