Ile devopsu powinien umiec zwykly dev?

Ile devopsu powinien umiec zwykly dev?
lambdadziara
  • Rejestracja:ponad 6 lat
  • Ostatnio:3 minuty
  • Postów:442
0

Rozumiem, ze dockera teraz wypada dobrze ogarniac, tworzyc wlasne obrazy laczyc ze soba deployowac etc.
Rozumiem, ze pisanie basic pipelinow w wybranym CI/CD - przydaje sie, cos sie powinno umiec.
Ale czy dev powinien dobrze ogarniac kubernetesa? Ogarniac przyzwoicie terraform i wiedziec jak go uzywac do szybkiego tworzenia potrzebnych zasobow w cloudzie? Czy powinien umiec into gitops?
Czy to w ogole mu sie przyda skoro w wielu firmach bedzie mial bardzo ograniczone uprawnienia do np clouda i i tak bedzie sie pewnie musial o nie prosic do wprowadzania swoich zmian? Czy to w ogole mozliwe robic lata jako dev a potem znalezc prace jako dev/devops hybryda gdzie sie ta wiedza przydaje?
Czy takie pozycje sa tylko w malych startupach, gdzie jest potrzeba miec takiego "czlowieka orkiestre"?

SM
To co napisałaś to wg mnie zwykły dev powinien umieć. | I w Pythonowym swiecie devowie bez problemu takie rzeczy ogarniają, teraz wszędzie się tego używa.
EH
@smieszekheheszek: a ja jestem odmiennego zdania, z całej tej listy jak do tej pory jedyne co muszę znać to... jak odpalić dockera tyle, nawet nie muszę wiedzieć jak tworzyć własne obrazy bo są od tego inni.
Miang
ja nawet nie znam tych wszystkich buzzwordów ;)
AN
  • Rejestracja:prawie 11 lat
  • Ostatnio:2 minuty
  • Postów:973
7

W niektórych firmach wymagają tego a w niektórych nie.


Zdalna praca dla Senior Python Developerów --> PW
Satanistyczny Awatar
  • Rejestracja:ponad 6 lat
  • Ostatnio:około 7 godzin
  • Postów:699
11

Powinien umieć co najmniej tyle ile w pracy potrzebne.

PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:3 miesiące
  • Postów:2787
4

Dev powinien:

  • Umieć przeczytać ze zrozumieniem yamle
  • Znać kontakt do kogoś z teamu devopsowego
Zobacz pozostały 1 komentarz
SI
team platformowy to jeszcze zniese, ale devopsowego juz nie zniese :P to jest jakis oksymoron, devopsowac to moze zespol ktory robi i dev(elopment) i op(eration)s, jaki dev(elopment) robi team devopsowy? ;)
SO
@sine: mądrego to miło posłuchać :) Miałem właśnie to samo pisać o team platformowy vs devopsowy, ale nie chciało mi się znowu dyskusji o devopsach rozpoczynać :D
PI
No właśnie, ta dyskusja znowu xd devops to zwykłe stanowisko i tak się przyjęło, czy to triggeruje programistów czy nie.
SO
Od biedy może być i stanowiskiem, ale raczej nie jako oddzielny "team devopsowy", bo to zaprzeczenie idei xD
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:3 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
6

Ja nawet nie mam terraforma. Ani kubernetesa. Ale już pisałem w swoim życiu yamla dla kubernetesa o 3 w nocy bo jednak produkcja minimalnie się różniła od środowiska testowego (chyba testowe było jednonodowe, już nie pamiętam)

Jak pisali wyżej jest różnie w różnych firmach. Ale zwykle jak jest ta legendarna kultura devops to i tak jest jeden szaleniec co bardziej lubi klepać te yamle i bierze kubernetesa na siebie, a reszta może w spokoju programować. Gorzej jak się zwolni XD


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
edytowany 2x, ostatnio: KamilAdam
PaulGilbert
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:919
4

Osobiście uważam, że od DevOpsa powinni być osobni DevOpsi. Zanim przyszedł DevOps też przecież byli programiści i osobno administratorzy. Nie jestem zwolennikiem "one man army", czy inaczej, ludzi którzy są fulstack-dev-cloud-sec-data-ops-mobile-testerami :-D

SM
fulstack-dev-cloud-sec-data-ops-mobile-testerami Takich wymagań jeszcze nigdzie nie widziałem ale połączenie kilku np backend+devops jest bardzo pożądane i premiowane.
PaulGilbert
Wiem, wiem. No dockera warto znać, żeby gotowy obraz zbudować. Ale zależy od firmy wiele. W większych firmach programista nie powinien mieć wejścia na zarządzanie infrą, czy nawet wjazdu na klaster czy mieszania w deployowaniu. Wydzielenie ról w łańcuchu produkcji oprogramowania jest istotne moim zdaniem także ze względów bezpieczeństwa. Ale wiadomo, zasady zasadami, a życie życiem.
MB
MB
  • Rejestracja:około 2 lata
  • Ostatnio:ponad rok
  • Postów:105
0

Pracowałem w projektach gdzie od programistów Javy wymagano robienia DevOps i co najlepsze estymowania. Gdy mówiłem że się boje wyceniać to mnie do tego lekko zmuszano. Gdy coś wyceniłem to wtedy brałem to na Sprint i byłem w pułapce. Bo pasowało to dowieźć do końca Sprintu. Jak nie dowoziłem to mówili że nie spełniam Sprint Commitment.

Bardzo mnie to stresowało wtedy i sporo robiłem darmowych nadgodzin.

Gdybym robił w stacku jak typowy Java Developer to byłoby okej.

edytowany 1x, ostatnio: MarioBros33
Zobacz pozostałe 8 komentarzy
SM
@MarioBros33: Jesteś juniorem, midem? To mówisz że task ma 2 subtaski, research i implementaja i elo.
RequiredNickname
@MarioBros33: to uczysz się w trakcie robienia taska gdzie tu widzisz problem? A że ktoś potem mówi, że nie dowiezione to co sie przejmujesz? Trochę więcej asertywności, pewności siebie i dorosłego podejścia do sprawy. Nie daj się zastraszać
MB
MarioBros33
@RequiredNickname: dzieki za radę, ale wiesz ciężko się tak postawić i powiedzieć np to co Ty napisałeś
SM
@MarioBros33: A jak dalej nie umiesz oszcować to dajesz 5,8,13 i robisz nawet cały sprint i na końcu konkluzja do czego udało ci się dojść i tyle i przy następnym planningu kminicie co dalej.
RequiredNickname
@MarioBros33: Tobie się tylko tak wydaje, że ciężko a jakbyś problem rozłożył na czynniki pierwsze, przeanalizował czy zachowałeś się ok mówiąc że nie oszacujesz oto to byś doszedł do wniosku, że postąpiłeś dobrze. Niektórzy się tego uczą z wiekiem a inni całe życie pozostają podatni na mobbing. Sam zdecyduj po której wolisz być stronie.
ledi12
  • Rejestracja:ponad 5 lat
  • Ostatnio:24 dni
  • Lokalizacja:Wrocław
1

Zależy od projektu. Docker / k8s / terraform to raczej standard. Nie trzeba umieć tego na wybitnym poziomie, ale chociaż się orientować co jest od czego i ew szybko ogarnąć info jak coś postawić. Solidna znajomość devops przez deva to bardzo dobra karta przetargowa do dużych pieniędzy. Problemem są firmy, które takiej znajomości wymagają, jednocześnie płacąc poniżej rynku.


Robię http response status cody w martwych ciągach
edytowany 1x, ostatnio: ledi12
EH
żaden standard, docker powiedzmy, że gdzieś tam staje się standardem, reszty na oczy nie widziałem.
SL
@ehhhhh: to w jaki sposób stawiacie infre/kontenery?
EH
@slsy na serwerach nie ma kontenerów, od zarządzania, stawiania, pchania kodu jest jest https://forge.laravel.com jedyne co na takim serwerze trzeba robić to aktualizować sam system bo całą resztę klika się z panelu. A dla krytycznych apek o dużym sla można dołączyć https://envoyer.io
SM
jedyne co na takim serwerze trzeba robić to aktualizować sam system I to w dużym systemie potrafi wszystko położyć, a jak cofniesz serwer do poprzedniej wersji jak coś pójdzie nie tak?
EH
@smieszekheheszek: a kto normalny aktualizuje naraz wszystkie serwery?
SM
@ehhhhh: Ja i jak mam sensowne środowisko to zajmuje mi to 15 min a przez reszte dnia tylko patrze po logach oglądam netflixa, 4p itp.
SM
@ehhhhh: Ale nie odpowiedziałeś na pytanie jak to naprawisz jak coś pójdzie nie tak? Bo ja zrobie rollback w następne 15 min.
EH
@smieszekheheszek: spoko u nas nikt nie patrzy w logi skoro wszystko działa :) Leci update jednego serwera jeśli przez dobę nie ma alertów to leca updaty reszty.
SM
@ehhhhh: A co jak są alerty? Jak naprawisz system? jak system musi działać cały czas ewentualnie najpóźniej do rana ma wstać bo jak nie to cała firma będzie stać... Będziesz siedział całą noc do rana żeby tylko wszystko postawić?
SM
Ja zrobie rollback i na wyebce bede sobie patrzył co poszło nie tak, i nikt tego nawet nie zauważy.
EH
@smieszekheheszek: po pierwsze nasze serwery w większości mogły by paść na tydzień i to nadal nie jest problem. po drugie krytyczne serwery które jednak muszą działać mają na tyle duży zapas że nawet jak padnie połowa to reszta pociągnie ruch, po trzecie to co robimy jest na tyle niezależne od systemu że jeszcze się nigdy nie zdarzyło żeby aktualizacja systemu wysypała apki. Także ty poświęcasz 15minut na update my 5 minut więc jak sie uzbiera że kiedyś się coś wysypie to się odtworzy w godzine serwer z backupu lub sklonuje działający.
SM
odtworzy w godzine serwer z backupu lub sklonuje działający brzmi skomplikowanie ja wole mieć wszystko w jednym yamlu pod ręką.
EH
@smieszekheheszek: kontenery mają swoje wady na serwerach produkcyjnych dlatego tylko korpo tego używa
SM
@ehhhhh: Nie tylko korpo, średnie firmy i startupy też... A jakie wady?
EH
chociażby wydajność. Ja robię w firmie której produkt jest na rynku kilkanaście lat i docker jest nieopłacalny tutaj.
FR
Wady takie, że trzeba się tego nauczyć i wdrożyć. Zdecydowanie łatwiej wyklepać sobie ręcznie skrypty albo w ogóle zapisać komendy w notatniku i przeklejać do basha. DevOps make it easy
EH
startupy to akurat najgorszy argument bo oni zawsze idą z obecną modą nie patrząc na to czy coś ma sens.
SM
@ehhhhh: @froziu: Czy ja wiem czy dostawienie warstwy kontenera jest takim kosztem, szczególnie że zwykle te obrazy to często jakieś super zoptymalizowane alpiny(między innymi właśne ze względu na łatwość edycji). Mi się łatwiej zarządza klastrem z dokerami niż jeśli miałbym to samo ręcznie robić na serwerach(ale może to kwestia przyzwyczajenia).
EH
@smieszekheheszek: a ja mając skonfigurowane wszystko w forge stawiam wszystko na nowej maszynie w kilka kliknięć. Więc 0 zysku czasowego przy dockerze za to spory zysk wydajnościowy bo wykorzystam całą moc dedyka.
SM
@ehhhhh: Ja moge też odtworzyć w moment cały klaster lokalnie jak i każdy dev może to zrobić, czasem też może się przydać, i bez problemu mogę się wynieś z np aws gdziekowiek indziej, nie jestem przywiązany do żadnej platformy to też może być ważny arg.
EH
@smieszekheheszek: ja mogę też się przenieść wszędzie :) więc żaden argument
SO
@ehhhhh: chociażby wydajność A jakie to znaczące problemy wydajnościowe z Dockerem mieliście? Ja tam jakimś wielkim znawcą bebechów Dockera nie jestem, no ale on pod spodem korzysta z natywnych funkcji kernela (namespace'y), więc wielkiego wpływu na wydajność to chyba nie powinno mieć?
EH
@some_ONE: nie ja testowałem, ale był na tyle duży narzut że się nie zdecydowali na to.
Schadoow
@smieszekheheszek: tak tak juz widze jak stawiasz lokalnie skypty robione pod np eks”a.
SM
@Schadoow: Ale o czym ty bredzisz, lokalne skrypty się wrzuca do poda.
Schadoow
@smieszekheheszek: ja mówię o postawieniu całego projektu lokalnie. A nie o uruchomieniu jednego serwisu. W przypadku k8s gdzie polowe rzeczy ustawiasz adnotacjami a druga zakłada istnienie zainstalowanych już tooli pod konkretnego providera nie ma tak ze jest to uniwersalne.
SM
@Schadoow: Jakich tooli? Tworzysz klaster i robisz deploy wszystkiego helmem.
SO
Ale prawdą jest, że musisz to wszystko mieć mocno sparametryzowane i w innej konfiguracji wdrażać na klaster lokalny, a inaczej na docelowy. Tylko chyba tak samo jest zazwyczaj z aplikacją... Zakładam, że te "toole" to na przykład inny ingress controller lokalnie, a inny w chmurze, natywne dla danej chmury mechanizmy uwierzytelniania (np. Azure AD Workload Identity w przypadku AKS), jakieś mechanizmy synchronizacji/wstrzykiwania sekretów z chmurowego Vaulta.
SM
Co do ingresa możesz mieć lokalnie i na chmurze takiego samego nginxa, a co do pobierania kluczy pobieranie też będą dokładnie tak samo przez serwisy musisz tylko spiąć vpna.
SM
No wiadomo jak sobie nawydziwiasz różne konfiguracje to będziesz się później yebal, ale z ustawianiem wszystkiego ręczenie jeszcze bardziej.
Schadoow
Np coredns, alb vs ingress itd. Lub jak wyobrażasz sobie unifikowanie np tworzenia przestrzeni dyskowej managed vs on-premise vs local? Poza tym nikt nie mówi tu o ustawianiu ręcznym a o tym ze k8s to nie jest magiczny tool który ci jednym kliknięciem stworzy środowisko gdzie chcesz już większa unifikacje i odporność na różne środowiska daje ci jakikolwiek tool w oparciu o standardowe vm.
SM
@Schadoow: Starasz się wymyślać problemy na siłe, jakie zarządzanie przestrzenią dyskową, serwisy to serwisy storage to storage... k8s to nie jest magiczny tool który ci jednym kliknięciem stworzy środowisko gdzie chcesz No nie jest ale jak miałbym przenosić duże środowisko które stoi na k8s vs jakoś poustawiane na on-premach to drugiego nawet się nie podejmuje bo nie wiem gdzie ktoś sobie jakieś magie poustawiał itd... Jedyny przypadek kiedy może żaden orkiestrator jest nie potrzebny to gdy produkt jest super mały i faktycznie wystarczy przenieść pare procesów z A do B.
Schadoow
@smieszekheheszek: ehh chyba nie mam o czym z tobą dyskutować, bo nie masz pojęcia o czym mówisz i przez brak zrozumienia nawet nie interpretujesz tego co napisałem. Jakbym ci dał k8s bez skryptów poustawianego to tez byś nie wiedział gdzie ktoś sobie coś poustawiał i nie potrafił łatwo przenieść tego do configu tutaj nie ma różnicy żadnej. Pomijam już ze łatwiej nauczyć się ansibla czy vagranta niż k8s przez mniejsza liczbę abstrakcji.
Schadoow
IMO w k8s warto inwestować kiedy dynamicznie skalujesz serwisy wielokrotnie up/down w ciągu jednego dnia. Jeśli masz na stałe wartości w configu i zmieniasz je raz na ruski rok to jedynie utrudnia prace. Pomijam ze vm”y ogarnie ci każdy sysadmin których nie tak trudno znaleźć natomiast z k8s nie tak łatwo znaleźć specjalistę który zna go dobrze i nie wola w c**** dużo hajsu.
Schadoow
Btw teraz robimy właśnie produkt w oparciu o k8s który może być dystrybuowany jako saas wiec mamy swoją infre w cloudzie ale może być także przez klienta instalowany lokalnie. I unifikacja i przygotowywanie wszelkiej maści skryptów aby to było możliwe to droga przez mękę.
SM
@Schadoow: ehh chyba nie mam o czym z tobą dyskutować, bo nie masz pojęcia o czym mówisz i przez brak zrozumienia nawet nie interpretujesz tego co napisałem. Jakbym ci dał k8s bez skryptów poustawianego to tez byś nie wiedział gdzie ktoś sobie coś poustawiał i nie potrafił łatwo przenieść tego do configu tutaj nie ma różnicy żadnej Ale o jakim ty konfigu mówisz w helmie masz wszystko również możliwość zdeployowania ingressa i to ci daje de facto cały serwis.
SM
@Schadoow: Mówisz o jakichś rzeczach specyficznych dla twojego projektu i myślisz że ludzie będą ci czytać w myślach. IMO w k8s warto inwestować kiedy dynamicznie skalujesz serwisy wielokrotnie up/down w ciągu jednego dnia. Jeśli masz na stałe wartości w configu i zmieniasz je raz na ruski rok to jedynie utrudnia prace. Nie tylko warto również choćby dlatego że możesz zarządzać całym serwisem z jednego miejsca.
SM
Pomijam ze vm”y ogarnie ci każdy sysadmin których nie tak trudno znaleźć natomiast z k8s nie tak łatwo znaleźć specjalistę który zna go dobrze i nie wola w c**** dużo hajsu Jednak wydaje mi się ze 100 podów będzie tańsze niż 100 vmów.
Schadoow
Z jakiego powodu miałoby być tańsze ? Co jest takiego specyficznego w byciu niezależnym od vendora infry :0 ?
SM
No bo pod=process a pod vm-ke musisz wirtualizować cały system. Co jest takiego specyficznego w byciu niezależnym od vendora infry specyficznego? chodzi ci o zalety? Kiedyś w jednym projekcie zmienialiśmy vendora bo ceny poszły do góry i wymagania przy pisaniu nowych serwisów były takie że mają być jak najbardziej vendor independent gdyby była potrzeba przenieść się znowu.
Schadoow
Nie no chodzi mi o to ze nie jest oczywiste w przypadku k8s w szczególności gdy używasz wersji managed. Co do pierwszego zdania to tak w tym kontekście masz racje vm”y zzeraja wiecej zasobów. Ale koszty osobowe znacznie przewyższają ta różnice. Generalnie jakbym miał płacić za produkt z własnej kieszenie raczej nie zdecydowałbym się na k8s.
WhiteLightning
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 22 godziny
  • Postów:3169
1

@MarioBros33: jak sie na czyms nie znasz, to estymujesz z zapasem. Jak zostanie czas, to sobie doczytasz o opsowaniu.

@lambdadziara: tak, ja skakalem midzy QE <-> Dev a pozniej przeskoczylem na SRE.

RO
I zostałeś już jako SRE? Czy myślisz o powrocie
WhiteLightning
Nie szukam aktywnie zmiany (ale zawodowo jestem przekupny, wiec jak ktos mi zaproponuje cos fajnego za +40% lub wiecej, to powaznie rozwaze ).
KE
  • Rejestracja:ponad 6 lat
  • Ostatnio:około 4 godziny
  • Postów:664
5

Jeśli infra w twojej firmie stoi na k8s, to powinieneś znać "kontrakt" twojej aplikacji z Kubernetesem. Czyli rzeczy typu:

  • że są jakieś zmienne środowiskowe, sekrety, wolumeny i aplikacja musi potrafić z tego korzystać
  • że CPU i RAM nie są nieskończone, a nawet jeśli tak się wydaje to jest to łatwo weryfikowalne złudzenie :)
  • że fajnie jakby aplikacja była bezstanowa, dawała się skalować, ładnie się wyłączała jak dostanie SIGTERM
  • że są (liveness/readiness/startup)Probe i od nich bardzo zależy czy ta aplikacja będzie stabilnie działać, a jak przestanie to pozwoli się zrestartować

Natomiast (przynajmniej z mojego doświadczenia w większej firmie) jako zwykły programista nigdy w życiu nie dostaniesz dostępu nawet readonly do klastra. Więc nie przejmuj się niczym ponadto :)

EDIT: teraz widzę że pytanie było szersze, ale zamysł jest taki sam. Pytasz o pisanie pipelinów - warto wiedzieć jak z CLI odpalić testy i gdzie są ich wyniki, ale np. jak dodać nową maszynkę do Jenkinsa to co cię to obchodzi :)

edytowany 1x, ostatnio: kelog
KO
To ciekawe, bo u mnie w korpo dają nam programistom dostęp do klastrów i teoretycznie moglibyśmy sami restartować pody i co tam się jeszcze z nimi robi (głównie to sprawdzam tam logi)
KE
A no to fajnie macie w sumie. Jakbym decydował, to też bym na taki dostęp dozwolił, ale co zrobisz. Natomiast logi trafiają do centralnego serwera więc kubectl logs nie jest potrzebne, do jakichś restartów czy podglądu namespace mamy naskrobane kilka skryptów w Jenkinsie i na razie nikt nie narzeka :)
D9
Ja mam dostęp do klastrów tylko na środowiskach dev i test.
WhiteLightning
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 22 godziny
  • Postów:3169
