Què és la metodologia DevOps i qui la necessita

Descobrim quina és l'essència de la metodologia i a qui se'n pot beneficiar.

També parlarem dels especialistes de DevOps: les seves tasques, sous i habilitats.

Què és la metodologia DevOps i qui la necessita
Sessió De Fotos Matt Moore /Flickr/CC BY-SA

Què és DevOps

DevOps és una metodologia de desenvolupament de programari la tasca de la qual és establir la interacció entre programadors i administradors de sistemes d'una empresa. Si els especialistes informàtics dels diferents departaments no entenen les tasques dels altres, es retarda el llançament de noves aplicacions i actualitzacions.

DevOps crea un cicle de desenvolupament "perfecte", ajudant així a accelerar el llançament d'un producte de programari. L'acceleració s'aconsegueix mitjançant la introducció de sistemes d'automatització. A més, els programadors comencen a participar en la configuració dels servidors i la recerca d'errors, per exemple, poden escriure proves automatitzades.

Això millora la interacció entre departaments. Els empleats comencen a entendre millor per quines etapes passa un producte de programari abans que arribi a les mans de l'usuari.

Quan un desenvolupador entén a què s'enfronta un administrador quan configura un servidor, intentarà suavitzar els possibles "cantons afilats" del codi. Això redueix el nombre d'errors en desplegar una aplicació, segons les estadístiques disminueix unes cinc vegades.

Qui necessita i no necessita la metodologia

Molts Els experts informàtics creuenque DevOps beneficiarà qualsevol organització que desenvolupi programari. Això és cert encara que l'empresa sigui un simple consumidor de serveis informàtics i no desenvolupi les seves pròpies aplicacions. En aquest cas, implementar una cultura DevOps us ajudarà a centrar-vos en la innovació.

L'excepció maquillatge startups, però aquí tot depèn de l'escala del projecte. Si el vostre objectiu és llançar un producte mínim viable (MVP) per provar una idea nova, podeu prescindir de DevOps. Per exemple, el fundador de Groupon va començar a treballar en el servei manualment publicat totes les ofertes al lloc web i comandes recollides. No va utilitzar cap eina d'automatització.

Només té sentit implementar metodologia i eines d'automatització quan l'aplicació comença a guanyar popularitat. Això ajudarà a racionalitzar els processos empresarials i accelerar el llançament d'actualitzacions.

Com implementar DevOps

A continuació es mostren algunes recomanacions per canviar a una nova metodologia.

Identificar problemes en els processos empresarials. Abans d'implementar la metodologia, destaca els objectius i problemes de l'organització. L'estratègia de transició a DevOps dependrà d'ells. Per fer-ho, feu una llista de preguntes, per exemple:

  • Què triga més temps a l'hora d'actualitzar el programari?
  • És possible automatitzar aquest procés?
  • L'estructura de l'organització afecta això?

Obteniu més informació sobre com identificar problemes en una organització es pot llegir als llibres «Projecte "Phoenix""I"Guia DevOps» dels autors de la metodologia.

Canviar la cultura a l'empresa. És important convèncer tots els empleats perquè canviïn les seves maneres habituals de treballar i ampliïn el seu ventall de competències. Per exemple, a Facebook tots els programadors resposta per a tot el cicle de vida de l'aplicació: des de la codificació fins a la implementació. A més, Facebook no té un departament de proves independent: les proves les escriuen els mateixos desenvolupadors.

Comença petit. Trieu el procés que requereixi més temps i esforç en publicar actualitzacions i automatitzeu-lo. Això potser procés de prova o desplegament d'aplicacions. Experts aconsellar El primer pas és implementar eines de control de versions distribuïdes. Faciliten la gestió de les fonts. Entre aquestes solucions, les més famoses són Git, Mercurial, Subversion (SVN) i CVS.

També val la pena parar atenció als sistemes d'integració contínua encarregats de muntar i provar el producte final. Exemples d'aquestes eines: Jenkins, TeamCity i Bamboo.

Avaluar les millores. Desenvolupeu mètriques de rendiment per a les solucions implementades i creeu una llista de verificació. Les mètriques poden incloure la freqüència de llançament, el temps dedicat a treballar en les funcions del programari i el nombre d'errors al codi. Comenteu els resultats no només amb els directius, sinó també amb la resta de l'equip implicat en el projecte. Pregunteu quines eines falten. Tingueu en compte aquestes peticions a l'hora d'optimitzar encara més els vostres processos.

Crítica a DevOps

Encara que la metodologia ajuda les organitzacions poden prendre decisions més ràpides pel que fa al desenvolupament d'aplicacions, talls el nombre d'errors en el programari i anima els empleats a aprendre coses noves, també té crítiques.

Hi opinióque els programadors no haurien d'entendre els detalls del treball dels administradors del sistema. Suposadament, DevOps porta al fet que en comptes d'especialistes en desenvolupament o administració, l'empresa té persones que ho entenen tot, però superficialment.

