🌍 Dev.to

I Built a Production-Ready Job Queue in Go from Scratch - Goroutines, Postgres and Clean Architecture published: true

-- I'm Pires Aurélio , a Go Backend Engineer from Luanda, Angola. I build production systems in public. For 2 years I built scrapers and REST APIs. I got tired of tutorials that only show "Hello World" with Gin. No jobs, no retries, no real problems. So I built a real one: A Production-Ready Background Job Queue in Go. My Public Work: Main Scraper Framework (Python AsyncIO): https://github.com/Aureliopires186/py-websites-scraper Go Production Examples: https://github.co...
Your Angular Test Passed. Could the User Click the Button?
🌍 Dev.to

Your Angular Test Passed. Could the User Click the Button?

A visible Angular button was covered by a decorative layer. The handler still worked. Our test clicked the button, observed the expected status, and passed. A pointer could not reach the button's center. Running the same synthetic test in Chromium did not change the result. The missing observation was whether the pointer could actually reach its target. We examined six component scenarios, with expected behavior and one isolated mutation defined before writing each test. We chose the mutat...
Moving focus and cursor between monitors with head pose on macOS
🌍 Dev.to

Moving focus and cursor between monitors with head pose on macOS

I have two monitors, and I kept typing into the window on the screen I'd just looked away from. Focus stays where it was, but my eyes have moved on. I made a menu bar app to fix it. It moves cursor and focus to the display you're facing. The code is at https://github.com/arefbhrn/FocusFollow (MIT). This post is about how it works and what didn't. Why head pose and not eye tracking Proper eye tracking needs hardware a Mac doesn't have. But to tell two monitors apart yo...
🌍 Dev.to

A "3% fee" that's really 27% APR — I built a vanilla JS calculator to prove it

A friend who runs a small delivery business got a factoring quote last month: "just a 3% fee on your invoices." He was ready to sign — his credit card charges more than that monthly. I asked him one question: 3% compared to what? His bank had offered a business credit line at 9% APR. The factoring company quoted 3%. Those numbers aren't in the same unit — one is charged once per invoice, the other is charged per year. So I did what developers do: I built a calculator to convert one int...
🌍 Dev.to

Running a Multi-Tenant Platform on EC2: Node.js, PostgreSQL, SES and the AWS Cost Bug We Almost Missed

description: Real architecture notes from FundsWeb and FundsAudit: Express, Sequelize, PM2, Nginx, SES, S3 and a cross-region data transfer bill that taught us to read AWS cost reports. tags: aws, node, postgres, architecture canonical_url: https://fundsroomprojects.com/blog/multi-tenant-platform-ec2-node-postgres cover_image: We build and run FundsWeb , a multi-tenant web platform, along with [FundsAudit] and an internal email validation service. This post covers the stack,...
Building IntelliDesk AI: How I Architected a Production-Grade Enterprise ITSM Platform with RAG, WebSockets, and Celery
🌍 Dev.to

Building IntelliDesk AI: How I Architected a Production-Grade Enterprise ITSM Platform with RAG, WebSockets, and Celery

By Pruthviraj Janwade If you have ever worked in an enterprise environment, you know the dread of filing an IT support ticket. You navigate through a labyrinthine portal, fill out a 12-field form with dropdowns you do not understand, and wait 24 to 48 hours just to receive an email asking: "Have you tried restarting your machine?" Tools like ServiceNow , Jira Service Management , and Zendesk are enterprise powerhouses, but they were built in an era of manual triage and static ...
Tokens, Embeddings and the Foundation Model Lifecycle for AWS AIF-C01
🌍 Dev.to

Tokens, Embeddings and the Foundation Model Lifecycle for AWS AIF-C01

An exam question describes a long document, a search request and a model being adapted for a specialist task. Which detail matters first: the words, the vectors or the training stage? For AWS AIF-C01, the reliable answer comes from separating three layers: tokens are what a foundation model processes, embeddings make meaning comparable, and the foundation model lifecycle turns a broadly capable model into a callable system that can improve through feedback. Once those layers are clear, many plau...
🌍 Dev.to

Leaving Supabase Cloud: the three failures that produce no error

I moved a production multi-tenant SaaS off Lovable and Supabase Cloud onto a single server I own. Ninety-nine tables, 228 row-level-security policies, and a front end that queries the database directly from the browser. It took about a week. Most of that week went into four or five specific problems, each of which produced a working deployment that was quietly wrong. This is what they were. Supabase is five programs, not one Internalise this before planning anything. What the ...
🌍 Dev.to