1

@kelog: "że fajnie jakby aplikacja była bezstanowa, dawała się skalować, ładnie się wyłączała jak dostanie SIGTERM" -> gdyby wszystkie apki byly takie, zycie byloby piekne.

Co do dostepu -> duzo zalezy od skomplikowania i wielksosci, jednak zupelnie inaczej wyglada zabawa jak mamy 4 serwerki na krzyz, a inaczej gdy liczby ida w setki lub tysiace.

B2
  • Rejestracja:około 6 lat
  • Ostatnio:2 dni
  • Postów:100
0

Ja dzieki temu ze dlubalem w jenkinsie to dostalem oferte +50%, zeby przejsc z deva na devopsa :D Takze imho warto jezeli Cie to interesuje.

edytowany 1x, ostatnio: belzebub269
szatkus1
W sensie płacili połowę tego, co miałeś?
B2
50% wiecej tego co mialem
somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 22 godziny
  • Lokalizacja:Wrocław
7
PaulGilbert napisał(a):

Zanim przyszedł DevOps też przecież byli programiści i osobno administratorzy.

Tak, byli. I to było słabe, bo programiści nie umieli pisać kodu, który da się łatwo wdrożyć i utrzymać, a administratorzy nie potrafili zajmować się softem, którego nie pisali.
Stąd słuszny pomysł na łączenie kompetencji w ramach poszczególnych zespołów.
A, że korpo zaczęły nazywać administratorów devopsami, bo podobnie jak 2/3 programistów nie rozumieją o co chodzi w wytwarzaniu oprogramowania ani po co się to robi, to już inna kwestia.

PaulGilbert
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:919
5

Ja postrzegam to trochę inaczej, szerzej. Dla mnie w DevOpsie nie chodzi o to, żeby każdy umiał wszystko, tylko aby zespoły były tak budowane, że zespół jako całość jest samodzielny. Zresztą był nawet taki film krótki o tym na przykładzie spotify, który świetnie to obrazuje.

JB
trochę Cię rozumiem, bo sam jestem "samodzielną jednostką operacyjną" sam planuję i wykonuję czego otocznie nie rozumie i nie akceptuje.
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:około 2 godziny
  • Lokalizacja:Laska, z Polski
  • Postów:10056
0

Tyle żeby postawić aplikacje na serverze i pokazac klientowi.

PaulGilbert
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:919
1
Riddle napisał(a):

Tyle żeby postawić aplikacje na serverze i pokazac klientowi.

Developerzy nie powinni się bawić serwerami, a co więcej, to nie developerzy powinni się zajmować prowadzeniem biznesu z klientem, takie jest moje zdanie.

Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:około 2 godziny
  • Lokalizacja:Laska, z Polski
  • Postów:10056
