This training will guide you through the major architectural styles and patterns for backend systems, including Clean Architecture, Hexagonal Architecture, Layered Architecture, Vertical Slices Architecture, Domain-Driven Design, Modular Monoliths, and Microservices. By understanding every style and its trade-offs, you’ll learn how to combine them in your application while avoiding common pitfalls. Guided by real-world Java examples, you’ll learn how to:
By the end of this course, you’ll be able to mix and apply essential architectural styles – Clean-, Hexagonal-, Layered-, Onion-, Screaming-, and Vertical Slices- Architectures, Domain-Driven Design, Microservices, Monolith, and Modular Monoliths. You’ll develop a firm understanding of the underlying architectural principles and learn how to implement them in your Java applications incrementally, as necessary, without big rewrites.
The course is for Java developers, architects, and technical leads willing to learn and discuss the main architectural styles, trade-offs, and key design decisions.
You should have at least a few years of hands-on experience in software development using Java programming language.
The course is a mix of slides, demos, group discussions, and hands-on exercises.
We’ll be using Java and Spring, but the architectural styles and patterns discussed in this course will be technology-agnostic and useful in Jakarta EE, Micronaut, Quarkus, and even non-Java ecosystems.
You will need a machine with JDK 17+ installed, a decent IDE, and access to GitHub and Maven Central. To make the best out of this training, you’ll receive a number of articles that we recommend reading. The reading list will be shared seven days before the course.
Yes, you’ll receive a digitally verifiable certificate of accomplishment.
The course requires live presence and won't be recorded. Please plan your time accordingly.
The course is taught in English.
Central European / Berlin time or US Pacific Time / San Francisco time.
For 2-day course in the EU timezone, the times are 9:00am – 5:00pm. The course in the US timezone is split in 4x half-days, 4-hours each, and the times are 11:00am - 3:00pm.
You will receive a list of books, blogs, and videos for self-development. After the course, you'll stay connected with other alumni via group chat. You'll make new connections who will support you throughout this course and beyond. Victor will remain available remotely for 1 week after the session for any questions, clarifications, and advice.
To make it easy to ask for company funding, download this template.
Send an email to [email protected]
Inspiring, high-quality, and practical workshop. Highly recommended.
Victor is the best Java trainer I have had the chance to work with. He has energy, charisma, and deep understanding of the topic.
One of the best workshops I have ever been to.
It was a fantastic workshop and my team learned a lot. Victor's energetic and entertaining style combined with his skills to transfer tons of knowledge and keep everybody engaged from the start until the very last minute, makes him one of the best trainers I have seen in action. If you ever have the opportunity to go take a training/workshop with Victor, don’t hesitate!
One of the best trainers I ever had the pleasure of seeing in action. Victor has a lot of energy, and I like his style of showing *the practical side* of things. I look forward to more of his courses!
Victor was able to address all our architectural pain points and propose elegant and effective solutions. I was impressed by Victor's ability to keep students of all seniority levels engaged and focused. He makes sharing information look like a play. I highly recommend this training.
Victor is hands-down one of the most gifted trainers and technical speakers. Fantastic training.
I can safely say that this was the best technical training we had with my team, both in terms of content, energy, and engagement. Great job!
Victor is motivating and skilled trainer and also a Java Champion. For the tech training, Victor is the best choice.
I am amazed by the training content and Victor's teaching style. He is one of the best trainers I have met so far. His passion for clean code is something that you rarely see. Imagine a younger version of Uncle Bob teaching you the art of writing outstanding code - this is Victor performing during his workshops.
An absolute blast of a training! Victor is a knowledgeable, inspirational coach. He has a unique combination of technical knowledge, mentoring, acting skills and panache, that will leave you wanting for more. Big fan.
Fantastic training. I was particularly impressed by Victor's ability to keep participants engaged while discussing in-depth technical topics. 10/10.
Great training, great discussions, tons of useful content. Very dynamic and inspirational. Probably the best training I ever attended. Thank you, Victor!
Excellent training, with lots of valuable examples. What I loved most was the connections made between concepts from real life and programming patterns – it's a lot easier to understand and remember complex things this way.
Mind-blowing training that will forever change your perception and understanding of architecture and software design.
I have participated in several workshops that Victor has run. I have always enjoyed the technical professionalism, the accuracy, the style of the presentation, and the possibility to have a high-level discussion during the session.
Every time exceeding our expectations. He is extraordinary flexible in his approach, very much involved, and with his enthusiasm, high level of expertise and "can do" attitude is able to move forward even the most resistant audience. He is role model for all junior developers, and a partner for senior developers, who are looking forward to have a second opinion in finding specific technical solutions for complex environments.
The course has everything I look for in training: valuable information, examples supported by real-life stories from Victor's broad experience, and interactive exercises (built from simple to more complicated). Victor has a talent for making complex concepts/patterns/frameworks look simple, giving you a solid foundation and confidence to delve deeper into the subjects.
Been at two trainings so far and the guy is insane. The kind of person who shares everything he learns and finds passion in bringing up the people around him, has great energy and humor to help drive home whatever he's teaching. Highly recommended.
An excellent course: complete, dynamic, inspiring, and answers all your questions. For me, it is the best training I have ever had (courses at big companies like Oracle included). Thank you so much for all your help!
The most enthusiastic trainer I know and he has the gift of passing on that enthusiasm to all of his students. I highly recommend Victor.
I thoroughly enjoyed the course. It's full of practical, innovative, out-of-the-box tips to make your code and architecture cleaner.
Private training inquiries: [email protected]