DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады

DevOps инженерлері - процестерді автоматтандыруды білетін және әзірлеушілер, QA және менеджерлер қалай жұмыс істейтінін білетін көп салалы мамандар. Олар бағдарламалауды біледі, күрделі құралдарды тез игереді және бейтаныс тапсырмаға тап болған кезде ұтылмайды. DevOps инженерлері аз - олар оларға 200-300 мың рубль төлеуге дайын, бірақ әлі де бос орындар көп.

Дмитрий Кузьмин DevOps нақты немен айналысатынын және мұндай лауазымға түсу үшін нені оқу керектігін түсіндіреді. Бонус: кітаптарға, бейнелерге, арналарға және кәсіби қауымдастыққа маңызды сілтемелер.

DevOps инженері не істейді?

DevOps жағдайында терминдерді шатастырмау маңызды. Шындығында, DevOps - бұл белгілі бір қызмет саласы емес, кәсіби философия. Бұл әзірлеушілерге, тестерлерге және жүйелік әкімшілерге автоматтандыру және үздіксіздік арқылы тезірек және тиімдірек жұмыс істеуге көмектесетін әдістеме.

Тиісінше, DevOps инженері - бұл әдістемені жұмыс процесіне енгізетін маман:

  • Жоспарлау кезеңінде DevOps инженері қолданбаның қандай архитектураны қолданатынын, оның масштабтауын және оркестрлік жүйені таңдауды шешуге көмектеседі.
  • Содан кейін ол серверлерді орнатады, автоматтандырылған тексеру және кодты жүктеу және қоршаған ортаны тексеру.
  • Содан кейін ол тестілеуді автоматтандырады және орналастыру мәселелерін шешеді.
  • Шығарғаннан кейін пайдаланушылардан кері байланыс жинау және жақсартуларды енгізу маңызды. DevOps пайдаланушылардың бұл жақсартуларды байқамайтынына және жаңарту процесі үздіксіз болатынына көз жеткізеді.
  • Сонымен қатар, ол әзірлеушілердің, QA, жүйелік әкімшілер мен менеджерлердің жұмыс жүйесін жақсартуға көмектесетін ондаған мәселелерді шешеді.

Жоғарыда жазылғанның бәрі идеалға жақын жобаларда болады. Нақты әлемде жоспарлауды жіберіп алған, архитектурасы дұрыс емес жобаны бастау керек және барлық жобалар тоқтаған кезде автоматтандыру туралы ойлана бастадыңыз. Осы проблемалардың барлығын түсіну, оларды шешу және барлығын жұмыс істеу - DevOps маманының негізгі дағдысы.

Дарындылар нарығында шатасу бар. Кейде бизнес жүйелік инженер, құрылыс инженері немесе басқа біреу лауазымына DevOps инженерлерін іздейді. Компанияның көлеміне және бағытына байланысты жауапкершіліктер де өзгереді - бір жерде олар кеңес беру үшін адам іздейді, бір жерде барлығын автоматтандыруды сұрайды, ал бір жерде бағдарламалауды білетін жүйелік әкімшінің кеңейтілген функцияларын орындауды талап етеді.

Мамандыққа неден бастау керек

Мамандыққа түсу алдын ала дайындықты қажет етеді. Сіз IT туралы ештеңе түсінбей, нөлден бастап курстарды ала алмайсыз және кіші деңгейге дейін үйрене алмайсыз. Қажетті техникалық ақпарат:

  • Жүйе әкімшісі, операциялар немесе тестілеу маманы ретінде алты ай немесе одан да көп жұмыс істесеңіз өте қолайлы. Немесе, кем дегенде, қолданбалардың қалай басталатыны, олар қандай ортада дами алатыны және қатені көрсеңіз не істеу керектігі туралы түсінікке ие болыңыз. Егер сізде жұмыс тәжірибеңіз болмаса, Linux әкімшілігі бойынша кез келген курстан өтіп, үйдегі құрылғыңызда болып жатқанның бәрін қайталаңыз.
  • Желілік технологиялардың қалай жұмыс істейтінін түсіну - жергілікті және ауқымды желілерді орнатуды, конфигурациялауды және басқаруды үйреніңіз.
  • Бағдарламалаудың қалай және қандай жұмыс істейтінін қараңыз - Python немесе Go тілінде бірнеше сценарий жазыңыз, OOP (объектіге бағытталған бағдарламалау) принциптерін түсінуге тырысыңыз, өнімді әзірлеудің жалпы циклі туралы оқыңыз.
  • Техникалық ағылшын тілін білу пайдалы болады - еркін тақырыптарда сөйлесудің қажеті жоқ, құжаттама мен интерфейстерді оқи білу жеткілікті.

