Devlopè yo soti nan Mas, admin yo soti nan Venis

Devlopè yo soti nan Mas, admin yo soti nan Venis

Koyensidans yo o aza, e tout bon li te sou yon lòt planèt...

Mwen ta renmen pataje twa istwa siksè ak echèk sou fason yon pwomotè backend travay nan yon ekip ak admin.

Yon istwa.
Web estidyo, kantite anplwaye yo ka konte ak yon sèl men. Jodi a ou se yon designer layout, demen ou se yon backender, apre demen ou se yon admin. Sou yon bò, ou ka jwenn anpil eksperyans. Nan lòt men an, gen yon mank de konpetans nan tout domèn. Mwen toujou sonje premye jou travay la, mwen toujou vèt, bòs la di: "Open putty," men mwen pa konnen ki sa li ye. Kominikasyon ak admin yo eskli, paske ou se yon admin tèt ou. Ann konsidere avantaj ak dezavantaj sitiyasyon sa a.

+ Tout pouvwa se nan men ou.
+ Pa gen okenn nesesite sipliye nenpòt moun pou aksè nan sèvè a.
+ Tan reyaksyon rapid nan tout direksyon.
+ Amelyore konpetans byen.
+ Gen yon konpreyansyon konplè sou achitekti pwodwi a.

- Gwo responsablite.
— Risk pou kraze pwodiksyon an.
— Li difisil pou w yon bon espesyalis nan tout domèn.

Pa enterese, ann kontinye

Dezyèm istwa a.
Gwo konpayi, gwo pwojè. Gen yon depatman administrasyon ki gen 5-7 anplwaye ak plizyè gwoup devlopman. Lè ou vin travay nan yon konpayi konsa, chak admin panse ke ou pa t 'vin isit la pou travay sou yon pwodwi, men pou kraze yon bagay. Ni NDA ki siyen an ni seleksyon an nan entèvyou a pa endike otreman. Non, mesye sa a vin isit la ak ti men sal li pou kraze pwodiksyon bo nou. Se poutèt sa, ak yon moun konsa ou bezwen yon minimòm de kominikasyon; omwen, ou ka jete yon fich nan repons. Pa reponn kesyon sou achitekti pwojè a. Li rekòmande pou pa bay aksè jiskaske dirijan ekip la mande. Epi lè l mande l, l ap remèt li ak menm mwens privilèj pase sa yo te mande. Prèske tout kominikasyon ak admin sa yo absòbe twou nwa ant depatman devlopman ak depatman administrasyon an. Li enposib pou rezoud pwoblèm san pèdi tan. Men, ou pa ka vini an pèsòn - admin yo twò okipe 24/7. (Kisa w ap fè tout tan?) Kèk karakteristik pèfòmans:

  • Tan deplwaman mwayèn nan pwodiksyon se 4-5 èdtan
  • Tan maksimòm deplwaman nan pwodiksyon 9 èdtan
  • Pou yon pwomotè, yon aplikasyon nan pwodiksyon se yon bwat nwa, menm jan ak sèvè pwodiksyon an tèt li. Konbyen ki genyen an total?
  • Kalite ki ba nan degaje, erè souvan
  • Pwomotè a pa patisipe nan pwosesis lage a

Oke, ki sa mwen te espere, nan kou, nouvo moun yo pa gen dwa antre nan pwodiksyon. Oke, oke, lè nou pran pasyans, nou kòmanse jwenn konfyans lòt moun. Men, pou kèk rezon, bagay yo pa tèlman senp ak admin.

