[ anon70939 @ 05.11.2018. 23:08 ] @
U potrazi sam za novim poslom, pa ono što me vuče je DevOps pozicija, za koju nemam dovoljno znanja.

Bio sam na dva razgovora za posao, jedna poznata firma u NS, i jedna manje poznata u BG. Ali nisam prošao.
Na oba razgovora su se postavljala razna pitanja gde jbga nisam imao iskustva, ali ove dve oblasti su pretpostavljam obavezne i one su mi upale u oko kao nešto sledeće što planiram da se posvetim.

- Software development process and CI/CD concepts and tools is a plus
- Configuration management tools (e.g. Ansible, Chef, Puppet, etc.)


Ukratko da opišem poslednje 3 godine u firmi u kojoj sam još neki dan.
Poslednje 3 godine radim u jednoj manjoj startup programerskoj firmi, koja se na kraju svela na 1 progamera i mene kao IT administratora, i koječega uz to... Opet sam svastario.... Pre toga nas je bilo desetak, uglavnom developeri.
Uglavnom smo radili po ceo dan jer smo non stop kasnili sa projektima, bili u problemima pod pretnjama raznih tužbi zbog projekata... I to je bilo opravdanje zbog kojeg se nismo posvetili tome "da stvari dovedemo u red".
Project manageri su nam bili sami developeri koji su vodili svoje projekte, sa mešanjem vlasnika firme koji je bio prodavac i govorio kako treba da se radi i koji je povremeno upadao u projekte kako bi ih "izvadio". Ostatak vremena je jurio za novim poslovima.
Testeri su nam bili isti ti developeri. Pa smo upadali u probleme često kad odemo live, ili bude neki novi publish.
Više puta sam hteo da da instaliram taj Jenkins i da probamo sa tim, ali odgovor od kolega je bio otprilike "Džaba ti sad to da instaliraš, tebi je to dan posla, nemaš ti tu nešto posebno da radiš, ali mi jednostavno nemamo vremena da pišemo testove i prilagodimo se tome".

No da ne trazim opravdanja u tome kako nije bilo vremena i mogucnosti... Koliko sam video i kod par drugara koji imaju svoje firme, pojma nemaju o ovim stvarima, i zlopate se. Možda je problem baš zato što ne koriste te stvari :)


Jbga, na ova dva gore pitanja kad se dođe do njih i kad kažem da nemam iskustva, pitaju me "pa kako ste radili publish, deploy". I kad kažem da je to bilo preko RDP unzip fajla i upucavanje sql skripti direktno na serveru... prilično se zaprepaste.
Čak me pitali i koju metodologiju project managmenta smo koristili :D. Čuo sam samo za reči Scrum, Agile, Kanban... ali veze nemam šta je...

E sad... znam šta hoću, nego kojim putem da idem, šta da naučim da se ne bih brukao na tim razgovorima?
Mogu sebi luft da dam par meseci, trošeći neku ušteđevinu, a to vreme bih posvetio učenju.

AWS mi se svideo, nikako da izađem da uzmem cert, ali ne verujem da će mi nešto i pomoći taj cert.
Odem na UpWork, i pogledam AWS poslove, i osećam se bedno jer od 30 oglasa, na 2 možda mogu da konkurišem, jer programerskog znanja imam skoro ni malo. Od programerskog znanja, naučio sam neke osnove python-a, ranije na prethodnom poslu koristio VBA i PL/SQL u Excelu. i to je to...

Kako u kućnoj radinosti da savladam ove dve stavke?

- Software development process and CI/CD concepts and tools is a plus
- Configuration management tools (e.g. Ansible, Chef, Puppet, etc.)

Neki predlog?
Vidim na Udemy ovaj kurs
https://www.udemy.com/the-comp...rse-for-developers-and-devops/
Nego ne znam da li ja treba da imam developerskog znanja za to?

Za Configuration management tools mozda ovo
https://www.udemy.com/mastering-ansible/

Ne kazem da treba udemy, ali mi bude nekako lakse i jasnije kad gledam dok skiciraju, rade i slicno...
[ djoka_l @ 06.11.2018. 07:41 ] @
Razgovarao sam sa čovekom koji je napisao ovu knjigu:
https://www.oreilly.com/library/view/the-devops-20/9781785289194/

(inače knjiga je prilično dobra, vredi da se pročita).

Njegovo mišljenje o alatima za CI/CD - batali to sve. Mogu da ti pomognu, ali je PRVA stvar da znaš shell programiranje. Tek kad si osmislio ceo proces i testirao izvođenje kroz shell skript, onda imaš CI/CD proces.
Knjiga inače obrađuje dosta detaljno korišćenje Ansible, bavi se Docker kontejnerima. Prednost je što možeš čoveka da pozoveš na Skype pa popričaš na srpskom (dobro, ne moraš baš da ga zoveš).
[ anon70939 @ 06.11.2018. 08:04 ] @
shell koristim, pisao sam neke skriptice, ali verovatno daleko od toga da znam da programiram... :)

Za tu knjigu treba da imam to predznanje?
Da li ja uopste generalno treba da znam da programiram?

Ovo pise za koga je namenjena knjiga :)
Citat:
If you are an intermediate-level developer
[ djoka_l @ 06.11.2018. 08:38 ] @
Pa ja sam Ansible naučio (u početku) iz te knjige.

Da li razumeš šta je posao DevOps-a? Ti si posrednik između tima developera i administratora na strani korisnika koji treba da implementiraju softver i izmene koje developeri razviju.
U najmanju ruku moraš da znaš kako da kompajlraš projekat koji developeri prave.
Treba da znaš kako da svi developeri imaju isto okruženje, verovatno tako što ćeš instalirati neki repository management sofver, kao Nexus, i kako da namestiš developerima da preko njega ide maven, npm, šta god drugo što vuče biblioteke sa interneta.
Treba da znaš da radiš sa source control sistemom koji se koristi (Git, SVN, CSV, TFS, šta god se koristilo).
Treba da znaš kako da pustiš automatske testove.
Treba da znaš kako da zapakuješ softverski proizvod.
Treba da znaš kako da ga primeniš na strani korisnika. Još ako je zahtev da softver radi 24/7 treba da znaš kako da pustiš novu verziju. Znači, verovatno ti treba poznavanje reverse proxy rada.
Treba da znaš kako da skaliraš aplikaciju (kako da pustiš više instanci servisa, load balansing). Možda da naučiš kako radi Consul, kako radi Registry, kako se konfiguriše automatska detekcija servisa (na primer DNS preko Consula).

I sada ti neko kaže, recimo, da želi da koristi Jenkins u CI/CD pajplajnu. Pa čim se makneš od kompajliranja HellWorld aplikacije, ima da se napišeš skriptova za konfiguraciju deploymenta kroz Jenkins. Posle se zapitaš, što sve nisam stavio u shell skript?

Knjiga je inače tipa cookbook. Prvo ti kaže šta je cilj u koraku koji se obrađuje, a onda ti da primere skripti koje to rade što treba da se uradi u jednom koraku.

Evo, daću ti jedan primer ansible playbooka kojim sam instalirao python na Oracle Linux računare koje sam održavao:

Code:

---
- name: Install Python and pip
  hosts: all
  tasks:
  
   - name: Copy EPEL yum repo
     command: rpm -Uvh http://download.fedoraproject..../e/epel-release-7-8.noarch.rpm || true

   - name: Install python
     yum: name=python state=latest

   - name: Install pip
     yum: name=python-pip state=latest disable_gpg_check=yes

   - name: Install docker-py module
     pip: name=docker-py


Pitanje je da li ti treba poynavanje programiranja? Po meni je i ovaj ansible playbook neka vrsta programiranja.
[ anon70939 @ 06.11.2018. 10:14 ] @
Citat:
djoka_l:Da li razumeš šta je posao DevOps-a? Ti si posrednik između tima developera i administratora na strani korisnika koji treba da implementiraju softver i izmene koje developeri razviju.
U najmanju ruku moraš da znaš kako da kompajlraš projekat koji developeri prave.

Pa to i razumem da je. Odnosno mislio sam da razumem
I ovde u firmi sam učestvovao u tome i radio “ručno”. Dobijem skripte i zip i odradim update.
Ali sam mislio da je više od toga. Odnosno da sam tu da pomognem developerima oko raznih stvari u administraciji koje oni ne znaju, pa sa eto uskom saradnjom, gde kad ne znaju kako da reše nešto, pomognem im i shvatim koliko banalne stvar8 ne znaju i koče ih.
A posao DevOpsa sam kapirao kao procesiranje kompletnog razvoja softvera, preko testiranja do publisha, kroz automatizaciju od samog deplojmenta update, preko automatskog instaliranja i setupa servera, gde sam vecinu radio “rucno”
Zbog toga sam pogresno mislio da ce mi samo taj Jenkins i Ansible pomoci u tome, ali sad si me ubio prethodnim postom i gomilom termina o kojima pojma nemam :D

Dakle problem vidim da je u tome što sam radio u maloj startup firmi koja “nije imala potrebe” za tim...
[ mjanjic @ 06.11.2018. 10:30 ] @
DevOps nije isto što i Continuous Deployment (CD), mada imaju dosta zajedničkog.

DevOps uključuje poprilično samu organizaciju za koju se razvija softver, oni stalno imaju nove zahteve ili primedbe na postojeću verziju softvera, stalno zahtevaju male izmene ili nadogradnje. To zahteva od firme poprilično dobru organizaciju, upravljanje takvih zahtevima i planiranje budućih zahteva, a opet je sve to vezano za primarnu delatnost firme i potrebe unapređenja i razvoja tog posla.

DevOps sam za sebe nema smisla ako ne postoji realna potreba da se softverski proizvod tako razvija, jer je takav rad mnogo zahtevniji i skuplji.
[ djoka_l @ 06.11.2018. 10:48 ] @
Tako je ^^

Nekako mi je potpuno neprirodno da se smatra da je jedno rešenje univerzalno. "Organskije" je da se organizacija posla menja u skladu sa potrebama. Automatizuješ ono što te boli. Ne radiš isto ako imaš 5 ili 200 developera u firmi. Nemaš isti proces ako praviš WordPress sajtove ili kompleksne aplikacije.

Nekakva DevOps utopija je da se kompleksan softver ponaša kao aplikacija na Google Play. Odradiš se tvoje strane visoko automatizovani deplojment na neko mesto, a administrator sa svoje strane odradi update (ili se odradi automatsku push ili pull nove verzije) i sve automagično radi bez ikakve intervencije krajnjeg korisnika.

Između toga i ručnog budženja svake nove verzije postoji gomila međurešenja.

[Ovu poruku je menjao djoka_l dana 06.11.2018. u 13:12 GMT+1]
[ DaliborP @ 06.11.2018. 14:57 ] @
Citat:
CoyoteKG:
Jbga, na ova dva gore pitanja kad se dođe do njih i kad kažem da nemam iskustva, pitaju me "pa kako ste radili publish, deploy". I kad kažem da je to bilo preko RDP unzip fajla i upucavanje sql skripti direktno na serveru... prilično se zaprepaste.
Čak me pitali i koju metodologiju project managmenta smo koristili :D. Čuo sam samo za reči Scrum, Agile, Kanban... ali veze nemam šta je...

Nazalost, placas danak neiskustvu, tj tome sto nisi imao srece da radis u malo ozbiljnijim firmama. Doduse ima i tvoje krivice, nemoguce da nisi nikad uzeo da procitas neki clanak o Agile, Scrumu, Software Development procesima, itd....Nije ni cudo da se neko zaprepasti, imas preko 30 godina, ne znam koliko godina rada u IT-ju, a nemas pojma neke osnovne stvari. Mozes malo bolje da se spremis, makar za intervju.

Citat:
E sad... znam šta hoću, nego kojim putem da idem, šta da naučim da se ne bih brukao na tim razgovorima?
Mogu sebi luft da dam par meseci, trošeći neku ušteđevinu, a to vreme bih posvetio učenju.