0
PaulGilbert napisał(a):
Riddle napisał(a):

Tyle żeby postawić aplikacje na serverze i pokazac klientowi.

Developerzy nie powinni się bawić serwerami, a co więcej, to nie developerzy powinni się zajmować prowadzeniem biznesu z klientem, takie jest moje zdanie.

:D

jasne.

Robienie wszelkiego rodzaju silosów (typu Maciek kodzi, a heniek robi aws) nic dobrego nie przynosi. Dobre projekty powstają kiedy zespół składa się z ludzi o szerokim zasięgu.

edytowany 1x, ostatnio: Riddle
PaulGilbert
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:919
5

Przez to, że kultura DevOps jest źle implementowana, przynajmniej z tego co się u nas słyszy - nie wiem jak to na świecie przeważnie wygląda, to teraz te narzekania słychać, że DevOps się nie sprawdza, że Developerzy go nie chcą, że nie specjalnie spełnia oczekiwania, że nie ma ludzi, którzy by chcieli Kubernetesa ogarniać itd itp.
I ja się nie dziwię - są ludzie których jara programowanie a zupełnie nie kręci opsowanie i odwrotnie. Wiadomo, że jak musisz, to będziesz robił, ale jak nie masz z tego satysfakcji, to się wypalisz szybko.
Ukierunkowanie się na to, żeby każdy był od wszystkiego to nie jest to o co w tym chodziło.

Belka
  • Rejestracja:prawie 8 lat
  • Ostatnio:2 dni
  • Lokalizacja:PL
  • Postów:452
1

Terraforma nie miałem przyjemności poznać. W pierwszej pracy nawet Docker był mi obcy - charakter projektu i produktu był taki, że nie było to potrzebne. W obecnej firmie od razu zaskoczyła mnie mnogość rzeczy związanych z cloudem, k8s, docker, które muszę przyswoić. Z biegiem czasu jednak to się stało dla mnie naturalne, że jako developer potrafię ogarnąć jakiś problem w klastrze, zdeployować aplikację, napisać yamla, czy skrypt gitlab ci. Wydaje mi się to nie tyle smutną koniecznością, co przydatnym atrybutem.

MB
MB
  • Rejestracja:około 2 lata
  • Ostatnio:ponad rok
  • Postów:105
0

Ja z DevOps umiem dość sporo jako Java Developer, stawiałem całe środowiska na AWS/Azure. Mam także certy z Terraforma i z k8s CKAD i AWS Solutions Architect Associate + Profesional.

Miałem epizody ze Devopsom w firmie mówiłem jak coś ma być zrobione bo nie ogarniali czasem (brak wiedzy z sieci, networkingu).

Na rozmowach rekrutacyjnych nigdy mnie nie pytali z tej wiedzy i to zależy od projektu czy się ona przydaje. Jedno jest pewne, jak się nie używa to się zapomina.

edytowany 3x, ostatnio: MarioBros33
lambdadziara
" (brak wiedzy z sieci, networkingu)." co
TR
czy te certy przydały Ci się w rekrutacji, tzn. czy ktoś Ci powiedzieć 'o cert z Terraforma to duży plus bierzemy Ciebie/damy Ci wiecej kasy'?
MB
MarioBros33
@Trubow: nigdy, certy robilem tylko dla własnej satysfakcji
PaulGilbert
To może Ty Opsem powinieneś zostać skoro Cię to bardziej ciągnie?
somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 22 godziny
  • Lokalizacja:Wrocław
3
PaulGilbert napisał(a):

Ja postrzegam to trochę inaczej, szerzej. Dla mnie w DevOpsie nie chodzi o to, żeby każdy umiał wszystko, tylko aby zespoły były tak budowane, że zespół jako całość jest samodzielny.

Dokładnie o to od początku chodziło. To jest nazwa metody pracy, nie stanowiska.
Tylko nadal pozostaje ten niuans, że programista oprócz pisania kodu powinien też umieć uruchomić swój program, i go ewentualnie naprawić.

Crowstorm
  • Rejestracja:ponad 7 lat
  • Ostatnio:około rok
  • Postów:490
1

Nawet nie czytam reszty odpowiedzi bo obawiam się, że przeczytam że to normalne, że teraz dev ma być fullstackiem, devopsem i testerem w jednym i jeszcze rozumieć biznes xD

KE
Ja tu widzę typowe podejście czasem - "jestem zarąbisty to i inni muszą być, a jak nie są to są lamusami" xD
LitwinWileński
no tak musi być bo inaczej mają nieskończoną ilość instancji chata gpt na Twoje miejsce
Uśpiony wiosenny but
ja mam tak żenującego manual testera w teamku, który już zawiódł mnie ze 2-3 razy i był niezły fuckup na stage env naszczęście sam wyłapałem przed prodem, że teraz sam testuję swoje rozwiązania i zaczałem pisać e2e więc koleś jest praktycznie uselessem ale daje mu testować
MI
  • Rejestracja:około 5 lat
  • Ostatnio:dzień
  • Postów:148
