[et_pb_section fb_built=”1″ disabled_on=”off|off|off” admin_label=”Header” _builder_version=”3.22″ parallax=”on” max_width_tablet=”” max_width_phone=”” max_width_last_edited=”on|desktop” custom_padding=”0||0|0px|false|false” top_divider_height=”0px” global_colors_info=”{}”][et_pb_row column_structure=”1_2,1_2″ _builder_version=”3.25″ custom_padding=”27px|0px|0|0px|false|false” global_colors_info=”{}”][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”3.27.4″ text_font=”||||||||” text_font_size=”17px” text_line_height=”1.9em” header_font=”|300|||||||” header_font_size=”60px” header_line_height=”1.4em” header_2_font=”Roboto|300|||||||” header_2_font_size=”50px” header_2_line_height=”1.2em” header_4_font=”|600|||||||” header_4_text_color=”#666666″ header_4_line_height=”2em” max_width=”136%” custom_margin=”|||” header_font_size_tablet=”40px” header_font_size_phone=”32px” header_font_size_last_edited=”on|phone” locked=”off” global_colors_info=”{}”]

Full-day workshop:

Clean, Pragmatic Architecture

[/et_pb_text][/et_pb_column][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_image src=”https://romania.voxxeddays.com/wp-content/uploads/2019/04/FotografulTAU-025.jpg” align_tablet=”center” align_phone=”” align_last_edited=”on|desktop” _builder_version=”3.23″ max_width=”80%” border_radii=”on|0%|0%|0%|0%” global_colors_info=”{}”][/et_pb_image][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”41px|0px|22px|0px|false|false” global_colors_info=”{}”][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ custom_padding=”||0px|||” global_colors_info=”{}”]

The purpose of this course is to help developers write elegant, clean code.

Meaning expressive, simple code that is also flexible and testable. The course is a mix of theory, discussions and hands-on exercises designed to teach developers practical techniques they can immediately apply to real-world projects.

[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row column_structure=”1_3,1_3,1_3″ _builder_version=”3.25″ custom_padding=”0|0px|0|0px|false|false” global_colors_info=”{}”][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.14.7″ text_font=”Sansation|300|||||||” link_font=”||||||||” ul_font=”||||||||” ol_font=”||||||||” quote_font=”||||||||” header_font=”||||||||” background_color=”#FFFFFF” global_colors_info=”{}”]

Why this workshop?

This workshop is a pragmatic review of the most common architectural decisions of a backend system, including Layered Architecture, agnostic Domain, decoupled subdomains, data mappers, and validation. For deep understanding, most concepts are demonstrated in Java code, uncovering a series of implementation tricks that you can immediately apply to your project. The last section overviews practical strategies that you can use to gradually decouple a monolithic system into independent subdomains.

The lack of a clear structure can slow us down and put the project in danger, but over-engineering can also generate remarkable waste of time, money, and brainpower. To help you find the amount of “just-enough design”, this training adopts a pragmatic point of view and then introduces techniques to gradually evolve the design to match the growing functional complexity.

By the end of the workshop, you’ll understand:

 And you’ll be able to:

[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.14.7″ text_font=”||||||||” background_color=”#FFFFFF” custom_margin=”|||0px|false|false” hover_enabled=”0″ global_colors_info=”{}” sticky_enabled=”0″]

What will you learn?

[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.14.7″ text_font=”Sansation|300|||||||” link_font=”||||||||” ul_font=”||||||||” ol_font=”||||||||” quote_font=”||||||||” header_font=”||||||||” background_color=”#FFFFFF” hover_enabled=”0″ global_colors_info=”{}” sticky_enabled=”0″]

Who is the trainer?

Victor is one of the top technical trainers in Bucharest, well-known for the passion he dedicates to every minute of his classes. His training experience is impressive: he trained 1.5K+ developers over 300 days of in-house sessions held at dozens of companies throughout Europe. Today, he is regularly called by companies of all sizes to help bringing Software Craftsmanship ideology and eXtreme Programming practices to their technical culture.

After 15 years of professional career, Victor is also a Lead Architect at IBM, where he is crafting code and coaching others every day. He is Associate Professor at Politehnica University (UPB) and founder of Bucharest Software Craftsmanship Community in which he runs monthly free webinars. Victor has become internationally renowned by his passion for Clean Code and is now frequently invited to speak at many conferences around the world. His personal commitment is to grow in developers their passion for code.

You can learn more about Victor, his training offer, best talks, slides, articles and other goodies on victorrentea.ro or you can follow his daily thoughts on Twitter, LinkedIN or his Facebook Page.

 

Who is it for?

This workshop is for you because…

[/et_pb_text][/et_pb_column][/et_pb_row][/et_pb_section][et_pb_section fb_built=”1″ admin_label=”Speakers” _builder_version=”3.22″ background_color_gradient_direction=”121deg” background_size=”initial” background_position=”top_left” custom_padding=”0|0px|54px|0px|false|false” global_colors_info=”{}”][et_pb_row _builder_version=”3.25″ custom_padding=”0|0px|27px|0px|false|false” global_colors_info=”{}”][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”4.14.7″ text_font=”|300|||||||” global_colors_info=”{}”]

Technical requirements:

A personal laptop with your favorite IDE, JDK 8+, working Maven (connected to central) and Git. You will be asked to clone a repository several days before the workshop.

Prep-work:

[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”0|0px|27px|0px|false|false” global_colors_info=”{}”][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_button button_url=”https://romania.voxxeddays.com/product/combo-clean-pragmatic-architecture-pass-5-6th-october-2022/” url_new_window=”on” button_text=”Buy combo ticket ” button_alignment=”center” _builder_version=”4.14.7″ custom_button=”on” button_text_size=”20px” button_text_color=”#ffffff” button_bg_color=”#18b9f0″ button_border_width=”8px” button_border_color=”rgba(0,0,0,0)” button_border_radius=”0px” button_letter_spacing=”0px” button_font=”|700||on|||||” button_use_icon=”off” custom_margin=”-1px|||||” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_border_radius_hover=”100px” button_letter_spacing_hover=”3px” locked=”off” global_colors_info=”{}” button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”on” button_border_radius__hover=”0px” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”on” button_letter_spacing__hover=”0px” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”off” button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_button][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”27px|0px|0|0px|false|false” global_colors_info=”{}”][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_text _builder_version=”3.27.4″ text_font=”||||||||” text_font_size=”20px” text_line_height=”1.9em” header_font=”||||||||” header_2_font=”Roboto|300|||||||” header_2_font_size=”50px” header_2_line_height=”1.2em” max_width=”700px” max_width_tablet=”” max_width_phone=”” max_width_last_edited=”on|desktop” header_2_font_size_tablet=”40px” header_2_font_size_phone=”32px” header_2_font_size_last_edited=”on|phone” locked=”off” global_colors_info=”{}”]

Speaker

[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row column_structure=”1_2,1_2″ _builder_version=”3.25″ global_colors_info=”{}”][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_team_member name=”VICTOR RENTEA” position=”Java Champion & Independent Technical Trainer” image_url=”https://voxxedromania.ams3.cdn.digitaloceanspaces.com/2020-03-VDBUH/speakers/speakers/Victor-rentea-700.jpg” _builder_version=”4.14.7″ header_level=”h5″ header_font=”Roboto||||||||” header_text_align=”center” header_text_color=”#18B9F0″ header_font_size=”24px” header_line_height=”1.2em” body_font=”||||||||” body_text_align=”center” body_font_size=”16px” body_line_height=”1.9em” text_orientation=”left” max_width=”56%” child_filter_saturate=”0%” animation_direction=”bottom” border_radii_image=”on|0%|0%|0%|0%” border_color_all_image=”#18b9f0″ box_shadow_style_image=”preset1″ box_shadow_blur_image=”10px” box_shadow_color_image=”#18b9f0″ locked=”off” global_colors_info=”{}”][/et_pb_team_member][/et_pb_column][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ global_colors_info=”{}”][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” global_colors_info=”{}” custom_padding__hover=”|||”][et_pb_button button_url=”https://romania.voxxeddays.com/cluj-napoca/voxxed-days-cluj-napoca-2022/#speakers” url_new_window=”on” button_text=”SEE ALL OUR SPEAKERS” button_alignment=”center” _builder_version=”4.14.7″ custom_button=”on” button_text_size=”20px” button_text_color=”#ffffff” button_bg_color=”#18b9f0″ button_border_width=”8px” button_border_color=”rgba(0,0,0,0)” button_border_radius=”0px” button_letter_spacing=”0px” button_font=”|700||on|||||” button_use_icon=”off” custom_margin=”-1px|||||” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_border_radius_hover=”100px” button_letter_spacing_hover=”3px” locked=”off” global_colors_info=”{}” button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”on” button_border_radius__hover=”0px” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”on” button_letter_spacing__hover=”0px” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”off” button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_button][/et_pb_column][/et_pb_row][/et_pb_section]