<?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>Forem: Oleg Glybchenko</title>
    <description>The latest articles on Forem by Oleg Glybchenko (@lezhag).</description>
    <link>https://forem.com/lezhag</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%2F3839054%2Fb3f15763-5206-4f30-9d85-990f16e7afaa.jpeg</url>
      <title>Forem: Oleg Glybchenko</title>
      <link>https://forem.com/lezhag</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/lezhag"/>
    <language>en</language>
    <item>
      <title>Sticky identities</title>
      <dc:creator>Oleg Glybchenko</dc:creator>
      <pubDate>Wed, 22 Apr 2026 12:31:59 +0000</pubDate>
      <link>https://forem.com/lezhag/sticky-identities-3c8k</link>
      <guid>https://forem.com/lezhag/sticky-identities-3c8k</guid>
      <description>&lt;p&gt;When I started career in software in 2015, every job application I filled out had the same dropdown.&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.amazonaws.com%2Fuploads%2Farticles%2Fit6si0psbyo12s6su0j3.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.amazonaws.com%2Fuploads%2Farticles%2Fit6si0psbyo12s6su0j3.png" alt="Career dropdown" width="800" height="713"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I picked frontend. Not because I didn't write backend code — I did, throughout my whole career. But the dropdown needed an answer, and frontend was where my mass-applied recruiter keywords lived. You know how it is. Required field. Pick one. Move on.&lt;/p&gt;

&lt;p&gt;Except you don't move on. That answer followed me for a decade. The jobs I saw. The filters I passed. The ones I didn't. A dropdown became a label. A label became an identity. And identities, it turns out, are harder to kill than a production bug on a Friday deploy.&lt;/p&gt;




&lt;p&gt;Last week I sat down with our R&amp;amp;D chief to talk about the future of software development. Not in the abstract LinkedIn way — in the "what does this actually mean for our team" way. I threw out two directions.&lt;/p&gt;

&lt;p&gt;The first is horizontal. The walls between backend, frontend, product, design — they're gone. I watched a PM at our company trace a 35-second production slowdown to a cold buffer pool, calculate that 33,000 rows were being scanned when only 3,300 were needed, and open a PR with the fix. Six months ago he was the guy engineers joked about for "refusing to open PRs." Nobody's laughing now.&lt;/p&gt;

&lt;p&gt;The second is vertical. Systems thinking. Architecture. The kind of knowledge that doesn't fit in a prompt and doesn't show up in a diff. The kind of knowledge that prevents the 3am pager from going off in the first place.&lt;/p&gt;

&lt;p&gt;He said something that reframed both.&lt;/p&gt;

&lt;p&gt;"ICs will always be measured on one thing — how fast they deliver quality. AI doesn't change the metric. It changes the multiplier."&lt;/p&gt;

&lt;p&gt;Go wide → you parallelize. Ship 3 things instead of 1.&lt;br&gt;
Go deep → you prevent fires. One architectural call saves 3 months of rework.&lt;/p&gt;

&lt;p&gt;Breadth or depth. Both are multipliers. Neither is optional.&lt;/p&gt;

&lt;p&gt;I agreed. Then I told him the real problem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Most developers will pick neither.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  A Dead Economist Walks Into a Standup
&lt;/h2&gt;

&lt;p&gt;Stay with me here.&lt;/p&gt;

&lt;p&gt;John Maynard Keynes was a British economist who published &lt;a href="https://en.wikipedia.org/wiki/The_General_Theory_of_Employment,_Interest_and_Money" rel="noopener noreferrer"&gt;&lt;em&gt;The General Theory of Employment, Interest and Money&lt;/em&gt;&lt;/a&gt; in 1936 — right in the middle of the Great Depression. Why should you care? Because before Keynes, every serious economist believed the same thing: markets self-correct. Prices fall, wages adjust, supply meets demand, everything finds equilibrium. Just wait it out. This was the "it works on my machine" of economics — theoretically sound, practically useless.&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.amazonaws.com%2Fuploads%2Farticles%2Fdopdwzlldqvhksebh2ga.jpg" 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.amazonaws.com%2Fuploads%2Farticles%2Fdopdwzlldqvhksebh2ga.jpg" alt="John Maynard Keynes, 1st Baron Keynes" width="579" height="900"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Keynes looked at millions of people in unemployment lines and said: no. Things get stuck. And they stay stuck.&lt;/p&gt;

