Getting ReactiveRxJs logowith RxJs Workshop

RxJs is the most complex element of Angular development

Elevate your team’s RxJs skills to deliver maintainable features confidently and on time

Scroll down for more content icon

RxJs is a truly powerful library

RxJs is the key to handling async logic in Angular applications. It unlocks robust, streamlined features that are far superior to alternative, superseded callbacks and promises.

RxJs use cases

  • Superior user experience for the end users
  • Enables implementation of complex async flows
  • Prevents requests race condition (with a single operator)
  • Code-light, more concise declarative functional approach
  • Less verbose, more standardised results and less code to maintain

Common RxJs issues & mistakes

RxJs introduces new, reactive paradigms when implementing Angular frontend applications. Proper use by enterprise teams results in better robustness, stability and development velocity.

However, when used wrongly, RxJs causes nothing but problematic implementations. These lead to over-engineered, complicated codebases, late delivery, bugs and a distinct inability to maintain or evolve projects.

Nested subscriptions

Nested subscriptions

The #1 pitfall for newcomers to reactive programming, resulting in codebases that are a nightmare to maintain. With our workshop, you’ll learn how to never use nested subscriptions again.

Recreating streams during runtime

Recreating streams during runtime

Another common pitfall that requires extensive adjustment for developers used to imperative-style programming. This does nothing but create confusing, impossible-to-maintain codebases, hard to debug bugs and delays in delivery.

Incorrect stream sharing

Incorrect stream sharing

The lack of (or incorrect) implementation of stream sharing leads to creating endless unnecessary backend requests, which flood servers and degrade performance for all users.

Insufficient stream cleanup

Insufficient stream cleanup

Cleaning up unused streams is of paramount importance. Otherwise, the resultant memory leaks will grind application performance to a halt and leave users frustrated and lost.

Incorrect error handling

Incorrect error handling

Handling errors wrongly results in inconsistent behaviours and broken flows. It is all-too-easy to miss incorrect error handling during testing phases but just as easy to prevent with the correct know-how. And doing so will save huge amounts of time down the line…

Incorrect operator usage

Incorrect operator usage

The old saying about the right tool for the job applies equally with regard to RxJs operators. Engaging the wrong operator inevitably leads to suboptimal outcomes, buggy behaviours and at worst, an inconsistent state in backend!

The list of issues goes on…

The list of issues goes on…

We’d be here all day if we listed every issue that arises from incorrect RxJs stream implementation...

Instead of boring you to death, book a spot on our Getting Reactive with RxJs Workshop and equip your team with all the skills needed to become an RxJs powerhouse within your organization!

Getting Reactive with RxJs Workshop

Getting Reactive with RxJs Workshop

Get in touch

Empower your team to implement RxJs
based logic correctly and efficiently!

It’s never too late to acquire strong RxJs abilities instead of fixing what was broken, it’s best to prevent it from happening in the first place. The Getting Reactive with RxJs Workshop is the actionable, affordable and generally awesome way to do just that.

RxJs presentation

Correct approaches & techniques

Help your teammates implement RxJs-based logic the right way. Prevent every possible shortcoming by learning to recognise when they happen and how to reverse or avoid them altogether.

RxJs reactive programming

Common patterns

Familiarise your team with the most common RxJs patterns for solving requirements when implementing Angular enterprise applications from retrieving and using URL state to employing services as store pattern.

RxJs best practices

Best Practices

Some approaches are always better than the available alternatives. Make your team acquainted with all the best practices in an easy to remember mantra like format to (be able to fall back to) accompany them during the day to day work.

RxJs logo

Resist the temptation
to streamify every piece of your logic
using RxJs


We have shared our industry-leading RxJs insights, patterns and best practices with countless developers both one-on-one and entire teams.

Nothing makes us happier than enriching teams with the know-how to deliver successful projects and amaze users (as well as themselves)!

So, what do our participants think?


I was able to benefit already the next day by being able to resolve a bunch of issues with side effects in my project!

The Getting Reactive with RxJs Workshop is very well-thought-out and structured two-day experience! The course brought a lot of value to all participants including the total RxJs newbies in our team.
The content covers all the RxJs basics like Observables, Observers or operators all the way to practical approaches and best practices for subscription management and error handling. With plenty of real world examples, exercises and live codings it was a pure joy to learn and explore the topic.
Georg Ludewig

Georg Ludewig

Software Engineer, Bundesamt für Informatik und Telekommunikation

Bern, Switzerland

