360SOFTY

Insights

Engineering Insights

Practical writing on software architecture, SaaS products, AI automation, legacy modernisation, and the business of building reliable systems.

RSS

Curated links from external sources — not 360Softy original articles.

ExternalSoftware Engineering
DEV Community

I Built a Safari Extension That Shows When Your YouTube Video Ends

Ever put on a YouTube video and wondered if you'll finish it before you have to leave, go to sleep, or get back to work? I had that thought one too many times, so I built a small Safari extension to solve it. It adds the end time directly inside YouTube's native time bubble: 0:20 / 7:23 · ends 11:44pm That's it. Simple, but surprisingly useful. The core logic is about three lines: const remainingSec = (video.duration - video.currentTime) / video.playbackRate; const endDate = new Date(Date.now()

safarijavascriptwebextensions
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

What It Actually Takes to Audit Aurora PostgreSQL on AWS

Most operational infrastructure starts this way: a requirement appears before the architecture does. One day the team needed a database audit solution. Not in a planning doc — someone asked, and I had to build something. I'd owned the Oracle audit pipeline already, so I knew what the destination looked like. The question was what it would take to get there on Aurora PostgreSQL and AWS. The short answer: more than you'd expect. The longer answer is this article. The scope here is specific: indivi

awspostgressecurity
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

I instrumented 95 DataLoaders in a production GraphQL API — here's what I found

DataLoader is the standard fix for GraphQL's N+1 query problem. Batch your database calls per request, cache within the request lifecycle, done. But once DataLoader is in production, you're flying blind. Which loaders are actually called per request? Is your cache hit rate 15% or 60%? Should your batch size be 10 or 50? APM tools tell you resolver latency, but they don't understand DataLoader batching. I built dataloader-ai to answer those questions. Then I tested it for real by instrumenting 95

graphqlnodedataloader
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

Making a Local Events API Discoverable to Developers and AI Assistants

Local cultural data should not only live as web pages. Here are the main public entry points. https://dondego.es/openapi.json https://dondego.es/llms.txt https://dondego.es/.well-known/api-catalog https://dondego.es/api-catalog.json https://dondego.es/.well-known/agent-skills/index.json https://documenter.getpostman.com/view/55094507/2sBXwjvZRZ https://github.com/revanbcn/DondeGo-API https://github.com/revanbcn/DondeGo-API/tree/main/examples https://github.com/revanbcn/DondeGo-API/tree/main/post

apiaiwebdev
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

Automate LLM Red Team Campaigns with PyRIT

If you're still testing LLM guardrails by hand — retyping variations in a chat tab, logging results in a notebook, eyeballing responses — you're leaving throughput on the table. PyRIT fixes that. Microsoft's Python Risk Identification Tool is an open-source framework for running structured attack campaigns against LLM systems. The AI Red Team that built it ran it against 100+ internal operations: Phi-3, Copilot, the full stack. It chains targets, converters, scorers, and orchestrators into autom

securitypythonai
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

The Rise of the Forward Deployed Engineer

For years, software engineering has largely been optimized around one thing: producing code. Better frameworks, better abstractions, better tooling, better infrastructure. Every wave of innovation pushed engineers toward higher leverage. We moved from assembly to high-level languages, from monoliths to cloud platforms, from manual provisioning to infrastructure as code. Now AI is accelerating this trend dramatically. But contrary to popular narratives, AI is not reducing the need for engineers.

aiprogrammingarchitecture
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

How Would I Build a Payment System That Doesn't Lose Money

How Would I Build a Payment System That Doesn't Lose Money This is the first post in a series called How Would I Build. I take a real engineering problem, reason through it in plain language, then name the concept at the end. Jargon comes last. I didn't sit down knowing all of this. Most of it came from asking "okay but why would that break" until something clicked. Starting here: how do you build a payment system that handles 10,000 transactions per second without losing a single one? There's

systemdesignbackendprogramming
DEV CommunityRead original
ExternalSoftware Engineering
DEV Community

We built a weather app that stops pretending everyone feels the same temperature

Most weather apps answer the wrong question. They tell you it's 12°C outside. That's accurate. But whether 12°C means you need a coat depends entirely on who you are — and weather apps don't know you. That friction is what Samukunai ('Are You Cold?') is built around. The mechanic is minimal: tap warm or cold after you check the morning forecast. That's the only input you give the app. After 10 of those taps, Samukunai calculates your personal cold threshold using 75th/25th percentile statistics

iosswiftweather
DEV CommunityRead original

Work with 360Softy

Building a SaaS product, AI system, or business platform?

Book a free consultation and we will tell you honestly whether we can help.