&lt;p&gt;His big idea was &lt;em&gt;sticky prices&lt;/em&gt;. Wages and prices don't adjust to new realities even when they should. Contracts get in the way. Coordination problems get in the way. The simple human refusal to accept less than yesterday gets in the way. The economy doesn't self-correct. It freezes. By the time it unfreezes, the damage is done.&lt;/p&gt;

&lt;p&gt;If you're a developer, you've already heard this voice. It sounds like: "I like writing code manually, that's what I was hired for." Or: "I'm not a prompt engineer, I'm a &lt;em&gt;real&lt;/em&gt; engineer." Or my personal favorite: "AI can't do what I do" — said by someone mass-applying to the same role they've held for 6 years while the job description quietly changed underneath them.&lt;/p&gt;

&lt;p&gt;That's a sticky wage. That's a price that won't adjust.&lt;/p&gt;

&lt;p&gt;This was controversial enough to split economics into two schools still arguing about it 90 years later. Keynes told an entire profession "your core assumption is wrong" and proved it with math. Which, if you think about it, is the most senior-engineer move in the history of intellectual work.&lt;/p&gt;

&lt;p&gt;Why am I telling you about a dead economist?&lt;/p&gt;

&lt;p&gt;Because developer identities are sticky prices.&lt;/p&gt;

&lt;p&gt;"I'm a frontend developer" is not a description of what you do. It's a wage that refuses to adjust. I wrote backend code my entire career, but the &lt;em&gt;label&lt;/em&gt; said frontend. The market moved — AI dissolved the skill barriers, companies restructured around output — but the label stayed. Comfortable. Familiar. Attached to years of mass-applied recruiter keywords and mass-internalized self-worth.&lt;/p&gt;

&lt;p&gt;And it's not just economics. Psychologist &lt;a href="https://en.wikipedia.org/wiki/Glynis_Breakwell" rel="noopener noreferrer"&gt;Glynis Breakwell&lt;/a&gt; developed &lt;a href="https://www.sciencedirect.com/science/article/abs/pii/S0272494412000400" rel="noopener noreferrer"&gt;Identity Process Theory&lt;/a&gt; in 1986, which describes exactly why this happens at the individual level. People construct identity around four principles: self-esteem, continuity, distinctiveness, and self-efficacy. Threaten any of them — say, the market telling you your specialization is no longer special — and people don't adapt. They defend. They double down. Erik Erikson, who &lt;a href="https://en.wikipedia.org/wiki/Erik_Erikson#Identity_crisis" rel="noopener noreferrer"&gt;coined the term "identity crisis"&lt;/a&gt;, would call what's happening now a mass identity renegotiation. Most people avoid those until the pain of staying exceeds the pain of changing.&lt;/p&gt;

&lt;p&gt;Kahneman and Tversky put a number on it: &lt;a href="https://en.wikipedia.org/wiki/Loss_aversion" rel="noopener noreferrer"&gt;losses feel twice as painful as equivalent gains&lt;/a&gt;. To stop calling yourself "a React developer," the alternative has to feel &lt;em&gt;twice as valuable&lt;/em&gt;. It doesn't. It feels like opening a codebase you've never seen at 4pm on a Thursday.&lt;/p&gt;

&lt;p&gt;So you stay. Not because staying is the right move. Because the cost of moving feels higher than the cost of standing still.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Market Already Moved. You Didn't.
&lt;/h2&gt;

&lt;p&gt;The numbers are in. &lt;a href="https://digitaleconomy.stanford.edu/" rel="noopener noreferrer"&gt;Stanford&lt;/a&gt; tracked payroll data: employment for developers aged 22–25 dropped 20% from its 2022 peak. Developers over 26? Stable. The two cohorts diverged the moment ChatGPT launched. Like a git branch nobody merged back.&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.amazonaws.com%2Fuploads%2Farticles%2F684atu343lb1l10ysjv3.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.amazonaws.com%2Fuploads%2Farticles%2F684atu343lb1l10ysjv3.png" alt="Employment divergence — developers aged 22-25 vs 26+, post-ChatGPT" width="800" height="951"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Source: Stanford Digital Economy Lab, "Canaries in the Coal Mine?" (2025)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.nber.org/papers/w33708" rel="noopener noreferrer"&gt;Harvard&lt;/a&gt; went wider — 62 million workers, 285,000 firms. At AI-adopting companies, junior employment fell 9–10% in six quarters. Not layoffs. Companies just stopped posting junior roles. The bottom rungs aren't being kicked out. They're being removed before anyone gets on.&lt;/p&gt;

&lt;p&gt;You know the headline numbers. &lt;a href="https://www.trueup.io/layoffs" rel="noopener noreferrer"&gt;245,000 laid off in 2025. 95,000 so far in 2026&lt;/a&gt;. Salesforce cut support by half, replaced them with AI agents. &lt;a href="https://www.informationweek.com/it-staffing-careers/2026-tech-company-layoffs" rel="noopener noreferrer"&gt;Snap said 40% of new code is AI-generated&lt;/a&gt;. But the same Q1 2026 that saw 52,000 layoffs also had &lt;a href="https://www.getmanfred.com/en/blog/whats-happening-in-tech-in-2026-layoffs-and-hiring" rel="noopener noreferrer"&gt;67,000 active job postings&lt;/a&gt; — highest in three years. Same quarter. Same industry. Companies destroying one type of role and creating another, fast enough for both curves to coexist.&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.amazonaws.com%2Fuploads%2Farticles%2F2fuogxjc8zjhxk04z9ya.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.amazonaws.com%2Fuploads%2Farticles%2F2fuogxjc8zjhxk04z9ya.png" alt="Q1 2026: 52K layoffs and 67K job postings — same quarter, same industry" width="800" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The jobs disappearing are defined by labels. The jobs appearing are defined by output.&lt;/p&gt;

&lt;p&gt;And yet — go on any job board right now. I went on Anthropic's. The company building Claude — the AI that's supposedly dissolving the boundaries between specializations. Here's what their careers page looks like:&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.amazonaws.com%2Fuploads%2Farticles%2Fx6yr5i8qjzyt0uqcsus2.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.amazonaws.com%2Fuploads%2Farticles%2Fx6yr5i8qjzyt0uqcsus2.png" alt="Anthropic careers page — still hiring by label" width="800" height="369"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Anthropic's careers page, April 2026. The dropdown is gone. The labels aren't.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The company building the AI that dissolves specialization boundaries is hiring with the same boundaries. Stickiness isn't a bug in the hiring pipeline. It's the pipeline.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Twist: You Already Know This And It Doesn't Matter
&lt;/h2&gt;

&lt;p&gt;Here's where it gets uncomfortable.&lt;/p&gt;

&lt;p&gt;If you've read this far you probably agree. AI changed things. Labels are outdated. Adapt or die. You've seen the LinkedIn posts. You've nodded along. You might have even reshared one with a thoughtful comment like "this resonates."&lt;/p&gt;

&lt;p&gt;And then you went back to work. As a frontend developer. Doing frontend things. In a frontend team. With a frontend title.&lt;/p&gt;

&lt;p&gt;This is Breakwell's theory in action. You &lt;em&gt;intellectually&lt;/em&gt; accept the threat. But your identity defense mechanisms kick in anyway — you minimize the threat, you tell yourself your niche is different, you reframe the layoffs as something that happens to other people. The continuity principle wins. The identity survives. The adaptation doesn't happen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://metr.org/blog/2025-07-10-early-2025-ai-experienced-os-dev-study/" rel="noopener noreferrer"&gt;METR&lt;/a&gt; — a nonprofit research group — proved this gap is measurable. They ran a randomized controlled trial in 2025. 16 experienced open-source developers. Randomly assigned tasks with or without AI.&lt;/p&gt;