Tomas is a very knowledgeable and enthusiastic trainer who is eager to share the knowledge and does so by making everyone comfortable asking questions! I left this workshop with new insights on how to make code clean for complex use cases and I am looking forward to apply them on a daily basis!
Alvaro Costa

Alvaro Costa

Fullstack Developer, API SA

Lausanne, Switzerland

Tomas did a great job presenting this rather complicated topic. The best part was the great usage of StackBlitz examples and live coding to further demonstrate discussed concepts, it helped a lot!
Anonymous Feedback

Anonymous Feedback

Software Engineer, BIT Bern

Bern, Switzerland

The "Best Practices" section was very useful for me. The teacher did a great job and the workshop was very interesting overall. Looking forward to the next one!
Anonymous Feedback

Anonymous Feedback

Software Engineer, BIT

Bern, Switzerland

Very well organized content! It explained all the concepts and answered all my questions, would recommend even for total beginners! Very cool workshop overall, thank you!
Anonymous Feedback

Anonymous Feedback

Software Engineer, BIT

Bern, Switzerland

Very good course overall, the slides and exercises are great, and the best practice part of the workshop is very interesting, thank you!
Anonymous Feedback

Anonymous Feedback

Software Engineer, La Mobilière

Nyon, Switzerland

Thank you for your enthusiasm, pragmatic exercises and cases in live-coding. I really appreciated this training and I'm looking forward to be part of a next one!
Anonymous Feedback

Anonymous Feedback

Software Engineer, La Mobilière

Nyon, Switzerland

Overall satisfaction


rated by 42 participants

Pricing & options

Book a 2-day workshop for your team and level up your RxJs skills

  • Personalized feedback

    From our experience, up to 20 participants per workshop provides an optimal student/trainer ratio. This enables us to provide sufficient attention to all participants to address every individual question and support them during the hands-on exercises.
  • In person workshops

    We strongly recommend in-person workshops, which provide unparalleled interaction and maximise the value of your time with us. In-person workshops generate deeper questions, clearer answers and the best setting for sharing extra feedback and know-how.
  • Special options

    We also provide the opportunity to focus on only half the workshop content (e.g. basics for total beginners/advanced sections only for experienced participants).
RxJs logo

Getting Reactive with RxJs Workshop

Background waves
Price background
$ 9,749 + applicable VAT
  • All-inclusive price
  • Up to 20 participants
  • In-person / hybrid / fully remote
  • 2 full days (or 4 half days)
Get in touch now
  • Rich content

    There will always be more content and resources available, so we do not expect you to complete all the work provided during the workshop itself. You will keep all content for future reference.
  • Tailored for the audience

    We will always focus on the topics that bring the most value to the largest number of participants. To do this, we tailor each workshop to suit the unique needs of your team and guide you through the elements of RxJs most applicable to your projects.

    More advanced groups may breeze through the official content, then focus on specific use cases in a live coding session. Other groups may use the workshop to build a strong RxJs foundation then continue advancing their skills at their own pace.

Workshop content

Here’s a full outline of the workshop that features all concepts, topics and examples covered.

Please note, our workshop content will continually evolve as we factor in participant feedback to deliver the most valuable experience possible.

waving_hand Introduction

Background waves
  • Origins & Evolution
  • Version history and major updates
  • What's new and most recent features overview
  • Roadmap for the future
  • Amazing docs & operator decision tree
  • StackBlitz - the new best friend in your RxJs learning journey

account_balance RxJs concepts

Background waves
  • Async logic and its ubiquitousness in frontend
  • From Callbacks and Promises to Observable Streams
  • Observer vs Observable
  • The best way to understand RxJs in one image
  • Handling multiple function calls together

directions_run RxJs basics

Background waves
  • Observables (streams)
  • Observers (subscriptions)
  • Value, error and completion events
  • Subscription & unsubscription
  • Operators (creation & pipeable)

directions_bike RxJs advanced concepts

Background waves
  • Higher-order Observables and flattening operators
  • Marble diagrams (& their ASCII representation)
  • Hot and Cold (lazy) Observables
  • Subjects & subject types
  • Stream sharing (multicasting, ref counting)
  • Schedulers

tips_and_updates Practical tips & best practices

Background waves
  • How to resist the temptation to streamify your synchronous code
  • Observable-like entities and their implicit casting to Observable
  • Internalizing the difference between stream definition vs stream execution
  • The declarative nature of Observable streams and its consequences
  • How to stop re-creating Observables as a result of user interaction during runtime
  • How to put an end to writing code with nested subscriptions
  • How to not crash your stream permanently with incorrect error handling
  • How to write future-proof RxJs code based on upcoming deprecations
  • Why you should never treat your stream as synchronous
  • Why you should never mutate Observable stream values

