#018

Опубликовано: 29 Июль 2026
на канале: Artistry of Code
71
6

📚 ABOUT THE EPISODE

Welcome to the 18th episode of the main series!

This time Grzegorz Godlewski and Marek Urbanowicz met up to discuss their experience and recommendations on implementing background jobs. Any system which is growing in scale, will need those at some point either to implement performance improvements (by putting some work into the background) or new business requirements (which are supposed to run in background).

Tune in for insights on how this can be done! 🎧

📑 TOPICS COVERED

👉 How simple business analysis can help you in determining candidates for background jobs
👉 What software architecture patterns come in handy while implementing them
👉 What are the best practices for reliable implementations
👉 Some tools/products which you might consider for your implementation

⌚ TIMELINE

00:00 - Intro
01:14 - How to identify candidates for background jobs
08:28 - Employ the transactional outbox pattern
11:53 - Dealing with state in background jobs
15:29 - Scheduling and processing batched operations
18:40 - Avoiding state with Event Carried State Transfer pattern
21:14 - Silver bullets and golden hammers - the tooling
28:08 - Emphasis on idempotency

🔗 LINKS FROM THE EPISODE

M. Fowler: What do you mean by “Event-Driven”?
https://martinfowler.com/articles/201...

Transactional outbox pattern description
https://microservices.io/patterns/dat...

BullMQ
https://docs.bullmq.io/

RabbitMQ Delayed Message Plugin
https://github.com/rabbitmq/rabbitmq-...

Temporal:
https://temporal.io/

🤝 CONTACT US / COLLABORATION

If you:
want to send us your valuable feedback
you would like to appear on the show as a guest
you would like to help out the show to grow
you would like to sponsor the show

Then please contact us via: [email protected]
You can also check out our website: https://artistryofcode.com

😍 FOLLOW US ON SOCIAL MEDIA

Facebook:   / artistryofcode  
Twitter:   / artistryofcode  
LinkedIn:   / artistry-of-code  
Reddit:   / artistryofcode  

Grzegorz Godlewski
LinkedIn:   / ggodlewski  
Twitter:   / ggodlewski  

Marek Urbanowicz
LinkedIn:   / marek-urbanowicz-0ba65254  
Twitter:   / urbanowiczdev  

Artur Wolny
LinkedIn:   / artur-wolny-35150664