Two exploits, one public API key: the day I attacked my own Supabase app
This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry . Every app has its rockstar bug. Mine didn't crash, didn't throw, di…
Latest Team Management news from Tech News
This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry . Every app has its rockstar bug. Mine didn't crash, didn't throw, di…
Most backend engineers implement multi-tenant quota checks using a standard "read-then-write" pattern. In production, this pattern is highly unsafe: S…
In Subscription Billing and Plans we wired up the part of the product that collects money. This article covers the part that gets people into the prod…
A feedback button is easy to ship. A feedback system is harder. The difference is not the input form. It is what happens after someone presses Send : …
This project was supposed to be a quick experiment. I had been reading about DNA storage and got carried away with the idea. DNA can pack a ridiculous…
In the last post we streamed AI responses over SSE. Now let's fix the problem every chatbot hits in week one: the model doesn't know your data. Ask it…
Why We Built DRM: Stopping Production Incidents Caused by Manual Database Deployments By Alexey Levin & Eli Shohat, co-founders of D-Band Between …
When Neon became the official database partner of DEV Community, I was already a user. But the partnership made me look closer at why I chose Neon — a…
I Built a Production-Ready Video Downloader Backend in TypeScript — Here's What I Learned I just completed V2 of Vidiflow , a production-ready backend…
Email verification looks easy until you try to prove it works repeatably in CI. The happy path is obvious: create user, send email, click link, mark a…
How I Built a 93-Day Streak Engine in Postgres That Scales to 28K Users Streaks are the backbone of habit-forming products. Duolingo has them. Strava …
PostgreSQL community images address a real gap in how a Kubernetes database operator earns your trust. Running a database operator on Kubernetes means…
Everything in Posts 2 through 5 - the B+Tree structure, the LSM write path, the compaction effect, the secondary index cost, happens on a single machi…
Stop Committing 50,000-Line PostgreSQL Schema Files to Git If you've ever version-controlled a PostgreSQL database, you've probably run into the same …
For most multi-tenant SaaS, the default still rhymes: PostgreSQL on Aurora, behind an API, in a private subnet. Stable, well-understood, the shape you…
The Hook: the bottleneck moved, and most teams missed it The fastest way to ship with AI right now is not model shopping, it's workflow engineering. T…
In a previous post , I explored how MongoDB chooses between nested loop, indexed loop, and hash join strategies for $lookup . Here, I examine what occ…
Liberia's national budget is public. By law, it has to be. Every year the Ministry of Finance publishes it as a PDF on their website, hundreds of page…
Disclosure: I am a senior backend tech lead in Paris and I run HostingGuru, a small European PaaS for solo founders and small teams. This article ment…
You know the command exists. You've run it a dozen times. But every single time you need to see what's actually running on your database, you end up t…
MVCC, WAL, vacuum, and replication slots under sustained delete load - and how to delete billions of rows without your database noticing Most "how to …
Every team has that Confluence page. The one that was carefully written to explain what the service does, what the API looks like, what each DB column…
In a multi-tenant B2B platform, data leakage is an extinction-level event. If Property A logs into your dashboard and accidentally sees the guest data…
Hi Dev Community! I am a CS graduate. I want to build an industry-standard full-stack app for my portfolio on my own. Recently, I have learned the bas…
Introduction: Bridging the Gap Between Postgres and JavaScript with ParadeDB The ParadeDB NPM package emerges as a targeted solution to a growing pain…
There's this problem I kept running into - first during my internship, then again on a freelance project I picked up afterward. Both of them used Post…
APScheduler's Advisory Lock Failure: My Solo VM's Scheduler Died Permanently It started with a user report: "Content engine auto-publishing should put…
I like writing SQL manually in Go. Especially with pgx or database/sql, it gives you explicit control over what happens: no hidden queries, no entity …
AI assistants can write SQL. But writing SQL is only a small part of working with a real database. Most database work is investigation: What tables ex…
TypeScript passed it clean. The code reviewer approved it. It shipped to production. Three months later, a penetration tester sent a report. The vulne…