DEV Community

Defer
Defer

Posted on • Originally published at defer.run

Introducing Defer: A Zero Infrastructure background jobs Node.js platform

Hi dev.to community 👋

I am Charly, co-founder of Defer, a Zero Infrastructure Node.js background jobs platform.
I've been previously working at Algolia and doing open-source with The Guild.

As all of you, Bryan - my cofounder, and I experienced over the years how modern web apps must be performant while being integrated with many 3rd party APIs.
Such requirements make background jobs an essential part of modern Node.js technical stacks.


Still, while the Node.js developer experience improved in recent years
(building and deploying Serverless applications with Vercel, scaling your database with Supabase, or setup a robust logs stack with Logtail), the experience remained the same around background jobs.

Today, working with background jobs requires developers to do some infrastructure work (either on AWS SQS or at least set up a Redis and workers)
and deal with queueing libraries that come with a dedicated mental model to learn and boilerplate code to write.

Finally, operating background jobs in production, at scale, often require more infrastructure work and building internal dashboards
to better support customers (ex: "Find jobs that failed for user#1234" is a tricky task with existing queueing dashboard).

We believe that background jobs play an important part - as important as running API close to end-users (on edge) - to build swift user experiences.
For this reason, working with background jobs should be as simple as building Serverless apps with Vercel
or scaling a database with Supabase.


Defer fill that gap by bringing a zero infrastructure approach and full-featured API and dashboard with
configurable retries, throttling, concurrency, support for multiple environments, alerting, and more.

We hope Defer will enable all JavaScript and TypeScript developers (front-end and back-end developers) to build powerful applications faster.

Introducing: Defer 1.0 RC

Background functions

Defer comes with a Zero-API approach that makes it easy to create or transform existing functions into background functions (function version of a background job) without the usual distracting boilerplate code (queues, workers) that current solutions bring:

import { defer } from "@defer/client"

const importContacts = () => {
  // ...
}

export default defer(importContacts, {
  retry: 2,
  concurrency: 1
})
Enter fullscreen mode Exit fullscreen mode

The same developer experience applies to Delayed Functions, CRON, and Workflows

Zero-infrastructure, full scale.

Defer's infrastructure then handles background function executions with the configured parallelism and retries, without infrastructure work or DevOps knowledge.

Defer Dashboard

More information on Builds, Executions and Limits.

Defer Dashboard: productivity at your fingertips.

The Defer Dashboard allows you to manage applications with multiple environments and get a sense of their product's health with analytics and filters-rich executions list view:

Defer Dashboard

Finally, you get notified on Slack upon failure and quickly access the execution's logs and business metadata to narrow down the issue and keep users in the loop.

We are happy to open Defer to all users, with a generous free Hobby plan - no credit card required, that fits perfectly for personal projects and solo founders!

We would love to get feedback from the community 👀

Image of Datadog

Master Mobile Monitoring for iOS Apps

Monitor your app’s health with real-time insights into crash-free rates, start times, and more. Optimize performance and prevent user churn by addressing critical issues like app hangs, and ANRs. Learn how to keep your iOS app running smoothly across all devices by downloading this eBook.

Get The eBook

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay