Ostatnio odby艂o si臋 spotkanie w ramach inicjatywy 馃嚨馃嚤 Dev Radio PL pod tytu艂em Ty napisa艂e艣 Ty wspierasz - albo kr贸cej Programujesz Utrzymujesz. W czasie ponad godzinnego spotkania, wraz z 艁ukaszem Ka艂u偶nym oraz go艣膰mi, om贸wili艣my wiele zagadnie艅 dotycz膮cych podej艣cia, w kt贸rym programi艣ci zajmuj膮 si臋 wsparciem i utrzymaniem aplikacji wdro偶onych na produkcj臋.
Poni偶ej, za艂膮czam dla Ciebie wizualn膮 notatk臋 z tego spotkania.
Dyskusje prowadzili艣my na Clubhouse i starali艣my si臋 spojrze膰 na t膮 zaawansowan膮 technik臋 DevOps z wielu perspektyw.
Z ciekawych wniosk贸w warto podkre艣li膰, 偶e tradycyjne role pozostaj膮 i s膮 przejmowane przez cz艂onk贸w zespo艂u w ramach potrzeb. Zgodnie z agile, jedna osoba mo偶e pe艂ni膰 wiele r贸l. M贸wili艣my o kapeluszach. Ka偶dy ma swoje specjalizacje w zespole, ale jest w stanie przyj膮膰 (prawie) dowolne zadanie i je zrealizowa膰.
Dla wszystkich uczestnik贸w spotkania oczywiste by艂o, 偶e dobrodziejstwa chmury i cloud native pozwalaj膮 zespo艂om developer贸w dostarcza膰 szybciej i sprawniej oprogramowanie. Us艂ugi chmurowe automatyzuj膮 ogromn膮 ilo艣膰 pracy wok贸艂 infrastruktury i tym samym wypieraj膮 klasyczne role administratorskie. To w艂a艣nie ten trend (obecny od pocz膮tk贸w wirtualizacji) stoi za podej艣ciem Utrzymujesz programujesz.
Po angielsku nazywa si臋 to You build it, you run it i rozpocz臋艂o si臋 w 2006 roku, s艂owami wypowiedzianymy przez CTO Amazona, Wernera Vogelsa:
Giving developers operational responsibilities has greatly enhanced the quality of the services, both from a customer and a technology point of view. The traditional model is that you take your software to the wall that separates development and operations and throw it over and then forget about it. Not at Amazon. You build it, you run it. This brings developers into contact with the day-to-day operation of their software. It also brings them into day-to-day contact with the customer. This customer feedback loop is essential for improving the quality of the service.
W 2006 roku to ja nawet nie s艂ysza艂em o chmurze 馃ぃ
A teraz w niej dzia艂am ale r贸wnie偶 pracuj臋 w zespole, kt贸ry rozwija i utrzymuje dwa produkcyjne systemy.
Dzia艂amy zgodnie z tym podej艣ciem w ma艂ym zespole two-pizza size. Osobi艣cie jestem niezwykle zadowolony z takiego modelu pracy. Jeste艣my cz臋艣ci膮 du偶ej korporacji, ale pracujemy w start-upowej kulutrze, gdzie od pomys艂u do realizacji mamy zwykle bardzo kr贸tk膮 drog臋.
Utrzymujesz programujesz idealnie sprawdza si臋 wraz z serverless, ale nie jest ono konieczne. Systemy, przy kt贸rych pracuj臋 codzienne to hybrydy legacy (Java) i serverless, oczywi艣cie wszystko dzia艂a w AWS. Raczej nikt nie ma z艂udze艅, 偶e on-premise si臋 do tego podej艣cia nie nadaje.
Oczywi艣cie serverless minimalizuje ilo艣膰 (zb臋dnej) pracy administratorskiej, tym samym znacznie u艂atwia przyj臋cie takiego modelu pracy przez zespo艂y deweloperskie.
Gor膮co Ci臋 zach臋cam do rozwa偶enia zastosowania Utrzymujesz programujesz w swoim zespole, tym bardziej, 偶e jego zalety nie ko艅cz膮 si臋 tylko na aspektach technicznych. Czas zaoszcz臋dzony dzi臋ki serverless, mo偶na spo偶ytkowa膰 na dostarczaniu warto艣ci dla klienta, a to pozwala zbudowa膰 przewag臋 nad konkurencj膮, o czym pisa艂em w poprzednim artykule na blog.