0

Ja osobiście uważam, że każdy powinien skupić się na tym na czym się zna i robić to dobrze. Idealnie gdyby programista wiedział, gdzie jego soft będzie działał, jak się skalował i umiał to wziąć pod uwagę, natomiast uważam za zbędną rzecz robienie z programisty admina/ devopsa. Prawda jest taka, że grzebać w kubernetesie/ terraform itp. może każdy, nawet coś tam się da postawić, natomiast grzebanie na produkcji kiedy są jakieś problemy z cloudem/ infrastrukturą itp. zostawiłbym ludziom, którzy się na tym dobrze znają. Powiem szczerze, że mi najlepiej się pracowało w firmie, gdzie był "wymiatacz" od devopsu, wtedy jakiekolwiek problemy rozwiązywało się świetnie- ja siedziałem w kodzie, szukałem sposobów optymalizacji itd., a równolegle devops grzebał w infrze i też zwykle coś mu się udało poprawić/ zoptymalizować. Sam na pewno bym tego nie zrobił (a przynajmniej nie w tak krótkim czasie).

somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 22 godziny
  • Lokalizacja:Wrocław
2
micheangelo napisał(a):

Ja osobiście uważam, że każdy powinien skupić się na tym na czym się zna i robić to dobrze. Idealnie gdyby programista wiedział, gdzie jego soft będzie działał, jak się skalował i umiał to wziąć pod uwagę

Będzie umiał to wziąć pod uwagę, jeśli nie będzie rozumiał jak ten soft ma działać, ile mieć komponentów, ile każdy instancji, w jaki sposób się skalować?
Będzie umiał w ogóle napisać taki soft, jeśli np. nie będzie wiedział, jakie są możliwości skalowania?

JM
  • Rejestracja:ponad 9 lat
  • Ostatnio:około rok
  • Postów:98
0

Myśle, że warto znać na tyle devopsu, żeby być w stanie kompleksowo stworzyć, wdrożyć, utrzymywać i monitorować aplikację / serwis czy co tam kto robi. Trzeba też rozumieć jak to wszystko działa żeby jak @somekind napisał wiedzieć jakie są np. możliwości skalowania albo kiedy aplikacja klęknie. Jeśli chodzi o jakiś tuning, optymalizacje, security infry to już rzeczywiście warto zostawić to komuś kto się w tym specjalizuje. Ostatnie pare lat sporo pracuje z ludkami z usa i tam właśnie takie podejście kompleksowego rozwoju produktu jest chyba bardziej cenione niż skupienie tylko na kodzie i jakości kodu (tutaj czasem aż za bardzo w drugą strone) nie wiem czy to dobra droga ale patrząc po tym jakie projekty i pieniądze są po ich stronie a jakie u nas to chyba coś w tym jest.

PaulGilbert
Z tą jakością kodu to rzeczywiście u nas czasami bywa takie jaranie się, że niektórzy myślą, że to czy kod będzie ładny jest znacznie ważniejsze od tego co będzie robił i czy w ogóle będzie biznesowo używalny:-D W Stanach to chyba przez to dotychczasowe pompowanie kasy w sturtupy trochę inne jest podejście - najpierw ma być cokolwiek, byle w miarę działało, nie musi być pięknie, żeby coś pokazać inwestorom i ściągać kasiorę. A jak jeden z niewielu sturtupów wypali, to potem przepisywanie na inne technologie, dopracowywanie kodu, dopieszczanie, poprawianie jakości itd itp.
MB
MB
  • Rejestracja:około 2 lata
  • Ostatnio:ponad rok
  • Postów:105
0

Ja napiszę może konkrety ile DevOpsu powinien umieć dev:

  1. Postawić za pomocą Terraform cluster K8S na dowolnej chmurze, czy to AWS/Azure/GCP
  2. Ogarnąć postawienie Jenkinsa (lub innego toola np. Tekton) na K8S w celu budowy pipeline, budowanie aplikacji i pushowanie docker image, robienie git commit do repo z wersjami.
  3. Następnie postawienie ArgoCD na K8S w celu Continous Deployment.

Wszystko ma być za pomocą IaaC, konfiguracja Jenkinsa także.

Konfiguracja secretów tylko w chmurze i skorzystanie z pluginu CSI K8S.

Robiłem takie powyższe rzeczy w dwóch firmach jako Java Developer.

Gdy mamy powyższe rzeczy zrobione wtedy możemy się zająć zbieraniem logów i monitoringiem aplikacji tutaj mam na myśli toole jak FluentD + ELK.

Kolejna sprawa jest taka, że powyższe czynności w porówaniu do programowania są śmiesznie proste, w sensie mam na myśli że tam nie trzeba zbytnio myśleć tylko po prostu czytać dokumentację i konfigurować. Gdybym miał to porównać z pisaniem kodu to dla mnie jest to odskocznia którą sobie na luzie robię.