&lt;p&gt;The developers using AI took 19% longer.&lt;/p&gt;

&lt;p&gt;Before starting, they predicted a 24% speedup. After finishing — after experiencing the slowdown — they &lt;em&gt;still believed&lt;/em&gt; AI had sped them up by 20%.&lt;/p&gt;

&lt;p&gt;A 39-point gap between perception and reality. Not a skill problem. A belief system so sticky that lived experience couldn't dislodge it. If that's not downward nominal rigidity applied to self-perception, I don't know what is.&lt;/p&gt;

&lt;p&gt;Keynes's whole point. Sticky prices don't persist because people are stupid. They persist because the psychological cost of adjusting is higher than the economic cost of being wrong — right up until the moment it isn't. And by that moment, you're in the LinkedIn "open to work" queue. Which is an unemployment line with better lighting.&lt;/p&gt;




&lt;h2&gt;
  
  
  Three Things That Break the Freeze
&lt;/h2&gt;

&lt;p&gt;Keynes argued economies don't self-correct. They need intervention — something external that forces movement.&lt;/p&gt;

&lt;p&gt;Developer identities work the same way. Three things do it:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your company stops hiring your label.&lt;/strong&gt; Already happening. Postings labeled "entry-level software engineer" &lt;a href="https://hakia.com/news/junior-developer-crisis-2026/" rel="noopener noreferrer"&gt;grew 47%, but actual hiring dropped 73%&lt;/a&gt;. The dropdown still has the option. The jobs behind it don't.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Someone crosses the boundary you wouldn't.&lt;/strong&gt; I watched a PM open PRs, trace production issues, and challenge engineering assumptions that two senior engineers missed. He didn't learn to code — he already knew the domain. AI just removed the last barrier between his knowledge and the codebase. When someone crosses the wall you're standing behind, it stops feeling protective. It starts feeling like a cage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You realize the label was never a description. It was a limitation.&lt;/strong&gt; I called myself a frontend developer for years — while writing backend code the whole time. The label didn't reflect what I did. It reflected what I was &lt;em&gt;willing to claim&lt;/em&gt;. The gates were already open. The only thing still closed was the dropdown in my head.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Dropdown
&lt;/h2&gt;

&lt;p&gt;Somewhere right now, a developer is filling out a job application. There's a dropdown. "Select your specialization." They're picking the same thing they picked last time. Not because it's wrong. Because it's familiar. Because the cost of changing feels higher than the cost of staying.&lt;/p&gt;

&lt;p&gt;Keynes called this sticky prices. Kahneman called it loss aversion. Breakwell called it identity threat defense. I'm calling it sticky identities.&lt;/p&gt;

&lt;p&gt;The biggest risk right now isn't picking the wrong direction — breadth or depth, horizontal or vertical. The biggest risk is not picking at all. Inertia is the default. And the data says the default is getting people left behind.&lt;/p&gt;

&lt;p&gt;I picked frontend from a dropdown 11 years ago. It took me most of those years to realize I wasn't choosing a specialty. I was choosing a ceiling.&lt;/p&gt;

&lt;p&gt;The dropdown is still there. I stopped picking from it.&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.amazonaws.com%2Fuploads%2Farticles%2F4zzukhq6kmpfs4oxhl3q.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.amazonaws.com%2Fuploads%2Farticles%2F4zzukhq6kmpfs4oxhl3q.png" alt="What's left after the labels come off." width="800" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>career</category>
    </item>
    <item>
      <title>I kept getting blamed for outages that weren't mine. So I built a tool to fight back</title>
      <dc:creator>Oleg Glybchenko</dc:creator>
      <pubDate>Mon, 23 Mar 2026 01:31:53 +0000</pubDate>
      <link>https://forem.com/lezhag/i-kept-getting-blamed-for-outages-that-werent-mine-so-i-built-a-tool-to-fight-back-4o43</link>
      <guid>https://forem.com/lezhag/i-kept-getting-blamed-for-outages-that-werent-mine-so-i-built-a-tool-to-fight-back-4o43</guid>
      <description>&lt;h2&gt;
  
  
  The villain origin story