Cómo automatizar facturas PDF con Python: Guía práctica para ahorrar horas de trabajo manual

Cada mes, empresas y profesionales independientes enfrentan la misma pesadilla: cientos de facturas en formato PDF acumuladas en una carpeta, esperando ser revisadas, clasificadas y procesadas una por una. Lo que antes tomaba días de trabajo repetitivo ahora puede resolverse en minutos con un script de Python bien diseñado. Automatizar facturas PDF no solo libera tiempo para tareas de mayor valor, sino que reduce errores humanos, estandariza procesos y escala sin necesidad de contratar personal ...
🌍 Dev.to

Walk Me Through How You'd Design a Production Prompt — 9 Interview Questions, Answered

There's one question that opens almost every AI engineering interview's prompt-design section: "Walk me through how you'd design a production prompt for a structured extraction task." It sounds open-ended. It isn't. Interviewers are listening for five specific beats, and the follow-up questions below are how they check for the ones you skip. This is the companion piece to the hands-on Colab notebook where we measured an 80%-to-0% format-drift swing from adding few-shot examples — if ...
🌍 Dev.to

I'm sweating bullets

Well, about 4h30m to the interview and I'm stressed. Honestly, this is why I hate interviews, because it seems the more I study up, the more I feel like I dont know what I'm doing, even though I built it... Mostly, because during the tech interview, I was asked really in-depth questions and expected to talk through implementations, quoting method signatures, which isnt really something I consider a skill of mine... Not to mention, last time was just with the Tech Lead... This time it's wit...
🌍 Dev.to

Generated files lie until you rerun the generator

Someone changes a protobuf field's type, or reuses a field number. The .proto is reviewed and merged. Nobody ran buf generate . CI is green: the Go still type-checks against the api.pb.go that was already in the tree. A client built from the new proto talks to a server built from the old one, and the compiler never said a word. That's the tax on committing generated code. What's in Git is a snapshot of some past run. The thing that actually defines those files is the command that wrote t...
🌍 Lobsters

EU KIDS Act

Comments
🌍 Lobsters

Who's hiring? Q4 2026

There was interest in expanding the scope of "Who's hiring" posts to non-software engineering positions [link1] [link2] . Some discussion took place, however no actual jobs were posted. I suggest to include that intention into this post and share non-engineering vacancies such as customer support, data entry, field technician, etc. Although, I'd like to remind you this is a computing-focused community, so the jobs should fall into that realm too. Please, use the following template for your ...
🌍 Dev.to

How to Build MCP Gateway from Scratch

How to Build MCP Gateway from Scratch This guide covers how to build MCP gateway from scratch - a production middleware layer that routes, authenticates, rate-limits, and observably forwards AI agent tool calls. Covers TypeScript code, architecture decisions, and hardening for multi-tenant deployments. An MCP gateway is a middleware layer that sits between AI agents and the external tools, data sources, and services they need. It handles routing, authentication, rate limiting, protocol tr...
10 Claude Code CLI Mistakes That Kill Your Productivity — And How to Fix Each One
🌍 Dev.to

10 Claude Code CLI Mistakes That Kill Your Productivity — And How to Fix Each One

10 Claude Code CLI Mistakes That Kill Your Productivity — And How to Fix Each One Most developers who pick up Claude Code make the same mistakes in the first week. Not because they're careless — because the tool looks forgiving. It writes code confidently. It follows instructions promptly. It feels like it has your back. But it doesn't. Not unless you set it up to. The problem isn't that Claude Code does things wrong. It's that it does things exactly the way you asked — including the...
🌍 Dev.to

A per-order margin ledger: reconciling what you quoted against what the carrier billed

Shipping cost in most ecommerce backends is an estimate that nobody checks. At checkout you show a number from a rate table. The parcel ships. The carrier sends an invoice six weeks later with a different number on it. Nobody joins the two, because joining them means matching a carrier's line-item PDF against your order ids, and so the difference just disappears into cost of goods sold and the margin dashboard keeps lying. The fix is unglamorous and it pays for itself: a ledger that record...
🌍 Dev.to

Retrying a label API that already charged you