També es creu que DevOps no funciona amb mala gestió. Si els equips de desenvolupament i d'administració no tenen objectius comuns, són els responsables els responsables de no organitzar la comunicació entre els equips. Per resoldre aquest problema, el que cal no és una nova metodologia, sinó un sistema d'avaluació dels directius basat en el feedback dels subordinats. Podeu llegir-lo aquí, quines preguntes s'han d'incloure als formularis d'enquesta dels empleats.

Què és la metodologia DevOps i qui la necessita
Sessió De Fotos Ed Ivanushkin /Flickr/CC BY-SA

Qui és un enginyer de DevOps

Un enginyer de DevOps implementa la metodologia DevOps. Sincronitza totes les etapes de la creació d'un producte de programari: des de l'escriptura de codi fins a la prova i el llançament de l'aplicació. Aquest especialista controla els departaments de desenvolupament i administració, a més d'automatitzar l'execució de les seves tasques mitjançant la introducció de diverses eines de programari.

El truc d'un enginyer de DevOps és que combina moltes professions: administrador, desenvolupador, provador i gestor.

Joe Sanchez, evangelista de DevOps a VMware, una empresa de programari de virtualització, assenyalat una sèrie d'habilitats que ha de tenir un enginyer de DevOps. A més del coneixement evident de la metodologia DevOps, aquesta persona hauria de tenir experiència en l'administració de sistemes operatius Windows i Linux i experiència treballant amb eines d'automatització com ara CuinertitellaAnsible. També hauria de ser capaç d'escriure scripts i codi en un parell d'idiomes i entendre les tecnologies de xarxa.

Un enginyer de DevOps és responsable de qualsevol automatització de les tasques relacionades amb la configuració i el desplegament d'aplicacions. El monitoratge del programari també cau sobre les seves espatlles. Per resoldre aquests problemes, utilitza diversos sistemes de gestió de configuracions, solucions de virtualització i eines al núvol per equilibrar els recursos.

Qui està contractant

Els enginyers de DevOps poden beneficiar a qualsevol organització que desenvolupi aplicacions o gestioni un gran nombre de servidors. Enginyers de DevOps estan contractant Gegants informàtics com Amazon, Adobe i Facebook. També treballen a Netflix, Walmart i Etsy.

No contractar Els enginyers de DevOps només són startups. La seva feina és llançar un producte mínim viable per provar una idea nova. En la majoria dels casos, les startups poden prescindir de DevOps.

Quant paga

Enginyers de DevOps guanyar més que ningú del sector. Els ingressos mitjans d'aquests especialistes a tot el món oscil·len entre els 100 i els 125 mil dòlars anuals.

Als EUA ells obtenir 90 mil dòlars anuals (500 mil rubles al mes). Al Canadà ells pagar 122 mil dòlars anuals (670 mil rubles al mes), i al Regne Unit - 67,5 mil lliures esterlines a l'any (490 mil rubles al mes).

Pel que fa a Rússia, les empreses de Moscou llest pagar als especialistes de DevOps entre 100 i 200 mil rubles al mes. A Sant Petersburg, els empresaris són una mica més generosos: ofereixen entre 160 i 360 mil rubles al mes. A les regions, els sous es cotitzen entre 100 i 120 mil rubles al mes.

Com convertir-se en un especialista en DevOps

DevOps és una direcció relativament nova en TI, de manera que no hi ha una llista establerta de requisits per als enginyers de DevOps. A les vacants, entre els requisits per a aquesta plaça podeu trobar tant les habilitats d'administració de Debian com CentOS i la capacitat de treballar amb unitats de disc. Matrius RAID.

En base a això, podem concloure que, en primer lloc, un enginyer de DevOps ha de tenir una bona perspectiva tècnica. És important que aquesta persona aprengui constantment noves eines i tecnologies.

La manera més fàcil de convertir-se en enginyer DevOps seria un administrador o desenvolupador de sistemes. Ja tenen una sèrie d'habilitats que només cal desenvolupar. La tasca principal és millorar el conjunt mínim de coneixements en DevOps, entendre com treballar amb eines d'automatització i omplir els buits en les habilitats d'administració, programació i virtualització.

Per entendre on encara falta el coneixement, podeu utilitzar mini-Viquipèdia a GitHub o mapa mental. També els residents de Hacker News recomanar llegir llibres "Projecte "Phoenix""I"Guia DevOps" (que hem esmentat més amunt) i "Filosofia DevOps. L'art de la gestió informàtica» sota el segell d'O'Reilly Media.

També us podeu subscriure Butlletí setmanal de Devops, llegiu articles d'actualitat portal DZone i comenceu a comunicar-vos amb els enginyers de DevOps Slack xat. També val la pena consultar els cursos gratuïts Udacity o EDX.

Publicacions del nostre blog:



Font: www.habr.com

Afegeix comentari