&lt;/h2&gt;

&lt;p&gt;December 2024. 11 PM. I'm on the couch. Phone buzzes.&lt;/p&gt;

&lt;p&gt;"Hey, the AI feature is broken."&lt;/p&gt;

&lt;p&gt;I check our dashboards. Everything's green. Our servers are fine. Our database is fine. Our CDN is fine.&lt;/p&gt;

&lt;p&gt;OpenAI is down.&lt;/p&gt;

&lt;p&gt;Not us. OpenAI. Their status page? Still showing "All Systems Operational." It took them over an hour to even acknowledge it. By then I'd already gotten 14 messages from users who thought &lt;em&gt;we&lt;/em&gt; broke something.&lt;/p&gt;

&lt;p&gt;Two weeks later — same thing. OpenAI down again. 4+ hours. Same dance. Same blame.&lt;/p&gt;

&lt;p&gt;I started to notice a pattern.&lt;/p&gt;

&lt;h2&gt;
  
  
  The pattern
&lt;/h2&gt;

&lt;p&gt;Every monitoring tool I've ever used — Pingdom, UptimeRobot, Datadog — they all answer the same question: &lt;strong&gt;is MY site up?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's... not the question anymore.&lt;/p&gt;

&lt;p&gt;Your site is up. Your checkout is up. Your auth is up. But Stripe's API is returning 500s, so your checkout silently fails. Twilio is lagging, so your 2FA codes arrive 30 minutes late. OpenAI is down, so every AI feature you've built returns a loading spinner forever.&lt;/p&gt;

&lt;p&gt;Your infrastructure is healthy. Your users are furious. And the status pages of those providers? They'll update eventually. Maybe. If they feel like it.&lt;/p&gt;

&lt;p&gt;→ You find out from customer complaints&lt;br&gt;
→ You find out from someone on Twitter&lt;br&gt;
→ You find out from Downdetector — which, by the way, &lt;a href="https://www.tomsguide.com/news/live/cloudfare-outage-november-2025-x-chatgpt" rel="noopener noreferrer"&gt;went down during the November 2025 Cloudflare outage&lt;/a&gt;. The site that tracks outages &lt;em&gt;couldn't track the outage.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I'm not making this up.&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.amazonaws.com%2Fuploads%2Farticles%2Fea2kastcmywuerqijwfs.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.amazonaws.com%2Fuploads%2Farticles%2Fea2kastcmywuerqijwfs.png" alt="A chain of API dependency nodes with one cracked and glowing red, causing a ripple of warnings" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  It's getting worse
&lt;/h2&gt;

&lt;p&gt;This isn't a pessimism play. It's math.&lt;/p&gt;

&lt;p&gt;Every major cloud provider is pouring money into GPU clusters and AI infrastructure. &lt;a href="https://www.forrester.com/blogs/predictions-2026-cloud-outages-private-ai-on-private-clouds-and-the-rise-of-the-neoclouds/" rel="noopener noreferrer"&gt;Forrester&lt;/a&gt; — not some blogger, an actual analyst firm willing to stake their reputation on it — predicted at least two major multi-day hyperscaler outages in 2026. The reason? Legacy systems getting neglected while everyone races to ship the next model. &lt;a href="https://www.techtarget.com/searchcloudcomputing/feature/Cloud-outages-expected-to-be-the-new-normal-in-2026" rel="noopener noreferrer"&gt;TechTarget covered it too&lt;/a&gt; — cloud outages are expected to be the new normal.&lt;/p&gt;

