fbpx

Prelegenci

Prelegenci

Łukasz Gebel

Bio

Za dnia inżynier oprogramowania w firmie TomTom, nocą zaś entuzjasta uczenia maszynowego. Technologie, z których korzystam najczęściej są związane z ekosystemem Javy. Na co dzień pracuję nad projektowaniem, implementacją i wdrażaniem systemów rozproszonych działających w środowiskach chmurowych takich jak Microsoft Azure i AWS. Interesuję się zagadnieniami związanymi z klasyfikacją i systemami wieloagentowymi. Uwielbiam się uczyć, czytać książki i grać w piłkę nożną – w dowolnej kolejności .

 

Czy programiści śnią o bezstanowych aplikacjach?

Odpowiedź bardzo często brzmi: tak. Stan kojarzy się ze zwiększoną złożonością i problemami, którymi my, programiści musimy się zająć. Są to jak najbardziej słuszne skojarzenia, jednak zdarza się, że nie możemy uciec od wprowadzenia i obsługi stanu w oprogramowaniu, nad którym pracujemy. Jest on naturalną częścią rzeczywistości, a więc również w rzeczywistości wirtualnej systemy muszą go odwzorować.

Na szczęście z pomocą przychodzą nam różnego rodzaju usługi dostępne w chmurach. Mamy do dyspozycji m. in. bazy danych, magazyny danych (s3, blob storage), cache. Wszystko okraszone możliwością replikacji stanu, strategiami działania w przypadku awarii i automatycznego odzyskiwania. Brzmi świetnie? Być może, ale diabeł tkwi w szczegółach.

Podczas prezentacji opowiem o doświadczeniach jakie ja i mój zespół zdobyliśmy pracując nad stanowymi systemami rozproszonymi działającymi w chmurze. Dowiecie się również jak korzystanie z usług w chmurze wpływa na dostępność naszych systemów. Będzie też trochę matematyki, która pomoże nam odpowiedzieć na pytanie jaka jest dostępność systemu, który projektujemy.

Adam Dubiel

Bio

Team manager, developer, szkoleniowiec i architekt z 1/4 etatu w HR. Mimo, że spis stanowisk wygląda bardziej jak ścieżka kariery, stara się znaleźć czas na każdą z tych ról (chociaż developer już raczej weekendowy). Największą satysfakcję daje mu tworzenie środowiska, w którym jego zespoły mogą zmieniać świat na lepsze pisząc i wdrażając systemy i aplikacje. Poza tym dzielenie się wiedzą, gotowanie oraz hodowanie roślin na skromnym balkonie.

 

Przychodzi request do usługi..

W zależności od wielkości systemu dzieje się to od kilku razy na minutę do kilku tysięcy razy na sekundę. Żądanie HTTP dociera do usługi napisanej w Java. Jego obsługę możemy podzielić na kilka etapów: magia, kontroler, serwis, repozytorium, magia. Co gorsza elementy magiczne występują często też między kontrolerem a serwisem, serwisem a repozytorium..

W czasie tej prezentacji chcę pokazać co kryje się pod warstwami magii, zwanej również abstrakcją. Zrozumienie tych mechanizmów pozwoli uniknąć błędów i problemów, które najczęściej spotyka się w czasie największego ruchu na produkcji.

Jakub Pilimon

Architekt / Trener

Principal Technologist w Pivotalu i trener w Bottega IT Minds. Entuzjasta Domain-Driven Design, fanatyk testów jednostkowych oraz ewolucyjnej architektury. Zwolennik Event Stormingu.

Po pracy: kitesurfing oraz motocykle.

Refactor and do it safely.

Wszyscy to przeżyliśmy, patrząc się na migający kursor. Masz zbudować nową funkcję, ale nie wiesz gdzie i jak zacząć. Naprawiasz buga i nie masz pojęcia czemu coś innego się zepsuło. Jest to typowa sytuacja w systemach klasy Big Ball Of Mud, gdzie architektura blokuje nam rozwój biznesowy. Koniec końców, nie da się wykorzystywać całego potencjału operacyjnego naszej organizacji, bo walczymy z kodem. I wtedy pada magiczne słowo: Refactoring! Większość z nas ma wiedzę jak wygląda dobra architektura. Chodzimy na konferencje, słuchamy o Domain-Driven Design, modelowaniu, zdarzeniach i Test-Driven Developmencie. Ale rzeczywistość zadaje trudne pytanie – jak to zaaplikować w zastanych systemach? Jak przekonać ludzi do refaktoryzacji? Jak to zrobić nie mając testów…? Albo wiedzy biznesowej? Jeśli chcesz znać odpowiedzi na te pytania, ta prelekcja jest dla Ciebie. Poznamy techniki, które zadziałały w wielu innych organizacjach, podobnych do Twojej.

back to top