Spremi se za intervjue. Znas kako, cini mi se da ces lakse pokupiti takve stvari poput procesa, agile, itd samim radom u nekoj ozbiljnijoj firmi. Mislim sta ima da se uci o Agile i Scrumu? Uzmi dan i procitaj sve na netu, dovoljno ti je.

A isto mislim i za DevOps, to nije bas stvar koja se uci, vec stice iskustvom i radom. Moj predlog je da probas da nadjes posao u iole boljoj firmi koja praktikuje sve te stvari, i tamo pokupis znanje.

[ anon70939 @ 06.11.2018. 15:58 ] @
Tačno tako.
U IT sam 20 godina ako se računa moja rad za džeparac tokom letnjih raspusta u nekom servisu.
Radio sam i 10 godina u warehousing IT, ali u ovoj branši (developing) prethodne 3.

No nigde ja ne žurim, ima vremena :D
Jeste... počeo sam da primećujem da sam mator na ovim razgovorima
[ DaliborP @ 06.11.2018. 16:34 ] @
Ma nisi ti mator, godine nisu problem, vec relevantno iskustvo. Da si pitao ovde da li je bitno za tehnicki intervju da znam sta predstavlja Software Development Process, sta je Agile ili kako se koristi Scrum, ama bas svi bi ti rekli da jeste. Koristio ili ne koristio takve stvari, moras otprilike da znas o cemu se radi, time pokazujuci svoje interesovanje za stvari van tvog opsega posla. Da ne pricam o zip deploymentima, pa to ce te redovno sahraniti na intervjuima :)

DevOps je super, danas se dosta trazi i sigurno predstavlja logican put pojedinima iz IT administracije, ali tesko je reci da postoji konkretan nacin, kurs, knjiga kako se dolazi do tog znanja, ono sto ja pratim godinama je da su obicno devops ljudi dosli upravo iz takve nekakve svastarske price najvise vezane za administraciju, linux, aws, i posle samo upali u taj profil.
[ anon70939 @ 06.11.2018. 17:20 ] @
E pa zato sam i otvorio temu, da vidim kako da dopunim to još neko znanje da iz svaštarske priče upadnem u taj profil... Jer mi se svideo rad sa developerima. Par drugara mi ima neke manje firmice, tako da i u budućnosti bi uvek bilo posla sa njima bez problema...

Verovao ili ne, svakodnevno provedem posle dugačkog radnog dana 3-4 sata, nekad i dosta više u iščitavanje koječega... Nekako "Agile, Scrum..." mi nije bio na listi prioriteta, smatrajući da ako upadnem negde, skontaću šta je to, i da je to bitno da project manager zna šta je...

[Ovu poruku je menjao CoyoteKG dana 06.11.2018. u 18:39 GMT+1]
[ Zlatni_bg @ 06.11.2018. 19:53 ] @
Cuti, ja nisam prosao izgleda ni za placenu praksu za koju sam aplicirao za DevOps poziciju u BG... :) Iako sam ispunjavao sve uslove u "must have" i imao gotovo sve "good to have". Isto nisam imao poja CI/CD jedino. Znas i sam da kao i ti imam onu besplatnu godinu AWSa i sad trenutno cepam gcloud.

Ko zna, mozda i taj posao nije za nas :) Ova placena praksa od 6 meseci mi je jedina delovala kao da cu dobiti konkretnog iskustva za DevOps, al izgleda nista.
[ bokinet @ 06.11.2018. 22:44 ] @
@CoyoteKG Dragi moj kragujevcaninu sto se tice DevOps to drugo nista nije no metodologija za razvoj software te tako nemas razloga da se sekiras. Od DevOps i silnih novih termina prave bauk ljudi koji jednostavno nisu zakacili onih tvojih 20 godina, mojih nekih godina i ostalih, te tako praznine i nesto sto im fali nadoknadjuju 'bucnim' imenima kao sto DevOps, BizDevOps, WinOps i sl. i to ne samo po BG, vec i van SR.

A posto je u pitanju metodologija to znaci da ce se ista menjati...