Тізімде келтірілгендердің барлығын егжей-тегжейлі білу қажет емес; DevOps-ті үйренуді бастау үшін дайындықтың ең төменгі деңгейі жеткілікті. Егер сізде осындай техникалық білім болса, курстарға тіркеліп көріңіз.

DevOps нені білуі керек

Жақсы DevOps инженері - бұл өте кең көзқарасы бар көп салалы маман. Табысты жұмыс істеу үшін сізге бірден бірнеше IT саласын түсіну керек болады.

Даму

DevOps әзірлеушілерге серверге кодты орнатуға көмектесетін сценарий жазады. Мәліметтер базасының жауап беру қабілетін «ұшу кезінде» сынайтын бағдарлама жасайды. Нұсқаны басқаруға арналған қосымшаны жазады. Соңында, серверде пайда болуы мүмкін әлеуетті әзірлеу мәселесіне назар аударыңыз.

Мықты DevOps маманы автоматтандыруға жарамды бірнеше тілді біледі. Ол оларды жақсы түсінбейді, бірақ ол шағын бағдарламаны тез жаза алады немесе басқа біреудің кодын оқи алады. Егер сіз бұрын ешқашан дамуды кездестірмеген болсаңыз, Python-дан бастаңыз - оның қарапайым синтаксисі бар, бұлттық технологиялармен жұмыс істеу оңай, сонымен қатар көптеген құжаттар мен кітапханалар бар.

Операциялық жүйелер

Әрбір жүйенің әрбір нұсқасының барлық мүмкіндіктерін білу мүмкін емес - мұндай жаттығуларға мыңдаған сағат жұмсауға болады және оның пайдасы болмайды. Оның орнына жақсы DevOps кез келген ОЖ-де жұмыс істеудің жалпы принциптерін түсінеді. Бос орындарда айтылғандарға қарағанда, қазір көпшілігі Linux жүйесінде жұмыс істейді.

Жақсы инженер жобаны қай жүйеде орналастыру жақсы екенін, қандай құралдарды пайдалану керектігін және іске асыру немесе пайдалану кезінде қандай ықтимал қателер пайда болуы мүмкін екенін түсінеді.

Бұлттар

Бұлтты технологиялар нарығы өсуде жылына орта есеппен 20-25% - мұндай инфрақұрылым кодты тестілеу, компоненттерден қосымшаларды жинау және пайдаланушыларға жаңартуларды жеткізу операцияларын автоматтандыруға мүмкіндік береді. Жақсы DevOps толық бұлтты және гибридті шешімдерді түсінеді.

Инженерлер үшін стандартты талаптарға әдетте GCP, AWS және Azure кіреді.

Бұған CI/CD құралдарын меңгеру кіреді. Әдетте, Дженкинс үздіксіз интеграция үшін пайдаланылады, бірақ аналогтар сынап көруге тұрарлық. Олардың көпшілігі бар, мысалы, Buddy, TeamCity және Gitlab CI. Терраформды зерттеу пайдалы болады - бұл бұлттардағы инфрақұрылымды қашықтан орнатуға және конфигурациялауға көмектесетін декларативті құрал. ЖӘНЕ ОЖ кескіндерін автоматты түрде жасау үшін қажет Packer.

Оркестрлік жүйелер және микросервистер

Микросервис архитектурасының көптеген артықшылықтары бар - тұрақтылық, жылдам масштабтау мүмкіндігі, жеңілдету және қайта пайдалану. DevOps микросервистердің қалай жұмыс істейтінін түсінеді және ықтимал проблемаларды болжай алады.

Докер мен Кубернетесті жақсы біледі. Контейнерлердің қалай жұмыс істейтінін, олардың кейбіреулерін жалпы жүйе үшін салдарсыз өшіре алатындай жүйені қалай құру керектігін түсінеді. Мысалы, ол Ansible көмегімен Kubernetes кластерін құра алады

Болашақ DevOps тағы не істеуі керек?

