fp Spring Reactive Programming training | LearnSpring

The current browser is not supported by our site.

Please use or download one of the following browsers:

Our technical services

We aggregate 20+ years of experience in architecting, developing, improving and teaching enterprise projects development, especially on the Spring ecosystem.
Our services are addressed to companies and individuals who want to improve their technical proficiency, by learning modern software development technologies and best practices. Our main focus is on projects that evolve their software architecture to the microservices paradigm and/or to cloud-based deployments.

training-icon

Why Reactive Programming?

As the world produces more and more data, it needs more efficient and resilient modes to process it. The Reactive Programming model improves the programming efficiency, by using an end-to-end asynchronous and non-blocking publish-subscribe model.

Training description

The training presents the Reactive Programming architectural programming model and it's usage through the Spring WebFlux component. The presented topics are accompanied by hands-on examples, configuration options and architectural discussions.

Training objectives

  • Learn an overview of Reactive Programming and Reactive Systems, along with their benefits and challenges.
  • Learn an overview of the Spring WebFlux component from the Spring Framework 5.
  • Learn the usage of Reactive Programming on the different architectural layers of an application.

Training curricula

The main presented topics are:
  • An overview of the Reactive Programming architectural model, its reasoning, benefits and challenges
  • An introduction into the core Reactive Programming notions
  • An overview of Reactive Systems
  • Reactive SQL database access
  • Reactive NoSQL database access
  • Reactive web and service-to-service access
  • Testing reactive code
If you want to see the entire curricula, you can request the training info document using the 'Request training curricula' button.

Online courses - webinars, downloadable and watchable videos

We will soon be offering the possibility for you to attend our courses in an online mode, as live webinars and downloadable/watchable videos. As we’re constantly working towards better understanding your needs and the way our services can fit them, we kindly ask you to tell us your preferences by filling our survey. We appreciate your feedback and any other additional information you can provide.

Training duration

The training duration is 6-12 hours, depending on the presented components and architectural discussions and workshops. The training sessions will consist of theoretical and practical (hands-on) components. Depending on the presented topic, the ratio between the theoretical and the practical components varies between ~70/30% and ~50/50%.
Notes:
  • The specified duration is our minimum recommended duration, which allows us to work on a few examples together with the participants. For more thorough practice, greater hands-on experience and added use-case analyses, we recommend that our customers allocate at least 20-30% more time for the training.
  • In order to maximize the percentage of information retained after a training session, we advise our customers to schedule training sessions of 4 or (at most) 6 hours per day. Based on our experience, training sessions of 7-8 hours per day are less efficient in regard to the retained information.
Disclaimer​: If the discussions and/or the hands-on sessions will extend longer than planned, some sessions may be postponed until the following day. Our intent is to cover the topics and answer the questions thoroughly, not in a rushed manner.

Theoretical, practical and Q&A components

Based on our experience, the preference for more theoretical discussions, Q&A sessions and/or more practical dialogues is directly influenced by the attendees' experience; more exactly:

  • More experienced developers usually prefer to do less hands-on examples and to dedicate the training session to seeing some demos/examples presented by the trainer, followed by a series of discussions on use-cases and best practices
  • Less experienced developers usually prefer to do more hands-on examples, as it helps them to better understand the presented topics.

Given these preferences, we highly recommend our clients to consider the following aspects:

  • The experience of the training attendees should be measured to ensure that all the attendees will benefit from the presented topics in an equal manner.
  • The training sessions structure should be tailored based on the attendees experience and practice preference - during the training sessions or after.
  • The training sessions duration and structure is less influenced by the number of participants and more influenced by their experience and theory/practice preference.

As a general recommendation, the sessions attended by less experienced developers should be at least 20-30% longer, to allow more hands-on practice and Q&A sessions.

Training recommendations

For an increased retention and comprehension rate, we have the following recommendations for the training participants:

  • Participants should attend the training sessions with a laptop, so they can run the examples that the trainer presents and then implement the small assigned tasks.
  • If the participants do not wish to run the exercises, we recommend they take notes on the newly-learned topics to make sure they will retain the information.
  • We highly encourage the participants to provide feedback for the trainers, as this will further help us to improve our training sessions.

Training followup

Our training sessions are designed to provide the knowledge needed in a given topic. In order to upgrade the acquired knowledge into practical skills, we recommend participants continue the training with a series of mentoring and coaching sessions. You can read more details about these sessions on our "Mentoring" page.

Who are the trainers?

We are a small team of expert software developers and architects that has a strong background in software development and architecture, team/project management and training delivery. You can find out more about our team on the "About" page.

How can we get started?

You can send us an email at hello@learnspring.eu or request more details on our "Contact" page, and we will contact you as soon as possible. Based on your request, we can offer you a free assessment, additional training session topics, a possible timeframe and any other information you may need.