category Examples & use cases

Background waves
  • Streamifying browser APIs
  • When mapping is the only way to filter your array stream values (how to transform array (steam value) inside RxJs Observable stream (stream of events))
  • Flattening operators
  • Loading of data from APIs and orchestration
  • Caching and sharing of stream values
  • The best way to unsubscribe
  • Exception and error handling
  • And much more...

bug_report RxJs Testing

Background waves
  • Async logic testing
  • Use of native TestScheduler
  • Use of provided helpers (hot, cold, expectObservable, ...)
  • Define streams with ASCII marble diagrams
  • Testing mocked services (after scheduler has completed)

attachment Extra resources

Background waves
  • Full workshop in PDF format for future reference and knowledge preservation
  • Step by step highlighted code examples that are easy to follow
  • Lots of working examples (StackBlitz)
  • Extensive range of exercises and solutions (StackBlitz)
  • Workshop participation certificate
  • Review of individual questions and exercises during hands-on phase
Workshop slides example - callbacks and promisesWorkshop slides example - understand RxJs in a single pictureWorkshop slides example - custom observable factoryWorkshop slides example - observerWorkshop slides example - stream vs array methodsWorkshop slides example - flattening operatorsWorkshop slides example - marble syntax

Meet your instructors

Tomas and Kevin are two of Switzerland’s leading Google Developer Experts. With less than 150 such experts worldwide, partnering with us unlocks a wealth of knowledge that we’re eager to share with your team.

Benefit from our extensive knowledge in a concentrated, proven format and level up your team’s new RxJs capabilities!

Kevin Kreuzer - GDE for Angular & Web Technologies

Kevin Kreuzer

GDE for Angular & Web Technologies

A trainer, consultant, and senior front-end engineer with a focus on the modern web, as well as a Google Developer Expert for Angular & Web technologies. He is deeply experienced in implementing, maintaining and improving applications and core libraries on behalf of big enterprises worldwide.

Kevin is forever expanding and sharing his knowledge. He maintains and contributes to multiple open-source projects and teaches modern web technologies on stage, in workshops, podcasts, videos and articles. He is a writer for various tech publications and was 2019’s most active Angular In-Depth publication writer.

Tomas Trajan - GDE for Angular & Web Technologies

Tomas Trajan

GDE for Angular & Web Technologies

A Google Developer Expert for Angular & Web Technologies working as a consultant and Angular trainer. Currently empowering teams in enterprise organizations worldwide by implementing core functionality and architecture, introducing best practices, sharing know-how and optimizing workflows.

Tomas strives continually to provide maximum value for customers and the wider developer community alike. His work is underlined by a vast track record of publishing popular industry articles, leading talks at international conferences and meetups, and contributing to open-source projects.

Background surfaceExperts teaching Angular

Unmatched Expertise and Access

Whether you’re a tight-knit startup or large enterprise with countless teams, devs and projects, our industry mastery can help you do things right, reduce learning curves and maximize productivity.

Our blogs are read by millions, our open source used by tens of thousands developers, and we change the business trajectory of countless people at local meetups and international conferences.

We possess direct access to Google’s core Angular team plus the extended Google Developer Expert network, providing us with a unique position to make light work of the most challenging issues with ease and confidence!

Blog posts

Stats number background
over 6 million views

Millions of people benefited and learned from our frequently updated blog which shares beginner-friendly and in-depth content within the Angular, NgRx and front-end spheres.

Angular Experts' blog Read Tomas's blog Read Kevin's blog


Stats number background
over 500 people educated

Countless developers — from startups and enterprises alike — have supercharged their Angular and front-end skills thanks to our engaging, immersive and highly popular workshops

Explore workshop offer

Open source

Stats number background
over 2 million downloads

Many of teams worldwide have solved vital dev issues and elevated their provisions with the use of our acclaimed open-source projects some of which feature over 2500 GitHub stars

Kevin's npm packages Tomas's npm packages


Stats number background
over 30 events attended

Communities around the world hosted our talks at their events ranging from local meetups to international conferences where we shared our know how for successful Angular development with established developers and future talent alike

Explore Tomas's talks Visit Kevin's Youtube channel

Get in touch

Empower your team with real-world RxJs know-how gained from our lifetime of consulting, leading workshops and tutoring enterprises and startups alike.

Our unique pathway has taught us much and we’re keen to share it with You! Our workshop attendees enjoy a structured, high-quality content that distills all our knowledge into an unparalleled, immersive 2-day workshop experience.

To learn more about our workshops, reach out to us directly using the below form.