DevOps инженері үшін пайдалы болуы мүмкін құралдар тізімі шексіз. Кейбіреулер жобаны ұйымдастыруда жұмыс істейді, басқалары уақытының көп бөлігін орналастыру мен тестілеуді автоматтандыруға жұмсайды, ал басқалары конфигурацияны басқару тиімділігін арттырады. Оның барысында қай жерді қазу керек, қандай жобалардың пайдалы екені белгілі болады.

Бастапқыда көмектесетін тағы бір шағын минимум:

  • Git және Github қалай жұмыс істейтінін түсінбесеңіз, түсініңіз. Серверіңізге GitLab орнатыңыз.
  • JSON және YAML белгілеу тілдерімен танысыңыз.
  • Орнатыңыз және дерекқорда жұмыс істеп көріңіз - тек MySQL ғана емес, сонымен қатар NoSQL. MongoDB қолданып көріңіз.
  • Бір уақытта бірнеше серверлердің конфигурациясын қалай басқару керектігін түсініңіз. Мысалы, Ansible пайдалану.
  • Жүктеме мониторингі мен журналдарды бірден орнатыңыз. Prometheus, Grafana, Alertmanager комбинациясын қолданып көріңіз.
  • Әртүрлі тілдерге арналған орналастырудың ең жақсы шешімдерін іздеңіз - сізге оқу немесе жұмыс жобасында танысу, енгізу және түсіну қажет.

Неліктен DevOps-ті қазірден бастау керек

Нарықта DevOps инженерлері үшін кадрлар тапшылығы бар. Бұл шартты түрде бос жұмыс орындарының саны мен сапасымен расталады:

  • Ресейде тек HeadHunter-де осы кілт сөз үшін 2 мыңнан астам жұмыс орны үнемі қолжетімді.
  • Ал 1 адам ғана түйіндемесін жариялаған.

Түйіндемені жариялау жұмысты белсенді іздеуді білдірмейтінін ескерсек, бір маман үшін екі, тіпті үш бос орын бар екені белгілі болды - бұл жағдай танымал веб-әзірлеу нарығында да жоқ. Мұнда Habr және Telegram арналарындағы бос орындарды қосыңыз - мамандардың жетіспеушілігі өте үлкен.

DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады
Өтініш берушілердің жалақы талаптарына назар аударыңыз

DevOps әлемде сұранысқа ие емес - егер сіз АҚШ-қа немесе Еуропаға қоныс аударғыңыз келсе, онда тек порталда Glassdoor Мұндай мамандарды 34 мыңнан астам компания іздейді. Жиі қойылатын талаптарға 1-3 жылдық тәжірибе, бұлттармен жұмыс істеу қабілеті және кеңес беру функцияларынан қорықпау кіреді.

Фрилансинг бойынша ұсыныстар бірнеше есе аз - DevOps инженерлері негізінен қызметкерлер мен толық уақыттық лауазымдарды іздейді.

DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады
Сәйкес фрилансер жобаны табу қиын, бірақ мүмкін

DevOps инженерінің кәдімгі мансап жолын келесідей елестетуге болады:

  • Ол алты айдан бір жылға дейін шағын IT-компанияда жүйелік әкімші болып жұмыс істейді. Сонымен бірге ол автоматтандыруға қолайлы тілді оқиды.
  • Ол алты айға жуық курстарда қарқынды оқиды.
  • Басқа жұмысқа ауысады - бұлтты шешімдерді сататын компанияға, ірі корпорацияның филиалына, ірі жобаларды әзірлеушілерге. Қарапайым тілмен айтқанда, тұрақты автоматтандыру және енгізу қажеттілігі бар жерде. Бастапқы позицияда бұл шамамен 100 мың рубльді құрайды.
  • Ол бірнеше жылдан бері белсенді түрде жұмыс істеп, білім алып, табысын бірнеше есеге арттырды.
  • Кәсіби қоғамдастықтың сарапшысы болып, кеңес беру саласына ауысады. Немесе жүйе сәулетшісіне немесе IT директорына дейін өседі.

DevOps қиын. Бір уақытта бірнеше мамандықтың дағдыларын біріктіру керек. Басқа IT мамандары басқа ештеңе туралы ойламайтын жерде жақсартуды ұсынуға дайын адам болыңыз. Бұл үшін олар көп төлейді, бірақ сонымен бірге үлкен білім қажет.