Lwa 1. Admin la se envizib.
Jou lage, pwomotè ak admin pa kominike. Admin pa gen kesyon. Men ou konprann poukisa pita. Administratè a se yon moun ki gen prensip, li pa gen mesaje, li pa bay pèsonn nimewo telefòn li, li pa gen pwofil sou rezo sosyal yo. Pa gen menm foto li nenpòt kote, kisa ou sanble mesye? Nou chita ak manadjè responsab la pou apeprè 15 minit nan dezòd, ap eseye etabli kominikasyon ak sa a Voyager 1, Lè sa a, yon mesaj parèt nan imèl antrepriz la ke li te fini. Eske nou pral koresponn pa lapòs? Poukisa? Pratik, pa vre? Oke, oke, ann refwadi. Pwosesis la deja sou pye, pa gen okenn tounen dèyè. Li mesaj la ankò. "Mwen fini". Kisa ou te fini? Ki kote? Ki kote mwen ta dwe chèche pou ou? Isit la ou konprann poukisa 4 èdtan pou lage se nòmal. Nou jwenn yon chòk devlopman, men nou fini liberasyon an. Pa gen okenn dezi ankò pou lage.

Lwa 2. Pa vèsyon sa a.
Pwochen liberasyon an. Èske w gen eksperyans, nou kòmanse kreye lis lojisyèl ki nesesè yo ak bibliyotèk pou sèvè a pou administratè, ki endike vèsyon yo pou kèk. Kòm toujou, nou resevwa yon siyal radyo fèb ke admin la te fini yon bagay la. Tès regresyon an kòmanse, ki li menm pran apeprè inèdtan. Tout sanble ap travay, men gen yon sèl ensèk kritik. Fonksyonalite enpòtan pa travay. Kèk èdtan kap vini yo te danse ak tanbourin, fòtin sou lakou kafe, ak yon revizyon detaye sou chak moso nan kòd. Administratè a di li te fè tout bagay. Aplikasyon an ekri pa devlopè kwochi pa travay, men sèvè a ap travay. Nenpòt kesyon pou li? Nan fen yon èdtan, nou jwenn admin la voye vèsyon bibliyotèk la sou sèvè pwodiksyon an nan chat la ak bengo - se pa youn nan nou bezwen an. Nou mande administratè a enstale vèsyon ki nesesè a, men an repons nou resevwa ke li pa ka fè sa akòz absans vèsyon sa a nan manadjè a pake OS. Isit la, soti nan rekreyasyon yo nan memwa li, manadjè a sonje ke yon lòt admin te deja rezoud pwoblèm sa a pa tou senpleman rasanble vèsyon ki nesesè yo alamen. Men non, nou pap fè sa. Règleman yo entèdi. Karl, nou te chita isit la pou plizyè èdtan, ki tan limit la?! Nou jwenn yon lòt chòk ak yon jan kanmenm fini liberasyon an.

Lwa 3, kout
Tikè ijan, fonksyonalite kle pa travay pou youn nan itilizatè yo nan pwodiksyon an. Nou pase kèk èdtan pike ak tcheke. Nan yon anviwònman devlopman, tout bagay ap travay. Gen yon konpreyansyon klè ke li ta yon bon lide yo gade nan php-fpm mòso bwa yo. Nan moman sa a pa te gen okenn sistèm log tankou ELK oswa Prometheus sou pwojè a. Nou louvri yon tikè nan depatman administrasyon an pou yo bay aksè a php-fpm mòso bwa yo sou sèvè a. Isit la ou bezwen konprann ke nou ap mande aksè pou yon rezon, ou pa sonje sou twou nwa a ak admin yo te okipe 24/7? Si ou mande yo gade mòso bwa yo tèt yo, Lè sa a, sa a se yon travay ki gen yon priyorite "pa nan lavi sa a". Tikè a te kreye, nou te resevwa yon repons enstantane nan men chèf depatman administrasyon an: "Ou pa ta dwe bezwen aksè nan mòso bwa pwodiksyon, ekri san pinèz." Yon rido.