&lt;p&gt;And we're already seeing it. In the first three months of 2026 alone:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anthropic (March 17-18)&lt;/strong&gt; — Claude went down hard. API 500 errors everywhere. Chat, coding tools, mobile — all dead. &lt;a href="https://www.ibtimes.co.uk/anthropic-claude-ai-global-disruption-1786601" rel="noopener noreferrer"&gt;IBTimes reported&lt;/a&gt; on the global disruption. Developers on Twitter called it &lt;a href="https://www.techradar.com/news/live/claude-anthropic-down-outage-march-11-2026" rel="noopener noreferrer"&gt;"a snow day"&lt;/a&gt;. &lt;a href="https://statusgator.com/services/anthropic/claudeai" rel="noopener noreferrer"&gt;StatusGator tracked 9+ hours of downtime on March 18 alone&lt;/a&gt;. Earlier in February, StatusGator detected an Anthropic outage &lt;a href="https://statusgator.com/blog/february-2026-early-warning-signals/" rel="noopener noreferrer"&gt;1 hour and 47 minutes&lt;/a&gt; before Anthropic acknowledged it on their own status page. Almost two hours of "All Systems Operational" while nothing was operational.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub (February)&lt;/strong&gt; — &lt;a href="https://github.blog/news-insights/company-news/github-availability-report-february-2026/" rel="noopener noreferrer"&gt;Six separate incidents in one month&lt;/a&gt;. The worst one took out GitHub Actions and Codespaces for nearly six hours. Then on &lt;a href="https://www.githubstatus.com" rel="noopener noreferrer"&gt;March 18, webhook deliveries&lt;/a&gt; went from ~5 second latency to 160 seconds. That's a 32x spike. On the same day Cloudflare was also having issues. Fun times.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloudflare (March 18)&lt;/strong&gt; — &lt;a href="https://www.cloudflarestatus.com/" rel="noopener noreferrer"&gt;Pages API, Pages Builds, and Workers Builds&lt;/a&gt; all hit with 500s and build failures. If you were deploying that day, you weren't deploying that day. This came after the &lt;a href="https://linuxblog.io/cloudflare-outage-nov-18-2025/" rel="noopener noreferrer"&gt;November 2025 mega-outage&lt;/a&gt; that took out X, Spotify, ChatGPT, Canva, Discord, and dozens more — and a &lt;a href="https://www.datamation.com/networks/cloudflare-outage-dec-2025/" rel="noopener noreferrer"&gt;second outage in December&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stripe&lt;/strong&gt; — &lt;a href="https://statusgator.com/services/stripe" rel="noopener noreferrer"&gt;13 incidents in the last 90 days. Three major outages.&lt;/a&gt; The payment processor. Thirteen incidents in three months.&lt;/p&gt;

&lt;p&gt;AI coding agents are &lt;a href="https://blog.bytebytego.com/p/how-stripes-minions-ship-1300-prs" rel="noopener noreferrer"&gt;shipping 1,300 PRs a week at Stripe&lt;/a&gt; now. That's incredible. It's also 1,300 chances per week for something subtle to break. The faster everyone ships, the more things break. The more things break, the more you need to know about it before your users do.&lt;/p&gt;

&lt;p&gt;I'm not anti-AI — I literally built CanaryOps using Claude Code. But the tool that helps me build faster is also the tool that &lt;a href="https://status.claude.com/" rel="noopener noreferrer"&gt;goes down at 11 PM on a Tuesday&lt;/a&gt;. The irony isn't lost on me.&lt;/p&gt;

&lt;h2&gt;
  
  
  The "I'll just build it" moment
&lt;/h2&gt;

&lt;p&gt;Every developer has this moment. The sensible voice in your head says "there's probably a tool for this." You google it. There isn't. Well, there is — but it costs $300/month and requires a sales call and a 47-slide onboarding deck.&lt;/p&gt;

&lt;p&gt;So you do what developers do.&lt;/p&gt;

&lt;p&gt;You open your terminal at 11 PM on a Tuesday and whisper "how hard can it be."&lt;/p&gt;

&lt;p&gt;(Narrator: it was not that hard.)&lt;/p&gt;

&lt;h2&gt;
  
  
  What I built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;CanaryOps&lt;/strong&gt; — monitors the APIs you depend on. Not your site. Your &lt;em&gt;dependencies&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;The idea is dead simple: ping Stripe, OpenAI, Twilio, Cloudflare, SendGrid, and about 10 other common APIs at regular intervals. When something starts returning errors or degrading — email alert. Before the status page updates. Before the user complains. Before you find out from a meme on Twitter.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Next.js (App Router) + TypeScript&lt;/li&gt;