DevOps қанша табыс табады?

2019 жылдың екінші тоқсанындағы деректерге сәйкес, девоптардың орташа жалақысы 90-нан 160 мың рубльге дейін. Арзан ұсыныстар бар - негізінен 60-70 мың.

Үнемі 200 мыңға дейін ұсыныстар бар, ал 330 мың рубльге дейін жалақысы бар бос орындар бар.

DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады
Операциялық кәсіпқойлар арасында DevOps басқаларға қарағанда жоғары төленеді. Дереккөз: Мансап

DevOps инженерлері, соның ішінде жаңадан бастаушылар, қазір ірі банктерде, корпорацияларда, бұлттық қызметтерде, сауда жүйелерінде және IT шешімдерін қолдауға қамқорлық жасайтын басқа ұйымдарда қажет.

60–90 мың жалақысы бар кіші бос орынға тамаша үміткер бір жылға жуық тәжірибесі және мамандандырылған дипломы бар бастауыш жүйе әкімшісі болады.
 
DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады
Мұндай статистика жоқ, бірақ Linux-та тәжірибесі бар адамдар көбірек төлейтін сияқты

Мамандығыңда өсу үшін не көруге және оқуға болады

DevOps әлеміне ену үшін бірнеше ақпарат көздерін қолданып көріңіз:

  • Cloud Native Computing Foundation [YouTube, ENG] - конференциялар мен білім беру вебинарларынан көптеген бейнелер.
  • DevOps арнасы [YouTube, RUS] - Ресейдегі кәсіби DevOps конференциясынан бейне есептер.
  • DevOps анықтамалығы [кітап, RUS] — DevOps философиясы туралы ең танымал кітаптардың бірі. Кітапта әдістеменің жалпы принциптері қамтылған, ол кез келген жобамен жұмыс істегенде ең алдымен неге назар аудару керектігін айтады.
  • Томас Лимончелли «Жүйе мен желіні басқару тәжірибесі» [кітап, RUS] - жүйе әкімшілігін қалай құрылымдау керектігі туралы көптеген теориялар мен принциптер.
  • Devops апталығы [кітап, ENG] - дүние жүзіндегі DevOps жүйесінде болып жатқан жаңалықтарға апта сайынғы шолу.
  • Devops_deflope [Telegram, RUS] - салалық жаңалықтар, конференция хабарландырулары, жаңа қызықты мақалалар мен кітаптарға сілтемелер.
  • Devops_en [Telegram, RUS] - конфигурациялар бойынша кеңес сұрауға және көмек сұрауға болатын орыс тіліндегі чат.
  • Devops.com - бұл саладағы ең ірі компаниялардың мақалалары, вебинарлары, подкасттары және бағандары бар үлкен халықаралық сайт.
  • Hangops_Ru — DevOps инженерлері мен жанашырларының орыстілді қауымдастығы.
  • Даму үшін қолданатын тілге арналған ең жақсы кітаптар.

DevOps қай жерде оқуға болады

Сіз курста құрылымдық білім ала аласыз «DevOps инженері«Нетологияда. Сіз әдістеменің толық циклін үйренесіз:

  • Кодты талдауды және нұсқаны басқару құралдарын жылдам пайдалануды үйреніңіз.
  • Үздіксіз интеграция, тестілеу және құру үшін ең жақсы тәжірибелерді түсіну.
  • Қолданба өзгерістерін басқаруды және автоматтандыруды үйреніңіз.
  • Конфигурациялау және басқару құралдарымен тәжірибе алыңыз.
  • Бақылау үшін қажетті қызметтерді бірден таңдауға және конфигурациялауға дағдыланыңыз.

Python бағдарламалау курсын бонус ретінде алыңыз - сіз мәселелерді тезірек және оңай шешесіз. Барлығы практикалық - біз AWS, GCP немесе Azure пайдаланамыз.
Бұл жаңа бастаған инженерді немесе жүйелік әкімшіні сұранысқа ие DevOps-ке айналдыру және еңбек нарығындағы бағаңызды жағымды түрде көтеру үшін жеткілікті.

DevOps инженері кім, ол не істейді, қанша алады және қалай инженер болуға болады

Ақпарат көзі: www.habr.com

пікір қалдыру