Lwa 4 ak pi lwen
Nou toujou ap kolekte plizyè douzèn pwoblèm nan pwodiksyon, akòz diferan vèsyon bibliyotèk, lojisyèl ki pa konfigirasyon, chaj sèvè ki pa prepare, ak lòt pwoblèm. Natirèlman, gen tou pinèz kòd, nou pa pral blame admin yo pou tout peche yo, nou pral jis mansyone yon lòt operasyon tipik pou pwojè sa a. Nou te gen anpil travayè background ki te lanse atravè sipèvizè a, ak kèk scripts te dwe ajoute nan cron. Pafwa menm travayè sa yo te sispann travay. Chaj la sou sèvè keu la te grandi nan vitès zèklè, ak itilizatè tris gade loader a k ap vire. Pou byen vit ranje travayè sa yo, li te ase tou senpleman rekòmanse yo, men ankò, sèlman yon administratè te kapab fè sa. Pandan ke yon operasyon debaz yo te fèt, yon jounen antye te kapab pase. Isit la, nan kou, li vo sonje ke pwogramasyon kwochi ta dwe ekri travayè yo pou yo pa aksidan, men lè yo tonbe, li ta bon konprann poukisa, ki se pafwa enposib akòz mank de aksè a pwodiksyon, nan kou, ak kòm yon konsekans mank de mòso bwa soti nan pwomotè a.

Transfigirasyon.
Lè nou te andire tout bagay sa yo pou yon bon bout tan, ansanm ak ekip la nou te kòmanse dirije nan yon direksyon ki te gen plis siksè pou nou. Pou rezime, ki pwoblèm nou te rankontre?

  • Mank bon jan kalite kominikasyon ant devlopè ak depatman administrasyon an
  • Administratè yo, li sanble (!), pa konprann ditou ki jan aplikasyon an estriktire, ki depandans li genyen ak ki jan li fonksyone.
  • Devlopè yo pa konprann ki jan anviwònman pwodiksyon an ap travay epi, kòm yon rezilta, yo pa ka byen reponn a pwoblèm.
  • Pwosesis deplwaman an pran twò lontan.
  • Degaje enstab.

Kisa nou fè?
Pou chak lage, yo te pwodwi yon lis Release Notes, ki enkli yon lis travay ki bezwen fè sou sèvè a pou pwochen lage a travay. Lis la te genyen plizyè seksyon, travay ki ta dwe fèt pa administratè a, moun ki responsab pou lage a, ak pwomotè a. Devlopè yo te resevwa aksè ki pa rasin nan tout serveurs pwodiksyon, ki te akselere devlopman an jeneral ak rezoud pwoblèm an patikilye. Devlopè yo tou gen yon konpreyansyon sou ki jan pwodiksyon travay, ki sèvis li divize an, ki kote ak konbyen kopi koute. Gen kèk nan chay konba yo te vin pi klè, ki san dout afekte bon jan kalite a nan kòd la. Kominikasyon pandan pwosesis lage a te fèt nan chat youn nan mesaje enstantane yo. Premyèman, nou te gen yon boutèy demi lit tout aksyon yo, epi dezyèmman, kominikasyon te fèt nan yon anviwònman ki pi pre. Gen yon istwa nan aksyon yo te plis pase yon fwa pèmèt nouvo anplwaye yo rezoud pwoblèm pi vit. Li se yon paradoks, men sa a souvan te ede admin yo tèt yo. Mwen pa pral antreprann di pou asire w, men li sanble ke admin yo te kòmanse konprann plis ki jan pwojè a fonksyone ak ki jan li ekri. Pafwa nou menm pataje kèk detay youn ak lòt. Tan an mwayèn lage te redwi a yon èdtan. Pafwa nou te fini nan 30-40 minit. Nimewo a nan pinèz diminye anpil, si se pa diz fwa. Natirèlman, lòt faktè tou enfliyanse rediksyon nan tan lage, tankou autotests. Apre chak lage, nou te kòmanse fè retrospektiv. Pou tout ekip la gen yon lide sou sa ki nouvo, sa ki chanje, ak sa ki te retire. Malerezman, admins pa t 'toujou vin jwenn yo, byen, admin yo okipe... Gen satisfaksyon travay mwen kòm yon pwomotè san dout ogmante. Lè ou ka byen vit rezoud prèske nenpòt pwoblèm ki nan zòn ou nan konpetans, ou santi ou sou tèt. Apre sa, mwen pral konprann ke nan yon sèten mezi nou te entwodui yon kilti devops, pa konplètman, nan kou, men menm ke kòmansman transfòmasyon an te enpresyonan.