Da ne duljim dalje kako se ovo ne bi povelo u drugom smeru.

[ brux002 @ 07.11.2018. 07:52 ] @
Toplo preporucujem https://linuxacademy.com/devops/courses
[ DaliborP @ 07.11.2018. 08:54 ] @
Dobra kombinacija kurseva, odlican predlog.
[ djoka_l @ 07.11.2018. 09:26 ] @
Citat:
brux002:
Toplo preporucujem https://linuxacademy.com/devops/courses


Wow! Nisam znao za ovo, sjajna kolekcija. Ako se Kojot do sada nije dovoljno uplašio, ovo će da ga dotuče
[ anon70939 @ 07.11.2018. 10:45 ] @
:D
Ova tvoja knjiga mi se svidela,

a probacu i sa Linux Academy.
Pa se čujemo u ovoj temi za 12 godina kad ovo prodjem da pitam kako postati nesto novo sto bude hit, recimo CyberOps
[ brux002 @ 07.11.2018. 11:55 ] @
Ja sam uz pomoc LA samostalno polozio za AWS Solutions Architect iz prve :)
[ Zlatni_bg @ 08.11.2018. 04:53 ] @
Koliko ti je sertifikat doneo novih mogucnosti/znanja u poslu?
[ brux002 @ 08.11.2018. 09:14 ] @
Znanje je vise nastrebano pa sam ga polako primenjivao u praksi tokom vremena. Mogucnosti su odlicne - mojoj firmi je jako godilo da ima u svom timu zaposlene sa sertifikatom, time su mogli lakse da dobiju neke projekte za neke klijente i da me skuplje prodaju.
[ anon70939 @ 08.11.2018. 12:38 ] @
ja nisam baš naštrebao, prilično mi je jasno ovo što sam do sada naučio. po ovoj knjizi gore koju sam okačio, i po kojekakvim testovima ispada da bih mogao da položim bez problema, ali nikako to da uradim. Svakog petka je valjda polaganje u BG, ali svaki put pred petak ja ono "ajd još malo samo ovo da pročitam" pa odlažem za sledeći petak, pa onda iskrsnu neke druge stvari, pošto mi je u ovom momentu vrlo turbulentan period života :).

E sad... cert kao cert mislim da uopšte ne potvrđuje znanje, baš ni malo.
Jer sa tim znanjem kad odem na UpWork i pogledam poslove vezane za AWS, mogu da se javim na samo 10% oglasa. A to mi je neko merilo "znanja"
[ brux002 @ 08.11.2018. 14:09 ] @
Citat:
E sad... cert kao cert mislim da uopšte ne potvrđuje znanje, baš ni malo.


Slazem se ali klijenti iz nekog razloga mnogo vise placaju ljude koji imaju polozene certifikate :)
[ anon70939 @ 08.11.2018. 14:17 ] @
To ne sporim bas ni malo :).
[ Zlatni_bg @ 11.11.2018. 00:25 ] @
https://www.humblebundle.com/b...&hmb_campaign=tile_index_5


Jeftino a ima materijala :)
[ mali_od_palube @ 13.11.2018. 20:39 ] @
Nisam (još) pročitao, ali na više strana sam čuo preporuku za lika i njegovu knjigu:
https://martinfowler.com/bliki/ContinuousDelivery.html

A u potražnji za devops resursima sam naišao i na sledeću stranicu, nadam se da može biti od pomoći:
http://www.devopsbookmarks.com/


S druge strane koliko sam skontao gugl to radi na veliko:
https://landing.google.com/sre/

p.s. imam par resursa u ebook/pdf, javi mi se u pm.

Edit: slomljeni url.
[ anon70939 @ 16.11.2018. 16:06 ] @
Položio danas za cert "AWS Certified Solutions Architect - Associate" :P

A javljam ti se na pp za knjige, pošto od danas krećem to da gazim :)
Verovatno ću LinuxAcademy da se pretplatim na godinu dana
[ anon70939 @ 23.11.2018. 10:09 ] @
Možda nekom bude korisno,

u toku je Black Friday popust na LA.