<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>#nodejs · Faiz Ahmed Farooqui</title><description>Posts tagged nodejs.</description><link>https://faizahmed.in/</link><item><title>Loading Secrets at Runtime Without Leaking Them: config(), the Keystore, and run</title><link>https://faizahmed.in/secret-keystore-runtime-config-loader-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/secret-keystore-runtime-config-loader-nodejs/</guid><pubDate>Fri, 12 Jun 2026 13:17:21 GMT</pubDate><category>aws</category><category>nodejs</category><category>security</category><category>devops</category><category>backend</category></item><item><title>Encrypt Your .env with One Command: The secret-keystore CLI</title><link>https://faizahmed.in/secret-keystore-cli-encrypt-env-aws-kms/</link><guid isPermaLink="true">https://faizahmed.in/secret-keystore-cli-encrypt-env-aws-kms/</guid><pubDate>Fri, 12 Jun 2026 12:59:34 GMT</pubDate><category>aws</category><category>security</category><category>nodejs</category><category>backend</category><category>devops</category></item><item><title>Your .env Is a Loaded Gun: A Saner Threat Model for Node.js Secrets</title><link>https://faizahmed.in/nodejs-secrets-threat-model-aws-kms/</link><guid isPermaLink="true">https://faizahmed.in/nodejs-secrets-threat-model-aws-kms/</guid><pubDate>Fri, 12 Jun 2026 11:31:09 GMT</pubDate><category>security</category><category>aws</category><category>nodejs</category><category>backend</category><category>devops</category></item><item><title>Encrypted .env for Node.js with AWS KMS: The Complete Guide</title><link>https://faizahmed.in/encrypted-env-aws-kms-nodejs-complete-guide/</link><guid isPermaLink="true">https://faizahmed.in/encrypted-env-aws-kms-nodejs-complete-guide/</guid><pubDate>Fri, 12 Jun 2026 11:24:08 GMT</pubDate><category>security</category><category>aws</category><category>nodejs</category><category>devops</category><category>backend</category></item><item><title>Retries Are Not a Fix. They Are a Liability.</title><link>https://faizahmed.in/why-retries-are-not-a-fix/</link><guid isPermaLink="true">https://faizahmed.in/why-retries-are-not-a-fix/</guid><pubDate>Sat, 18 Apr 2026 05:00:00 GMT</pubDate><category>distributed-systems</category><category>system-design</category><category>background-jobs</category><category>nodejs</category><category>nestjs</category><category>queue</category></item><item><title>Your Background Jobs Are Not Failing. They Are Lying.</title><link>https://faizahmed.in/why-your-background-jobs-are-lying/</link><guid isPermaLink="true">https://faizahmed.in/why-your-background-jobs-are-lying/</guid><pubDate>Thu, 16 Apr 2026 11:17:39 GMT</pubDate><category>background-jobs</category><category>distributed-systems</category><category>system-design</category><category>backend-engineering</category><category>queue-systems</category><category>nestjs</category><category>nodejs</category><category>idempotency</category><category>reliability-engineering</category><category>async-processing</category></item><item><title>Stop Putting Secrets in process.env: Encrypt Env Vars with AWS KMS</title><link>https://faizahmed.in/secret-keystore/</link><guid isPermaLink="true">https://faizahmed.in/secret-keystore/</guid><pubDate>Sat, 21 Feb 2026 19:30:57 GMT</pubDate><category>security</category><category>aws</category><category>attestation</category><category>nodejs</category><category>nextjs</category><category>nestjs</category><category>devops</category><category>cloud</category><category>backend</category></item><item><title>Scaling the Boring Stuff: Sending 10 Million Notifications with a Simple Node.js Job Worker</title><link>https://faizahmed.in/scaling-the-boring-stuff-sending-10-million-notifications-with-a-simple-nodejs-job-worker/</link><guid isPermaLink="true">https://faizahmed.in/scaling-the-boring-stuff-sending-10-million-notifications-with-a-simple-nodejs-job-worker/</guid><pubDate>Wed, 04 Feb 2026 13:30:28 GMT</pubDate><category>nodejs</category><category>system-design</category><category>scalability</category><category>backend-engineering</category><category>distributed-systems</category></item><item><title>Your Node.js AWS SDK v3 App Will Crash in Production Without This maxSockets Fix</title><link>https://faizahmed.in/your-nodejs-aws-sdk-v3-app-will-crash-in-production-without-this-maxsockets-fix/</link><guid isPermaLink="true">https://faizahmed.in/your-nodejs-aws-sdk-v3-app-will-crash-in-production-without-this-maxsockets-fix/</guid><pubDate>Fri, 07 Nov 2025 07:03:11 GMT</pubDate><category>maxsockets</category><category>aws</category><category>nodejs</category><category>aws-sdk</category><category>production</category></item><item><title>Secrets Sprawl in Node.js Projects: Detection, Prevention &amp; Secure Deployment (2025)</title><link>https://faizahmed.in/secrets-sprawl-in-nodejs-projects-detection-prevention-and-secure-deployment-2025/</link><guid isPermaLink="true">https://faizahmed.in/secrets-sprawl-in-nodejs-projects-detection-prevention-and-secure-deployment-2025/</guid><pubDate>Tue, 05 Aug 2025 08:07:20 GMT</pubDate><category>nodejs</category><category>secrets-management</category><category>gitguardian</category><category>devsecops</category><category>ci-cd</category><category>backend-engineering</category><category>cloud-security</category><category>software-engineering</category><category>securitybestpractices</category></item><item><title>Zero-Downtime Deployments in Node.js: Real Strategies, Real Examples</title><link>https://faizahmed.in/zero-downtime-deployments-in-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/zero-downtime-deployments-in-nodejs/</guid><pubDate>Tue, 29 Jul 2025 07:53:48 GMT</pubDate><category>nodejs</category><category>zero-downtime</category><category>devops</category><category>sre</category><category>ci-cd</category><category>canary-release</category><category>bluegreen-deployment</category><category>microservices</category><category>deployment-strategies</category><category>software-engineering</category></item><item><title>Master Docker in Real Projects: Compose + CI/CD + Best Practices</title><link>https://faizahmed.in/master-docker-compose-cicd/</link><guid isPermaLink="true">https://faizahmed.in/master-docker-compose-cicd/</guid><pubDate>Wed, 23 Jul 2025 08:52:37 GMT</pubDate><category>postgresql</category><category>software-development</category><category>docker</category><category>nodejs</category><category>webdev</category><category>devops</category><category>containers</category><category>cicd</category><category>phpmyadmin</category><category>docker-compose</category><category>ci-cd</category><category>github-actions-1</category><category>backend-engineering</category></item><item><title>API Observability: Logs, Traces, Metrics with OpenTelemetry</title><link>https://faizahmed.in/api-observability-logs-traces-metrics-with-opentelemetry/</link><guid isPermaLink="true">https://faizahmed.in/api-observability-logs-traces-metrics-with-opentelemetry/</guid><pubDate>Tue, 15 Jul 2025 11:30:42 GMT</pubDate><category>nodejs</category><category>opentelemetry</category><category>observability</category><category>apis</category><category>backend-development</category><category>microservices</category><category>devops</category><category>jaeger</category><category>prometheus</category><category>grafana</category><category>software-engineering</category><category>distributed-systems</category><category>monitoring</category><category>logging</category><category>tracing</category></item><item><title>How to Architect Multi-Tenant SaaS Backends in 2025 (PostgreSQL + Node.js)</title><link>https://faizahmed.in/architect-multi-tenant-saas-backends-in-2025-postgresql-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/architect-multi-tenant-saas-backends-in-2025-postgresql-nodejs/</guid><pubDate>Fri, 11 Jul 2025 11:30:13 GMT</pubDate><category>nodejs</category><category>postgresql</category><category>saas</category><category>multitenancy</category><category>software-architecture</category><category>tech-leadership</category><category>devtools</category><category>javascript</category><category>express</category></item><item><title>Packaging Node.js Libraries the Right Way: ESM, CommonJS, and Bundlers in 2025</title><link>https://faizahmed.in/packaging-nodejs-libraries-in-2025/</link><guid isPermaLink="true">https://faizahmed.in/packaging-nodejs-libraries-in-2025/</guid><pubDate>Wed, 09 Jul 2025 11:30:22 GMT</pubDate><category>nodejs</category><category>npm</category><category>javascript</category><category>esm</category><category>commonjs</category><category>typescript</category><category>rollup</category><category>tsup</category><category>opensource</category><category>devtools</category><category>backend-development</category><category>webdev</category><category>npm-packages</category></item><item><title>JWT vs PASETO vs Session-Based Auth</title><link>https://faizahmed.in/jwt-vs-paseto-vs-session-based-auth/</link><guid isPermaLink="true">https://faizahmed.in/jwt-vs-paseto-vs-session-based-auth/</guid><pubDate>Mon, 23 Jun 2025 11:30:29 GMT</pubDate><category>auth-architecture</category><category>websecurity</category><category>nodejs</category><category>authentication</category><category>paseto</category><category>jwt</category><category>backend</category><category>devtips</category><category>oauth</category><category>access-control</category></item><item><title>How to Prevent Replay Attacks with JWTs: JWS vs JWE and Fingerprint Validation in Node.js</title><link>https://faizahmed.in/how-to-prevent-replay-attacks-with-jwts-jws-vs-jwe-and-fingerprint-validation-in-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/how-to-prevent-replay-attacks-with-jwts-jws-vs-jwe-and-fingerprint-validation-in-nodejs/</guid><pubDate>Fri, 06 Jun 2025 13:27:47 GMT</pubDate><category>nodejs</category><category>jwt</category><category>security</category><category>authentication</category><category>backend</category><category>backendengineering</category><category>websecurity</category><category>replay-attack</category><category>devtips</category><category>express</category></item><item><title>Memory Leaks and Garbage Collection in Node.js: What Developers Get Wrong (And How to Fix It)</title><link>https://faizahmed.in/memory-leaks-and-garbage-collection-in-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/memory-leaks-and-garbage-collection-in-nodejs/</guid><pubDate>Wed, 21 May 2025 13:27:32 GMT</pubDate><category>nodejs</category><category>javascript</category><category>memory-management</category><category>garbagecollection</category><category>web-development</category><category>backend-engineering</category><category>performance-optimization</category><category>debugging</category><category>v8-engine</category><category>devtip</category></item><item><title>Stop Using JSON.parse on Huge Payloads: Streaming JSON in Node.js</title><link>https://faizahmed.in/streaming-huge-json-in-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/streaming-huge-json-in-nodejs/</guid><pubDate>Wed, 07 May 2025 10:30:41 GMT</pubDate><category>nodejs</category><category>javascript</category><category>web-performance</category><category>backend-development</category><category>streamingdata</category><category>memory-management</category><category>json</category><category>scalablearchitecture</category><category>software-engineering</category><category>devtips</category></item><item><title>Offset vs Cursor vs Keyset Pagination: Best Practices for Scalable APIs</title><link>https://faizahmed.in/offset-vs-cursor-vs-keyset-pagination/</link><guid isPermaLink="true">https://faizahmed.in/offset-vs-cursor-vs-keyset-pagination/</guid><pubDate>Thu, 01 May 2025 07:47:13 GMT</pubDate><category>backend-engineering</category><category>api-design</category><category>pagination</category><category>nodejs</category><category>webdev</category><category>scalability</category><category>software-architecture</category></item><item><title>Tame the Stream: Handling Backpressure in Node.js Like a Pro</title><link>https://faizahmed.in/handling-backpressure-in-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/handling-backpressure-in-nodejs/</guid><pubDate>Mon, 28 Apr 2025 06:59:57 GMT</pubDate><category>backpressure-in-nodejs</category><category>streams-backpressure</category><category>backpressure</category><category>nodejs</category><category>streams-in-nodejs</category><category>streams</category></item><item><title>Killing Your App with .map()? Here’s the Modern Fix</title><link>https://faizahmed.in/killing-your-app-with-map-heres-the-modern-fix/</link><guid isPermaLink="true">https://faizahmed.in/killing-your-app-with-map-heres-the-modern-fix/</guid><pubDate>Wed, 23 Apr 2025 11:12:37 GMT</pubDate><category>arraymap</category><category>gc-pressure</category><category>javascript</category><category>nodejs</category><category>array</category><category>garbagecollection</category></item><item><title>Understanding Express Typescript</title><link>https://faizahmed.in/express-typescript/</link><guid isPermaLink="true">https://faizahmed.in/express-typescript/</guid><pubDate>Sun, 12 Jan 2020 18:30:00 GMT</pubDate><category>nodejs</category><category>express</category><category>typescript</category><category>mongodb</category><category>boilerplate</category></item><item><title>NodeJS without NPM</title><link>https://faizahmed.in/nodejs-without-npm/</link><guid isPermaLink="true">https://faizahmed.in/nodejs-without-npm/</guid><pubDate>Sun, 19 Aug 2018 18:30:00 GMT</pubDate><category>nodejs</category><category>npm</category><category>web-development</category><category>apis</category><category>rest-api</category></item><item><title>What&apos;s NodeJS?</title><link>https://faizahmed.in/whats-nodejs/</link><guid isPermaLink="true">https://faizahmed.in/whats-nodejs/</guid><pubDate>Tue, 19 Jun 2018 18:30:00 GMT</pubDate><category>nodejs</category><category>introduction</category></item></channel></rss>