Istwa twa
Demaraj. Yon admin, ti depatman devlopman. Lè m rive mwen se yon zewo konplè, paske... Mwen pa gen aksè nenpòt kote eksepte nan lapòs la. Nou ekri admin la epi mande aksè. Anplis de sa, gen enfòmasyon ke li se okouran de nouvo anplwaye a ak bezwen an bay logins / modpas. Yo bay aksè nan depo a ak VPN. Poukisa bay aksè a wiki, teamcity, rundesk? Bagay initil pou yon moun ki te rele pou ekri tout pati dèyè. Se sèlman apre yon tan nou jwenn aksè a kèk zouti. Arive a, nan kou, te rankontre ak defyans. Mwen ap eseye tou dousman jwenn yon santiman sou ki jan enfrastrikti pwojè a ap travay atravè chat ak kesyon dirijan. Fondamantalman mwen pa rekonèt anyen. Pwodiksyon se menm bwat nwa tankou anvan. Men, plis pase sa, menm sèvè sèvè yo itilize pou tès yo se yon bwat nwa. Nou pa ka fè anyen lòt pase deplwaye yon branch nan Git la. Nou menm tou nou pa ka configured aplikasyon nou an tankou fichye .env. Aksè pou operasyon sa yo pa akòde. Ou gen sipliye pou jwenn yon liy chanje nan konfigirasyon aplikasyon w lan sou sèvè tès la. (Gen yon teyori ke li enpòtan anpil pou admin yo santi tèt yo enpòtan sou pwojè a; si yo pa mande yo chanje liy nan konfigirasyon yo, yo tou senpleman pa pral bezwen). Oke, kòm toujou, èske li pa pratik? Sa a byen vit vin raz, apre yon konvèsasyon dirèk ak administratè a nou jwenn ke devlopè yo te fèt yo ekri move kòd, se pa nati moun ki enkonpetan epi li pi bon kenbe yo lwen pwodiksyon an. Men, isit la tou soti nan serveurs tès, jis nan ka. Konfli a ap ogmante byen vit. Pa gen okenn kominikasyon ak admin la. Sitiyasyon an vin pi grav pa lefèt ke li pou kont li. Sa ki anba la a se yon foto tipik. Lage. Sèten fonksyonalite pa travay. Li pran nou anpil tan pou nou konnen sa k ap pase, divès lide devlopè yo jete nan chat la, men admin nan yon sitiyasyon konsa anjeneral sipoze ke devlopè yo se blame. Lè sa a, li ekri nan chat la, tann, mwen korije l '. Lè yo mande yo kite yon istwa dèyè ak enfòmasyon sou ki pwoblèm nan te, nou resevwa eskiz toksik. Tankou, pa kole nen ou kote li pa fè pati. Devlopè yo dwe ekri kòd. Sitiyasyon an lè anpil mouvman kò nan yon pwojè ale nan yon sèl moun epi sèlman li gen aksè a fè operasyon yo tout moun bezwen se trè tris. Yon moun konsa se yon kou boutèy terib. Si lide Devops fè efò pou redwi tan pou mache, lè sa a moun sa yo se pi move lènmi lide Devops. Malerezman, rido a fèmen isit la.

PS Apre mwen fin pale yon ti kras sou devlopè vs admin nan chat ak moun, mwen te rankontre moun ki pataje doulè mwen an. Men tou te gen moun ki te di ke yo pa t janm rankontre anyen konsa. Nan yon konferans devops, mwen te mande Anton Isanin (Alfa Bank) ki jan yo te fè fas ak pwoblèm nan kou boutèy la nan fòm lan nan admin, kote li te di: "Nou ranplase yo ak bouton." By wout la podcast ak patisipasyon li. Mwen ta renmen kwè ke gen anpil plis bon admin pase lènmi. Ak repons lan se wi, foto a nan kòmansman an se yon korespondans reyèl.

Sous: www.habr.com

Add nouvo kòmantè