Most retry advice assumes the operation you are retrying is free. For a shipping label API that assumption is wrong in an expensive way: the call creates a real object, it bills you when it succeeds, and the failure mode you actually hit is a timeout after the carrier already did the work. Your client sees an error. The carrier has a label, a tracking number and a charge. Retry naively and now you have two of each, one of which will never be scanned, and at some point in the quarter that turn...
Mixdog: an open-source workspace for multiple AI coding models
🌍 Dev.to

Mixdog: an open-source workspace for multiple AI coding models

I built Mixdog , an open-source AI coding harness that brings models from multiple subscriptions and API providers into one workspace. I simplified the setup with a short tutorial so you can connect a provider and start working without assembling the interface yourself. One workspace, several models Mixdog supports providers including OpenAI, Anthropic, Google and xAI. You can choose different models for different agent roles and keep multiple tasks visible in split panel...
Xiaomi AI training, live: what the MiMo 2.6 RL dashboard shows
🌍 Dev.to

Xiaomi AI training, live: what the MiMo 2.6 RL dashboard shows

Xiaomi's AI lab is training its next model in public. The page at mimo.xiaomi.com/rl shows two reinforcement-learning runs for MiMo 2.6 "read directly from the trainer's logs": pass rates, data mix, restarts with the operators' reasons, and a cost counter that passed one million dollars on Thursday. If you have only ever seen a model through its launch blog, this is the part the launch blog leaves out. TL;DR Xiaomi is streaming two RL post-training runs: MiMo 2.6 P...
🌍 Dev.to

Before you give a Polymarket bot your private key: a 15-minute checklist

In 2026, "Polymarket copy-trading bot" became one of the most effective lures on GitHub. The pattern repeated all year. In February, an attacker took over a legitimate organisation's GitHub account and published more than twenty malicious repositories, several of them Polymarket copy-trading bots. Following their setup instructions installed a hidden npm dependency that read the private key from .env , sent it to the attacker's server and opened an SSH backdoor ( StepSecurity's write-up ). I...
🌍 Dev.to

Hearing every Polymarket trade three ways: the detection layer of a copy-trading bot in Rust

A copy-trading bot has one job that matters more than any other: notice that the wallet you follow just traded. Everything after that, from sizing and slippage control to execution and settlement, works on a signal the detection layer either delivered or didn't. On 31 August 2026 Polymarket's activity/trades websocket topic went down platform-wide, for every IP at once, for hours. Every bot that listened only to that topic went deaf. Mine had a slow REST poll as a backup, and that was all...
🌍 Dev.to

"Push, PR, merge." Two minutes later: "Stop. I'm not opening a PR to myself."

On September 9 at 07:21 I typed four words to an agent: push, PR, merge. At 07:23 I interrupted it: stop, just push to master, I'm not going to open a pull request to myself. The agent pushed three commits, fast-forward, and wrote the rule down so the next session would know it. In between, it had done exactly what the tooling around it is built to do, and that's the part worth looking at. The change The work was small. An internal tool keeps a catalog of entries that we generate...
🌍 Dev.to

What I've Learned from Pitching 7 Companies (And Getting 0 Replies)

📌 Quick Info Topic: The reality of pitching companies as a beginner writer Target Audience: Anyone trying to break into writing, freelancing, or any creative field Goal: Show that the silence is normal, not a verdict on your work 1. Introduction "Over the past two weeks, I've sent pitches to 7 companies that pay for technical writing. I've followed up with 5 of them. So far, I've received zero replies. Here's what I've learned." 2. The N...
🌍 Dev.to

From Windows to Fedora, Cursor to Zed, Opera to Zen — how my stack got quieter and more intentional

I didn’t wake up one day and decide to “become a Linux person.” I just got tired of a workflow that felt loud — notifications, bloat, apps I didn’t choose so much as inherit — and curious enough to try something else. What started as a switch from Windows → Fedora (KDE Plasma) turned into a much bigger rethink: editor, browser, phone apps, even how I feel about software day to day. This isn’t a “Windows is dead” post. Windows works for a lot of people. This is just what changed for me ,...
🌍 Dev.to

How to Prevent LLM Hallucinations with Guardrails (2026)

How to Prevent LLM Hallucinations with Guardrails (2026) A support bot tells a customer that worn shoes qualify for a full refund. The policy says the opposite. The answer reads fluently, cites the right document, and is wrong in exactly the detail that costs money. This hypothetical example illustrates one form of an LLM hallucination: not wild invention, but a small confident misread of a real source. Prompting the model to "be careful" does not fix it. A verification loop can catch some f...