&lt;li&gt;Supabase for auth and database&lt;/li&gt;
&lt;li&gt;Resend for email alerts&lt;/li&gt;
&lt;li&gt;Vercel cron for the check engine&lt;/li&gt;
&lt;li&gt;Lemon Squeezy for billing (because Stripe wanted me to incorporate a company just to accept payments, which is a whole different rant)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&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.amazonaws.com%2Fuploads%2Farticles%2Fbw0nzo9zqiqhwyu1o9ud.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.amazonaws.com%2Fuploads%2Farticles%2Fbw0nzo9zqiqhwyu1o9ud.png" alt="CanaryOps dashboard" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sign up, pick the APIs you use from a preset list (or add any custom URL)&lt;/li&gt;
&lt;li&gt;CanaryOps pings them at regular intervals&lt;/li&gt;
&lt;li&gt;Something's off → you get an email&lt;/li&gt;
&lt;li&gt;You now have a 5-minute head start over your users&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That's it. No Kubernetes. No Grafana dashboards that require a PhD to read. No 47-slide onboarding deck.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why email and not Slack/Discord/SMS
&lt;/h2&gt;

&lt;p&gt;Because email is the cockroach of the internet. SMTP has been running since 1982. It survived the dot-com bust, the move to mobile, the move to cloud, and every Cloudflare outage that takes out half the web. Your inbox still works when everything else is on fire.&lt;/p&gt;

&lt;p&gt;Yes, I use Resend to send the alerts. Yes, Resend could also go down. Yes, I'm aware of the irony of monitoring dependencies while depending on dependencies.&lt;/p&gt;

&lt;p&gt;It's dependencies all the way down.&lt;/p&gt;

&lt;p&gt;At some point you pick a layer you trust and stand on it. I'm standing on email. It's been working for 43 years. I like those odds.&lt;/p&gt;

&lt;h2&gt;
  
  
  The part where I ask for your help
&lt;/h2&gt;

&lt;p&gt;CanaryOps is live. Free tier gives you 10 monitors with 5-minute checks and email alerts. No credit card, no trial that expires, no "contact sales."&lt;/p&gt;

&lt;p&gt;Pro is $9/month for 50 monitors and 1-minute checks. That's less than the mass-produced sandwich you bought for lunch.&lt;/p&gt;

&lt;p&gt;I'm a solo dev. No funding, no team, no marketing department (as you can probably tell from this post). I built this because I needed it, and I'm betting other developers need it too.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I actually want from you:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Try it → &lt;a href="https://canaryops.dev" rel="noopener noreferrer"&gt;canaryops.dev&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Tell me what's broken&lt;/li&gt;
&lt;li&gt;Tell me what APIs to add to the preset list&lt;/li&gt;
&lt;li&gt;Tell me if the value prop makes sense or if I'm yelling into the void&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The thesis
&lt;/h2&gt;

&lt;p&gt;The question isn't whether your dependencies will go down. They will. &lt;a href="https://www.forrester.com/blogs/predictions-2026-cloud-outages-private-ai-on-private-clouds-and-the-rise-of-the-neoclouds/" rel="noopener noreferrer"&gt;More often than last year, and the year before that.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The question is whether you'll know before your Slack lights up with user complaints.&lt;/p&gt;

&lt;p&gt;Status pages are self-reported. They update when providers decide to admit something's wrong. That's not monitoring — that's PR.&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.amazonaws.com%2Fuploads%2Farticles%2F7uuf83wra1hpikty8xt8.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.amazonaws.com%2Fuploads%2Farticles%2F7uuf83wra1hpikty8xt8.png" alt="" width="800" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You deserve to know before the status page does.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://canaryops.dev" rel="noopener noreferrer"&gt;canaryops.dev&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>saas</category>
      <category>monitoring</category>
    </item>
  </channel>
</rss>