edytowany 3x, ostatnio: MarioBros33
SA
I powinien umieć zarabiać rj-ki, developer, który nie umie postawić swojej serwerowni to dupa nie developer.
SO
Rzeczy które wymieniłeś to już czyste opsowanie wiec ostro odleciałeś XD
KE
O kierwa, co za bzdury. Może jeszcze frytki do tego. A w ogóle zgodnie z tą logiką (której nie ma) to ja wymagam, żeby sprzątaczka w firmie znała wszystkie operatory z RxJavy, bo inaczej to wstyd.
KE
A tak serio - nie mówię że jako Java dev nie powinieneś znać tych rzeczy (bo jeśli znasz - to ekstra), ale weź zażądaj przynajmniej 15-20k/mc więcej niż stawka Javowca, bo robisz za 2 :P
MB
MarioBros33
@some_ONE: @kelog: dodatkowo mam certa z Terraform Associate, certa z K8S Admin + 2xAWS Solutions Architect + Professional. Razem aby to zdać wszystko jakiś rok się uczyłem po pracy non-stop
PaulGilbert
  • Rejestracja:około 7 lat
  • Ostatnio:dzień
  • Postów:919
8

To już się nie dziwię, że tyle firm płaci potem haracze hakerom, skoro budowanie infry powierza developerom, żeby sobie dla odskoczni coś innego porobili :-D
Takie robienie na zasadzie - podpatrzę sobie coś tam w dokumentacji, jakoś się to skleci, byle wstało.

Pewnie o firmach, które zatrudniają DevOpsów, CloudOpsów, SecOpsów itp. myślisz sobie "a na ch... im to" skoro developerzy sobie dla rozrywki to mogą robić w przerwach w programowaniu.

O matko... ręce opadają. Moim skromnym zdaniem takie podejście firm to patologia, czy też patodeveloperka.

Swoją drogą skoro chmury i DevOps takie proste, to skąd takie wysokie zarobki ludzi tym się zajmujących.

edytowany 3x, ostatnio: PaulGilbert
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:3 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
1
PaulGilbert napisał(a):

Takie robienie na zasadzie - podpatrzę sobie coś tam w dokumentacji, jakoś się to skleci, byle wstało.

Ej, ale w programowaniu często to działa. Kopiujesz sampla z dokumentacji. Zmieniasz w paru miejscach i działa XD W moim hobbystycznym projekcie w Haskellu dopiero po roku zrozumiałem "czemu tak" XD


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
WhiteLightning
Tylko ze bawiac sie tak na produkcji, moze sie okazac ze po niewinnej zmianie zniknal caly cluster z danymi klientow :P
Crowstorm
  • Rejestracja:ponad 7 lat
  • Ostatnio:około rok
  • Postów:490
6

Ja bym jeszcze rozumiał gdybyśmy gadali tu o jakichś turboseniorach, absolutnych wymiataczach którzy niosą firmę na plecach i od nich wszystko zależy.
Ale czytając wypowiedzi mam wrażenie, że te wymagania dotyczą chyba już nawet juniorów.

Może jestem leserem, może jestem upośledzony i bez skilla, ale żeby spełniać te wszystkie obecne wymagania w stopniu profesjonalnym (czyli mamy pewność, że wszystko śmiga) to trzeba nie mieć życia poza pracą albo 10 lat expa. Naprawdę oczekujemy od zwykłych midów by ogarniali front, backend, devops, testy i jeszcze inne "niezbędne" duperele? To, że firmy na to cisną to wiadomo, lepiej zapłacić jednemu frajerowi niż 3 oddzielnym stanowiskom, ale bawi mnie, że chyba jako społeczność się powoli na to godzimy i wręcz uważamy to za normalne.

KO
U mnie w korpo niektórzy robią wszystko łącznie z robotą typową dla PO albo nawet architekta, bo "trzeba to i tak zrobić" i nie zdają sobie sprawy, że w ten sposób pogarszają swoją sytuację dając do zrozumienia firmie, że nowi pracownicy nie są potrzebni w zespole. A podwyżek nie ma od ponad roku, bo "ciężka sytuacja" :D
Szado
  • Rejestracja:ponad 7 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Kraków
  • Postów:64
4

Zwykły dev prywatnie może wymiatać w devops, natomiast przy pracy powinien wykorzystywać z tego minimum potrzebne na odpalenie projektu na localu. No chyba że ma devopsowanie wpisane w umowę i uwzględnione w stawce.

MB
MarioBros33
XD
Szado
gdzie tu XD nie widzę kontrowersji w jasnym podziale obowiązków i odpowiednim wynagrodzeniu za wykonywaną pracę
Crowstorm
"XD" bo jak widzisz w nastpnym poście jego korpo wydymało i robił to za darmo to ty też masz cierpieć
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)