Быстро пробегусь по свежему маркетинговому выс продукту, пока он не засох, а у меня обеденный кофе.
Для ЛЛ: реклама Git in Sky, под видом статьи.
Мы умеем брать людей, которые только начинают свой путь, и делать из них уверенных и компетентных специалистов.
В прошлой статье был озвучен штат, 10-12 человек. Джунов там может быть 1 (один).
Сениоров мы рассматриваем сразу на роль архитекторов;
Это принципиально разные роли. Опять пустили маркетологов, и нет бы на хабр, где только маркетинг и остался.
мидлов растим до архитекторов внутри — стараемся построить рабочий процесс так, чтобы они брали на себя больше ответственности: договаривались с клиентом, вели мелкие шаги по проекту
То есть денег нет настолько, что разработчики, или админы, или девопс-инженеры, еще и как РП работают.
я всегда смотрю не столько на технические знания, сколько на софт скиллы и способность принять нашу культуру.
Напоминаю, что эта "культура", описанная в предпоследнем тексте - звонки посреди ночи, и полное отсутствие HA на уровне архитектуры.
Особенность нашей работы такова, что на проекте придется чаще всего оставаться с этими проблемами один на один.
То есть техподдержку вендора не купили, команды нет. Денег нет, но вы держитесь.
На собеседованиях я рассказываю реальные кейсы с проектов: такой-то стек под капотом, приходит разработчик и надо разобраться, почему у него не хватает какой-то переменной на проде. Это придется гуглить и решать, скорее всего самому.
Гуглить, почему в ваше внутреннее окружение дженкинс не затащил переменную? Пустили маркетологов в интернет, интернет от этого тупеет.
Да, говорят, что переработки — это плохо — ненормированный график, нарушение баланса работы и личной жизни и т.п. Но это лишь часть картины. Зато мы можем себе позволить работать всего несколько часов в день, используя в том числе и рабочее время для выполнения каких-то личных дел.
Это означает и отсутствие резервирования, и отсутствие архитектуры, затыкаемое по классике: Мы жуки-плавунцы или мужики российские ржаные гречневые? Али не выйдем на недоплачиваемые смены? За гроши совестью мужицкой приторговали?
Это не просто плохо, это означает почти мгновенный отсев на тех, кто сбегает подальше (нет текучки, как же), и тех, кто остается, и останавливается в развитии.
на 99% все курсы, которые сейчас есть в интернете, построены вокруг изучения только лишь базовых инструментов — как собирать Docker
Из исходников собирать ?
В целом все наши командные взаимодействия построены так, дабы сделать отдельные структурные единицы максимально самостоятельными, чтобы меня не дергали по каждому вопросу.
В предпоследнем тексте звонили в 5 утра, "не дергали". Маркетологи такие маркетологи, не помнят, что писали сами
При нормально построенном наставничестве джун до сениора может вырасти за 5 лет.
Спорно. Начиная с того, что 5 лет наставничества означает потерю 5 человеко-лет 2 сеньоров и 2 мидлов.
После публикации статьи про рабочий день DevOps-инженера меня вдохновило продолжить разговор о том, как мы подходим к найму и развитию наших сотрудников. Сегодня снова общаюсь с Дмитрием, тимлидом DevOps-команды.
"Вы просто не умеете их готовить" Многие компании избегают брать джунов, потому что это кажется долгим и трудным процессом. Но у нас это получается. Мы умеем брать людей, которые только начинают свой путь, и делать из них уверенных и компетентных специалистов. Всё, что нам нужно — это желание развиваться и учиться. И мы поможем в этом.
Как нам удается вырастить специалистов
В Git in Sky практически нет текучки. Команда стабильная, и это даёт нам большое преимущество. Но мы растем, и, соответственно, сталкиваемся с необходимостью найма. Но вместо того, чтобы искать только опытных специалистов, мы выбираем тех, кто будет расти вместе с нами. И для нас это не проблема. Это возможность.
Сеньоры-мидлы-джуны
У Git in Sky очень широкая вилка в плане найма, т.е. мы берем и джунов, и мидлов, и сениоров. На какую роль подойдет человек, становится понятно еще на этапе собеседования. Я сразу стараюсь оценить и уровень, и проект, куда человек хорошо впишется.
Сениоров мы рассматриваем сразу на роль архитекторов; мидлов растим до архитекторов внутри — стараемся построить рабочий процесс так, чтобы они брали на себя больше ответственности: договаривались с клиентом, вели мелкие шаги по проекту, а не просто щелкали задачи с доски.
Джунов также растим, но несколько иначе. В принципе джуны в моем понимании — это не самый низкий уровень. Первый — это интерны. Грубо говоря, студенты, которые уже что-то видели и хотят в джуны. Мы же говорим о следующем уровне, до которого надо еще дойти.
В джуны DevOps приходят из интернов, с соседних проектов (с аналогичной позиции, на которой что-то не сложилось) или со смежных направлений, когда человек занимался, например тестированием, разработкой или системной аналитикой, но осознанно идет на понижение, чтобы попасть на другую должность. Другой вариант — сисадмин какой-то компании, где со временем написали некий сервис и ему пришлось пощупать его изнутри.
Понятно, что не из любого джуна может вырасти хороший мидл и тем более сениор. Поэтому как театр начинается с вешалки, так успех обучения закладывается еще на этапе найма.
Каких джунов мы ищем
Общаясь с потенциальным коллегой, я всегда смотрю не столько на технические знания, сколько на софт скиллы и способность принять нашу культуру. Важна готовность решать проблемы и правильный подход к ним. А еще базовое знание Linux (можно даже без остальных инструментов DevOps).
Желание справляться с трудностями
Мне нравятся люди, которые еще на этапе собеседования высказывают готовность решать проблемы. Особенность нашей работы такова, что на проекте придется чаще всего оставаться с этими проблемами один на один. Готов ли человек к этому?
На мой взгляд, если джун придет и скажет: “У меня не получилось”, то получит удивленный взгляд. Если ты джун, изучи проблему, собери кейсы, построй теорию (а может и не одну) и с этим уже иди к старшим коллегам, чтобы узнать, куда копать дальше. Это шанс продемонстрировать активность в решении проблемы. И если человек делает так, ему хочется помочь. Мы любим именно таких джунов — они быстро растут и развиваются.
На собеседованиях я рассказываю реальные кейсы с проектов: такой-то стек под капотом, приходит разработчик и надо разобраться, почему у него не хватает какой-то переменной на проде. Это придется гуглить и решать, скорее всего самому. Вопрос в том, готов ли человек к этому? Будет ли он ковыряться до победного? Идеальный вариант, если человек сам уверен — уже сталкивался с чем-то подобным и вывез, а значит и тут найдет решение.
Когда человек приходит и явно понимает, что ему это все надо, с ним гораздо легче и комфортнее работать. Не нужно все это впихивать через силу. Такие ребята берут на себя ответственность и хорошо работают самостоятельно.
Готовность к переработкам
Да, говорят, что переработки — это плохо — ненормированный график, нарушение баланса работы и личной жизни и т.п. Но это лишь часть картины. Зато мы можем себе позволить работать всего несколько часов в день, используя в том числе и рабочее время для выполнения каких-то личных дел. Например, могу сходить в МФЦ в обед. Если в этот момент не было инцидента, никаких вопросов.
Умение диагностировать проблемы
Сильной стороной кандидатов считаю умение искать источник проблемы.
В последнее время на рынке труда много специалистов после курсов DevOps. Но на 99% все курсы, которые сейчас есть в интернете, построены вокруг изучения только лишь базовых инструментов — как собирать Docker или настраивать CI/CD. Там не дают фундаментальных знаний о том, как, допустим, дебажить проблемы в ОС Linux (вероятно, курсы предполагают, что эти знания у кандидатов уже есть).
На мой взгляд, без разницы, знаешь ты конкретный инструмент или нет. Когда нужно, инструмент можно выучить буквально за неделю: посмотрел видеоурок, поэкспериментировал на домашнем стенде. Но если ты не можешь пользоваться базовым набором подходов в ОС Linux, ты просто не справишься с задачей. Будешь бегать и трясти всех вокруг в поисках помощи, требуя выдать четкую инструкцию, как действовать. Такой джун в команде не нужен.
Сисадмины, эникейщики в половине или даже большей части случаев обладают нужными навыками. Все зависит от того, что именно они админили. Мне очень нравятся ребята из техподдержки операторов домашнего интернета или хостинг-провайдеров. Они все в принципе умеют работать в консоли, знают сети и подходы к поиску проблем. Каждый день 99% своего времени они как раз этим и занимаются.
Путь обучения
Кот Бэкап, кот Бокс, второй кот Бэкап - мои джуны-игрушки
При таком отборе обучение сводится к тому, чтобы “набить руку” на решении клиентских проблем. У нас в компании есть определенный набор инструментов — всего позиций 20. Когда, ковыряясь в проектах, джун проходит весь этот инструментарий хотя бы один раз — поработает со всем, что нужно большому проекту под ключ — это заявка на мидла.
Что это за инструменты:
бекапы
мониторинг
логирование
аллерты
disaster recovery
CI/CD
Специалист должен не просто прикоснуться, а уметь с ними самостоятельно работать: с нуля развернуть для нового сервиса и понимать логику однотипных решений.
К этому моменту человек как правило уже может самостоятельно декомпозировать сложную проблему на мелкие задачи с конечными целями и выполнить все шаги для их решения — ему уже не надо ничего разжевывать и вести по этому процессу за руку.
Залог успеха этого процесса — правильный руководитель и грамотная организация команд.
Навыки руководителя
Чтобы не провалить образовательный процесс, руководителю тоже нужно обладать определенным набором навыков. Не каждый тимлид может справиться с джуном.
Как правило, самое главное препятствие — это неумение ставить цели. Постановка цели по SMART (Specific — конкретная; Measurable — измеримая; Achievable — достижимая; Relevant — значимая; Time bound — ограниченная во времени) — вроде бы элементарная везде распиаренная штука, но многие не умеют ей пользоваться — не обозначают конечный результат, когда распределяют задачи.
Например, я прошу мидла сделать задачку уровня тимлида — расписать решение проблемы. Он пишет: “Сделать то-то, сделать то-то”. Все здорово, но как я принесу это бизнесу? В чем для него ценность? После обсуждения выясняется, что в результате выполнения всех пунктов будет работать метрика, указывающая, что сервис сбоит. И это действительно ценность — вот, что надо было писать с самого начала. Но перевернуть мышление в эту парадигму, научить технаря говорить на языке результатов, что по сути равно языку бизнес менеджеров, очень сложно. Так что тимлиды, которые умеют с джунами говорить на техническом языке, а с бизнесом — на бизнесовом, которые умеют декомпозировать сложные задачи на простые шаги и понимают, кто из ребят сможет с ними справиться, — на вес золота.
Есть четыре уровня делегирования:
Первый — когда человек готов работать только по подробной инструкции. Если подобный подход выявляется на собеседовании или испытательном сроке, мы расстаемся с таким человеком. Увы, такие джуны быстро не вырастут. А еще хуже, когда такие качества проявляются у руководителя.
Второй — когда он может работать по частично доступной информации (додумать или найти источник информации, где то в конфигурации, у команды разработки, недостающие участки и просто погуглить и решить задачу).
Третий — когда можно сообщить о проблемном месте, а он может сам найти источник проблемы, сформулировать способы решения. По сути это снова про навыки диагностики проблем. Это кунг-фу необходимо тимлиду.
Четвертый — когда ты просто указываешь специалисту проблемную область, даже особо не вникая, что сломано. Это самый сложный уровень. Искать и выявлять проблемы. Люди, которые им владеют, очень быстро вырастают до позиции технических директоров.
Здесь я вспомнил об этих уровнях скорее в контексте руководителей. Для работы с джунами (да и в целом для работы в нашей компании) нужно быть хотя бы на третьем. Только так можно вычленять из общего потока кандидатов джунов с навыками диагностики проблем и нагружать их соответствующими задачами.
Если же не уметь найти правильных людей и грамотно их мотивировать, то джуны начинают бегать за руководителем с каждой мелочью и пожирать его время конскими порциями. От этого сам руководитель перестает быть эффективным в других задачах, поскольку ресурс его внимания не бесконечен.
Организация команд
Тандемы
В нашей компании хорошо себя показала практика микрокоманд — мы собираем тандемы из двух коллег, которые занимаются определенным набором проектов.
Идею тандемов я подсмотрел очень давно — еще в начале нулевых — в какой-то книжке. Забавно, что знания из той книги пригодились спустя столько времени. Позже я столкнулся с этими идеями в книге по менеджменту “Это так не работает”. Там это называлось “микрокоманды”. Была высказана мысль, что даже если у тебя есть команда из условно 10 человек, в ней все равно лучше выделить микрокоманды, и они будут работать эффективнее. Либо так или иначе они образуются сами.
В тандеме оба специалиста работают руками, оба занимаются всеми задачами. Но кто-то делает медленно, а кто-то быстро. Один ведущий, а другой ведомый. Кто-то будет больше коммуницировать с клиентом, потому что обладает хорошими софтами, а кто-то силен в техничке. И так должно быть в каждом проекте.
На собеседовании я смотрю на специалиста и сразу стараюсь понять, кто мог бы быть у него в паре. Т.е. это речь не столько о “подойдет по стеку или нет” (понятно, что человек должен пройти по хардам для текущего проекта), сколько о комплексном видении и хард, и софт скиллов. Причем, я не обязательно подбираю джуна под сениора или ищу, чтобы сениор больше общался с клиентом, показывая пример джуну. Вполне возможна ситуация, когда за счет прокачанных софт скиллов джун, слабый в техничке, и с клиентом договорится, и к коллегам сходит, чтобы ему подсказали грамотное решение. Суть именно в комплексном взгляде. Важно, чтобы тандем — эдакий паззл внутри коллектива — собрался и заработал.
В зависимости от ситуации мы ищем на собеседованиях разное. Иногда нужны руки, которые будут выполнять задачи. А иногда, наоборот, “говорящая голова”, которая должна грамотно общаться с клиентом, чтобы я мог отпустить ситуацию и немного разгрузиться.
Самостоятельность во главе угла
В целом все наши командные взаимодействия построены так, дабы сделать отдельные структурные единицы максимально самостоятельными, чтобы меня не дергали по каждому вопросу. Это единственный способ справляться с большим объемом проектов. Если об этом не заботиться, меня будут все время отвлекать. Это будет абсолютно не масштабируемая история.
Тут важна инициативность в деталях, вплоть до того, что коллегам стоит понимать, как планировать ночные работы и согласовывать их с клиентом (даже если коллеги — чистые технари). Если у клиента принято просто написать в Telegram — это один разговор. Если же надо обязательно подготовить обращение к ответственному лицу и собрать аппрувы — другой. Надо пройти правильным путем, и главное, чтобы я не контролировал эти процессы.
Чтобы был шанс отпустить ситуацию, я объясняю, как сделать правильно, и фигурально выражаясь, “отворачиваюсь”. Если в итоге я вижу, что задача выполнена — хорошо. Моя цель, как тимлида, достигнута. Но так происходит не всегда, чаще инженер совершает ошибки так или иначе. Главный секрет при постановке задачи всегда объяснять преследуемые цели и критерии “когда мы считаем что задача готова, что должно быть готово” используя метод SMART .
Если ошибки случаются, я не жду какого-либо специального one-to-one, а прихожу сразу. Например, мы что-то обсуждаем с клиентом в созвоне и я даю слово инженеру, который делал задачу. А инженер говорит на встрече какие-то глупости. Прямо в процессе коммуникации я, как фасилитатор созвона, могу дать ему отсечку — самостоятельно рассказать, что он сделал более бизнесовым языком. После этого прихожу уже в личку, где мы с инженером разбираем ситуацию — почему я его прервал, какие вещи нельзя говорить клиенту и т.п. Короче, проводим работу над ошибками. Объясняю, как говорить с клиентом в сложных ситуациях, как работать с возражениями, как быть с плановыми работами, как ставить задачи, формировать цели и критерии приемки по SMART.
В целом у нас в коллективе довольно простая атмосфера. На это во многом влияет личная харизма, и я стараюсь это поддерживать. Младшие всегда могут прийти к старшим, да и я выступаю эдаким играющим тренером и равными правами по отношению к остальным участникам коллектива. Мотивировать всех участников к инициативе. Т.е. нет проблем с тем, чтобы сократить количество грабель, на которые наступать. И со временем количество ошибок действительно уменьшается В среднем инженеры уходят в эдакое “самостоятельное плавание” примерно через 4-8 месяцев после начала работы. С этого момента их уже можно почти не контролировать, лишь иногда задавать правильные вопросы. Например, инженер приносит мне план разобрать старый кластер баз данных у клиента. А я спрашиваю, а где план отката и когда ты будешь делать бекапы? Если это не было заложено изначально, инженер идет и переделывает план. Так последовательными итерациями мы приходим к полностью самостоятельному решению.
Джуны всем нужны
Опыт показывает, что джуны — это не так страшно, если уметь их правильно отбирать и готовить. При нормально построенном наставничестве джун до сениора может вырасти за 5 лет. Google считает, что на этот процесс уходит чуть больше — порядка 6-8 лет (корпорация привязывается к циклу жизни продукта и считает, что специалист до уровня сениор должен прожить весь этот цикл в одной или нескольких компаниях).
Но сути эта разница в оценках не меняет. Срок не такой уж и большой, если правильно направить усилия. Успешная работа с джунами — это не так страшно. Довольно быстро вы заметите, что из слабого звена команды джуны прекращаются в уверенных и квалифицированных коллег.
Федя и Витя
История этой фотографии: в 2020 году набрал команду ребят в коллективе. И был один парень, который «я же джун, у меня не получается, нужно чтобы мне кто‑то помог с задачей».
Подумал, как же отучить от такого. Сходил в большой садоводческий магазин и купил 2 драцены. Принес в офис, поставил и подписал стикеры «джун Федя» и «джун Витя».
Сказал своим джунам: «Если ты будешь называться джуном, поставлю тебя в горшок рядом и буду поливать водичкой».
P. S. Ни одна драцена и ни один джун не пострадали.
Проходил по полугодовой подписке курс DevOps практики и инструменты. Что могу сказать первый месяц вообще невнятный изучали больше инфоу облака Яндекса. Круто, но причем тут devops. Второй месяц - 2 занятия тераформ, 4 занятия ансибл. На кой хрен так много ансибл так ещё и тестирование конфигурация через Vagrant, да ещё и с дз на эту тему, Карл!? Третий месяц норм, докер, немного про gitlab, немного про деплой. Вкусно но мало. Четвертый месяц честно говоря очень много теории по куберу. Практики мало. Далее 1 лекция про мониторинг и логирование. Далее совсем невнятные уроки про деплой в кубер. В общем самая вкусная часть самая непроработанная. Что уж говорить, когда человек тебе показывает как развернуть прометеус и grafana в кубере и у него это не работает(
Очень люблю отус, особенно за курс по php, но после этого курса... Если бы учился не по подписке, отказался бы и попросил вернуть деньги(
В этой подборке представлены курсы для специалистов с опытом в смежных IT-областях, которые хотят расширить свою квалификацию и углубиться в DevOps. Эти программы рассчитаны на тех, кто знаком с основами разработки, тестирования или администрирования и стремится освоить лучшие DevOps-практики и инструменты. И также мы включили один курс, который подойдет новичкам.
Мы тщательно анализируем плюсы и минусы каждого курса, опираясь на мнение пользователей как на нашей платформе, так и на других ресурсах. Изучите реальные отзывы студентов и найдите подходящий для вас курс на платформе Pikabu Курсы.
1. Курс «DevOps практики и инструменты» от Otus Программа охватывает полный цикл разработки, от управления версиями и облачной инфраструктурой до CI/CD, оркестрации контейнеров и управления конфигурацией.
2. Курс «DevOps Tools для разработчиков» от Слёрм Вы освоите контейнеризацию с Docker, автоматизацию с Ansible и Terraform, а также настройку процессов непрерывной интеграции и доставки (CI/CD) с помощью GitLab и Jenkins.
3. Курс «Интенсив DevOps для программистов» от Хекслет Программа насыщена практическими задачами, включая настройку CI/CD, создание отказоустойчивых кластеров и управление облачной инфраструктурой.
4. Курс «DevOps: Быстрый старт» от ProductStar Программа охватывает базовые аспекты работы DevOps-инженера, от работы с операционной системой Linux и написания скриптов на Bash до управления конфигурациями с помощью Ansible и контейнеризации приложений с Docker.
IT — не для каждого, но попробовать себя может каждый!
Сегодня всё больше людей задумываются о смене профессии и переходе в IT, привлекаемые высокими зарплатами, возможностью удалённой работы и перспективами карьерного роста. Однако, стоит понимать, что IT — это многогранная сфера, и программирование, хоть и одно из ключевых направлений, но подходит далеко не всем. В видео я рассказываю о том, как не-айтишнику можно стать айтишником, какие направления можно выбрать и с чего начать свой путь в IT. Надеюсь видео будет полезно тем, кто задумывается о смене профессии и хочет попробовать себя в it сфере!
Обо мне
Преподаватель со стажем! Более 15 лет опыта работы с вычислительными кластерами (Linux), инженер-программист. Больше 10 лет преподаю компьютерные дисциплины в ВУЗе, доцент кафедры Компьютерных систем КНИТУ-КАИ им А.Н. Туполева, г. Казань.
Онлайн курсы для тех кто хочет попробовать себя в айти
На основе своего опыта преподавания разработал серию обучающих онлайн курсов для начинающих программистов и системных администраторов (devops инженеров).
На все курсы до 10 ноября действует промокод: PIKABU900
@practicum.yandex, вы лучше расскажите о том, что после обучения ваши студенты не могут получить диплом. Дедлайн по диплому был больше месяца назад. Ни куратор, ни поддержка практикума не могут даже ориентировочных сроков назвать. В Нетологии товарищ уже через 2 недели после сдачи диплома получил бумажный вариант, а у вас даже электронный ещё не готов!
Учите на программистов, тестировщиков, девопсов, а сами не можете процесс генерации/выдачи дипломов наладить.
Ещё прикол: в июне заполняли какую-то табличку на ваш уникальный мерч. Его тоже ещё нет. Но знаете, с таким отношением он мне не нужен. Просто выдайте мне мой диплом.
DevOps-инженер — профессия на стыке трех областей знаний: программирования, тестирования, администрирования. Как уметь все и где этому учиться? Рассказываем главное о DevOps простыми словами.
Что такое DevOps
Термин DevOps произошел от двух английских слов: development («разработка») и operations («администрирование»). Казалось бы, зачем объединять два настолько разных процесса? Ответ прост — этого требует стремительно развивающийся рынок веб-сервисов. Пару десятилетий назад процесс разработки программы или сайта шел медленно. Сегодня в кармане у каждого из нас лежит как минимум одно устройство со множеством приложений, которые требуют постоянного обновления.
Переход в цифровую эру подсветил серьезную проблему в сфере разработки — нехватку коммуникации между несколькими специалистами, а именно разрабами, тестировщиками и сисадминами.
Системные администраторы следят за тем, чтобы работала IT-инфраструктура. На этой инфраструктуре программисты занимаются разработкой, а тестировщики проверяют готовый код. Удивительно, но до недавнего времени три этих департамента работали автономно, в отрыве друг от друга. Если инфраструктура — например, сервер для запуска версий приложения или инструменты для тестирования — давали сбой, сисадмин не мог узнать об этом сразу. Обратная связь шла долго, терялась, приходила с ошибками. А пока сисадмин не знал, чего не хватает программистам и тестировщикам, работа последних стопорилась.
Из необходимости в том, чтобы процесс разработки был плавным и бесшовным, и появился DevOps. Это не просто профессия, а целая культура, которая объединяет разработчиков, тестировщиков и сисадминов. Теперь это не три отдельных мира, а постоянно взаимодействующие команды, перед которыми стоит одна цель — сделать так, чтобы продукт работал. Помогают им в этом DevOps-инженеры, в обязанности которых входит:
налаживать общение команд разрабов, тестировщиков и системных администраторов;
автоматизировать процессы;
следить за тем, чтобы жизненный цикл разработки не разрывался.
Что должен знать и уметь DevOps-инженер
В DevOps редко приходят те, кто ничего не понимает в IT. Обучиться ему с нуля сложно, потому что такой специалист должен разбираться сразу в трех сферах. Поэтому обычно направление выбирают опытные разработчики и системные администраторы, которым хочется открыть для себя новые карьерные перспективы.
Чтобы понять, как много должен знать и уметь DevOps-инженер, достаточно взглянуть на этот список:
разбираться в системном администрировании Linux;
строить инфраструктуру в облаке;
настраивать локальные сети и управлять ими;
уметь программировать на Python или другом популярном языке хотя бы на базовом уровне;
знать языки разметки JSON и YAML;
настраивать непрерывный конвейер доставки кода с помощью инструментов CI/CD;
работать с системой управления репозиториями программного кода GitLab;
запускать мониторинг для поиска ошибок с помощью Prometheus.
Человеческие качества тоже важны, ведь DevOps-инженеру нужно выстраивать совместную работу нескольких отделов. Эмпатия, эмоциональный интеллект и способность разрешать конфликты на фоне горящих дедлайнов станут для такого специалиста большими преимуществами.
Сколько зарабатывают в DevOps
В первом полугодии 2024 года средняя зарплата DevOps-инженера в России составила 212 000 рублей в месяц. На старте специалист наверняка будет получать меньше, но все равно прилично: зарплаты начинаются от 82 000 рублей. Более опытные инженеры в крупных компаниях могут рассчитывать на 400 000 рублей в месяц.
Высокие зарплаты делают сферу DevOps привлекательной для системных администраторов. Для сравнения, последние в среднем зарабатывают 100 000 рублей в месяц.
Плюсы и минусы профессии
✅ Востребованность
DevOps-инженеры необходимы в крупных компаниях, которые разрабатывают IT-продукты. Сфера информационных технологий растет огромными темпами, производителей становится больше. Все это говорит о том, что DevOps-инженер не останется без работы.
❌ Крупных компаний не так много
Да, разработкой приложений и сервисов занимается все больше компаний, но они часто бывают небольшими. Маленькой организации DevOps-инженер не нужен, в ней для него не хватает работы. Обязанности специалиста по DevOps в ней, скорее всего, переложены на сисадмина.
✅ Низкая конкуренция
DevOps — относительная новая профессия, специалистов в ней пока мало. Даже инженер с небольшим опытом может рассчитывать на большой интерес со стороны работодателей.
❌ Подходит не каждому
У DevOps высокий порог входа: не каждый программист разберется в работе системного администратора и наоборот. Поэтому даже опытным айтишникам в этой сфере может быть сложно, особенно в первое время.
✅ Разнообразие
DevOps оптимален для тех, кому нравится уметь все и сразу. Эта область новая, неконсервативная, готовых решений в ней не так уж и много. Идеально для креативных айтишников, которые не любят ходить по проторенному пути.
Как стать DevOps-инженером
Для этого сначала нужно освоить смежную IT-профессию. Например, стать системным администратором. На курсе Практикума им становятся за полгода. Здесь учат администрировать семейство операционной системы Linux, управлять инфраструктурой как кодом, разбираться в работе почтовых и сетевых сервисов DNS и DHCP. Там же знакомят с основами DevOps.
Другой путь — стать тестировщиком. Курс Практикума «Инженер по тестированию» длится всего четыре месяца. За это время студенты изучают анализ требований к приложениям, основы Python и автоматизации тестирования, сами тестят мобильные и веб-приложения.
Для IT-специалистов в Практикуме разработали курс «DevOps для эксплуатации и разработки». Он поможет сисадминам и разработчикам освоить методологию DevOps, выйти на новый профессиональный уровень и претендовать на более высокую зарплату.
Все курсы Практикума написаны опытными айтишниками, которые годами работают в крупнейших компаниях страны. В процесс обучения внедрены технологии. На курсах есть тренажеры, сервисы-помощники на основе искусственного интеллекта. Благодаря им студенты попадают в среду максимально похожую на IT-отдел реальной компании и приходят на первое место работы с навыками, проверенными на практике.
Информация о курсе: стоимость — 4 398 ₽ / мес. в рассрочку на 22 месяца, длительность — 4 месяца
Особенности: Вечный доступ к курсу. По завершении обучения вы получите сертификат установленного образца.
Вы научитесь администрировать Linux, настраивать веб-серверы и поддерживать работу сайтов. Сможете начать карьеру системного администратора и получите базовые знания для дальнейшего развития в DevOps-инженерии.
Кому подойдёт этот курс:
Желающим стать системным администратором Вы поймёте, как работают веб-серверы, и освоите работу с ОС Linux. Создадите портфолио и сможете начать карьеру системного администратора в IT-компании.
Начинающим DevOps-инженерам Вы научитесь поддерживать Linux-системы и сайты, а также работать с базами данных. Попрактикуетесь на реальных проектах и получите основные навыки для DevOps.
Чему вы научитесь:
Администрировать Linux Разберётесь в устройстве этой операционной системы и научитесь работать в терминале.
Работать в командной строке Bash Освоите основы программирования в Bash и сможете оптимизировать работу с кодом и серверами с помощью команд.
Настраивать веб-сервер Научитесь устанавливать и настраивать популярный веб-сервер nginx.
Диагностировать неполадки Освоите работу с логами и мониторинг системных показателей, чтобы своевременно выявлять и устранять проблемы в работе сайтов.
Осуществлять мониторинг системы Научитесь работать с мониторинговым решением Prometheus и создавать запросы на языке PromQL.
Информация о курсе: стоимость — 113 000 ₽ или рассрочка на 36 месяцев - 3 302 ₽ / мес., длительность — 13 месяцев
Особенности: Обучайтесь на реальных примерах: программа курса соответствует современным требованиям работодателей. По окончании вы получите диплом о профессиональной переподготовке. Центр развития карьеры поможет вам с трудоустройством.
Какие навыки вы освоите:
Администрирование ОС Linux: освоите администрирование Linux и программирование в командном интерпретаторе Bash.
Настройка и диагностика сетей: разберётесь в основах работы компьютерных сетей и сможете конфигурировать сетевые сервисы прикладного уровня.
Работа с Kubernetes: поймёте, как работать с виртуальными машинами и контейнерами, и сможете разворачивать приложения с помощью Kubernetes.
Взаимодействие с Terraform и Ansible: освоите работу с системами управления конфигурациями и утилитами для развертывания облачной инфраструктуры.
Работа с Zabbix и Prometheus: узнаете, как настраивать системы мониторинга и оповещения о различных событиях.
Внедрение практик безопасности: изучите основные модели угроз информационной безопасности и освоите инструменты поиска и устранения уязвимостей.
Информация о курсе: стоимость — от 3 560 руб. / мес. в рассрочку на 36 месяцев, длительность — 9 месяцев
Особенности: За время обучения вы выполните 28 практических заданий, которые сможете включить в своё портфолио. В конце курса вам будет выдан сертификат.
Вы подробно изучите устройство компьютера, сети и операционных систем. Овладеете навыками работы в терминале Linux, продвинутыми инструментами администрирования, мониторинга и резервного копирования. Научитесь создавать скрипты для эффективного решения сложных задач.
Информация о курсе: стоимость — 56 500 руб., длительность — 10 уроков (20 часов)
После окончания курса вы сможете:
Ориентироваться в популярных операционных системах, таких как Windows Server, Linux и FreeBSD
Настраивать сетевое оборудование, включая маршрутизаторы и роутеры
Работать с системами управления базами данных, такими как MS SQL и Oracle
Поддерживать программное обеспечение компании, включая настройку электронной почты, организацию антивирусной защиты, автоматизацию удаления спама и другие задачи
Начать карьеру в сфере администрирования ПО и сетей.
Программа курса включает:
Введение в профессию системного администратора Обязанности и навыки администраторов 1 и 2 уровня, цели и задачи обучения
Работа локальных сетей Условия и принципы функционирования локальных сетей, необходимое оборудование
Групповые политики Обзор групповых политик доменов и объектов групповых политик
Настройка ОС Windows Server, Linux, FreeBSD Пошаговая настройка и объяснение всех действий
Службы терминалов Работа сетевых служб для удаленного доступа к рабочему столу на сервере
Сетевые протоколы и службы (TCP/IP, DNS, DHCP) Подробное изучение различных сетевых протоколов и служб
WWW, FTP, HTTP Основы веб-публикаций и распространенные виды
Управление учетками пользователей Управление учетными записями пользователей и группами
Информационная безопасность Методы и средства обеспечения информационной безопасности
Active Directory Каталоги Microsoft для ОС Windows Server.
освоите аспекты управления проектами, включая ИТ-проекты
познакомитесь с современными отечественными и зарубежными методологиями управления проектами
изучите основные нормативно-правовые акты по юриспруденции, бухгалтерскому учету и делопроизводству, включая кадровые и конфиденциальные аспекты, необходимые для администрирования ИТ-проектов
узнаете порядок заключения и изменения договоров, а также закрытия этапов работ
разберетесь в особенностях документирования ИТ-проектов.
Вы освоите работу в командной строке bash, редактирование конфигурационных файлов и настройку веб-серверов на операционной системе Linux. В результате, сможете запустить сайт на WordPress и узнаете, как начать карьеру системного администратора.
В этом видео автор рассказывает об обновленном онлайн курсе комплексного обучения системному администрированию, который поможет освоить профессию системного администратора. Обучение проходит дистанционно, и все, что вам потребуется, это домашний компьютер для практической подготовки к работе системным администратором.
Что такое системный администратор и его роль в организации
Системный администратор (часто сокращаемый до системный админ или сисадмин) — это IT-специалист, отвечающий за надежность и безопасность работы компьютерных систем и сетей в организации. Их основная задача заключается в том, чтобы обеспечить бесперебойное функционирование всех технологий, используемых компанией для выполнения повседневных бизнес-операций.
Роль системного администратора в организации
Мониторинг и поддержка IT-инфраструктуры:
Системный администратор отслеживает состояние всех серверов и сетевых устройств, своевременно обнаруживает и устраняет проблемы, чтобы предотвратить сбои в работе системы.
Управление серверами и сети:
Серверы — это мощные компьютеры, которые выполняют ключевые функции в организации (например, хостинг веб-сайтов, управление базами данных, сохранение файлов). Сист админ настраивает и поддерживает их работу.
Сети — это основа для соединения всех устройств внутри компании. Сист админ отвечает за настройку и управление сетевым оборудованием (коммутаторы, маршрутизаторы, точки доступа).
Установка и обновление программного обеспечения:
Системные администраторы устанавливают необходимое программное обеспечение и регулярно обновляют его, чтобы обеспечить максимальную безопасность и функциональность.
Обеспечение безопасности:
Кибербезопасность — один из самых важных аспектов работы системного администратора. Они защищают данные компании от взломов и вирусов, устанавливая антивирусы, фаерволы и другие системы безопасности.
Управление учетными записями пользователей:
Сист админы создают и управляют учетными записями для сотрудников, назначают права доступа к различным ресурсам и отслеживают активность в сети для предотвращения несанкционированного доступа.
Резервное копирование и восстановление данных:
Для предотвращения потерь данных системные администраторы создают резервные копии важной информации и разрабатывают планы восстановления данных в случае аварийных ситуаций.
Поддержка пользователей:
Сист админы часто помогают сотрудникам решать технические проблемы, обучают их основам работы с различными системами и программами.
Документация и отчетность:
Для обеспечения организованной работы и планирования дальнейших улучшений системные администраторы ведут документацию всех изменений и настроек в IT-инфраструктуре.
Основные обязанности системного администратора
Управление серверами и сетевыми устройствами
Управление серверами:
Системные администраторы отвечают за настройку, обслуживание и оптимизацию серверов, которые являются центральными элементами IT-инфраструктуры. Это включает:
Установка серверного оборудования: правильное подключение и настройка серверов для обеспечения их оптимальной работы.
Настройка серверного программного обеспечения: установка и конфигурация операционных систем (например, Windows Server, Linux) и необходимых приложений.
Виртуализация: использование технологий виртуализации для создания виртуальных машин, что позволяет более эффективно использовать ресурсы физических серверов.
Оптимизация производительности: регулярная проверка и улучшение производительности серверов для обеспечения их эффективного функционирования.
Управление сетевыми устройствами:
Системные администраторы также управляют всеми сетевыми устройствами, обеспечивая их безупречное взаимосвязь:
Маршрутизаторы и коммутаторы: настройка и обслуживание устройств, управляющих трафиком в сети.
Беспроводные точки доступа: обеспечение надежного беспроводного подключения для пользователей.
Мониторинг сети: использование специализированного ПО для отслеживания состояния и производительности сетевых устройств.
Установка и обновление программного обеспечения
Установка программного обеспечения:
Системные администраторы устанавливают необходимое для работы программное обеспечение на различных устройствах:
Операционные системы: установка и настройка ОС на серверах и рабочих станциях.
Бизнес-приложения: установка специализированного ПО, используемого сотрудниками компании для выполнения повседневных задач.
Обновление программного обеспечения:
Обновление ПО является ключевой обязанностью для обеспечения безопасности и функциональности:
Патчи и обновления безопасности: регулярное внедрение обновлений безопасности для защиты системы от уязвимостей.
Обновление приложений: установка новых версий программного обеспечения для улучшения производительности и добавления новых функций.
Мониторинг и обеспечение безопасности сети
Мониторинг сети:
Системные администраторы постоянно отслеживают состояние сети, используя специализированные инструменты:
Системы мониторинга: программы, которые отслеживают работоспособность сети, серверов и приложений, и оповещают о любых сбоях или проблемах.
Анализ логов: регулярная проверка логов для обнаружения и устранения потенциальных проблем.
Обеспечение безопасности:
Обеспечение безопасности является приоритетной задачей системного администратора:
Настройка фаерволов и антивирусов: внедрение и настройка программных решений для защиты от угроз и атак.
Аутентификация и авторизация: управление доступом пользователей к системе с помощью различных методов аутентификации и авторизации.
Резервное копирование: регулярное создание резервных копий данных для их восстановления в случае аварии.
Управление учетными записями пользователей и доступами
Создание и управление учетными записями:
Системные администраторы создают и управляют учетными записями, обеспечивая правильный доступ сотрудников к ресурсам компании:
Создание новых пользователей: добавление новых учетных записей для сотрудников, включая необходимые настройки и права доступа.
Управление доступом: настройка и контроль доступа к различным ресурсам, таким как файлы, базы данных и приложения.
Обеспечение безопасного доступа:
Проверка прав доступа: регулярный аудит прав доступа для обеспечения того, чтобы у пользователей были только необходимые им права.
Управление паролями: внедрение и контроль политики паролей для обеспечения их надлежащей сложности и регулярного обновления.
Необходимые навыки и квалификация
Технические знания и навыки
Работа с операционными системами:
Windows: системные администраторы должны уверенно работать с различными версиями операционной системы Windows, включая Windows Server, что включает настройку, управление и устранение неисправностей.
Linux: глубокое знание Linux-систем (например, Ubuntu, CentOS) и умение конфигурировать, оптимизировать и решать проблемы в этих ОС.
Unix: понимание основ работы Unix-систем, таких как Solaris или BSD, и умение работать с командной строкой для выполнения административных задач.
Понимание сетевых технологий
Основные сетевые протоколы и технологии:
TCP/IP: базовые знания протокола TCP/IP, включая работу с IP-адресами, понимание концепций маршрутизации и коммутации.
DNS: знание принципов работы системы доменных имен (DNS), умение настраивать и решать проблемы, связанные с DNS.
DHCP: понимание работы протокола динамической настройки хоста (DHCP), настройка серверов DHCP для автоматической раздачи IP-адресов.
Дополнительные сетевые навыки:
Виртуальные частные сети (VPN): настройка и управление VPN для обеспечения безопасного удаленного доступа сотрудников к корпоративной сети.
Безопасность сети: знание и применение методов защиты сети, включая настройку фаерволов, IDS/IPS-систем, сегментацию сети.
Знание оборудования и его конфигурации
Серверное оборудование:
Настройка серверов: умение инсталлировать, конфигурировать и поддерживать серверное оборудование.
Хранение данных: знание технологий хранения данных (например, RAID, NAS, SAN) и умение управлять системами хранения.
Сетевое оборудование:
Маршрутизаторы и коммутаторы: настройка и управление маршрутизаторами и коммутаторами от различных производителей.
Беспроводное оборудование: конфигурация точек доступа Wi-Fi и управление беспроводными сетями для обеспечения их безопасности и надежности.
Софт-скиллы
Решение проблем:
Способность быстро и эффективно идентифицировать и устранять технические проблемы.
Использование системного подхода для анализа и диагностики сбоев и неисправностей.
Внимание к деталям:
Скрупулезность в выполнении задач, таких как конфигурация систем, мониторинг и поддержка безопасности.
Аккуратное ведение документации и учет всех изменений в IT-инфраструктуре.
Управление временем:
Эффективное планирование и приоритизация задач для своевременного решения проблем и выполнения рутинных обязанностей.
Умение работать в условиях многозадачности и сохранять продуктивность даже под давлением.
Рабочее место системного администратора
Описание типичного рабочего пространства
Рабочее пространство системного администратора обычно оборудовано всем необходимым для выполнения множества технических задач и обеспечения бесперебойной работы IT-инфраструктуры организации.
Рабочее место: обычно это офисное помещение с хорошо организованным рабочим местом, на котором размещаются один или несколько мониторов, что позволяет одновременно управлять несколькими процессами и системами.
Компьютер: мощный настольный компьютер или ноутбук с производительным процессором и достаточным объемом оперативной памяти для работы с различными инструментами и программами.
Периферийные устройства: клавиатура, мышь, гарнитура для коммуникации и, возможно, дополнительное оборудование, такое как KVM-переключатели для управления несколькими серверами с одной консоли.
Серверная комната: как правило, рядом или в доступности системного администратора может находиться серверная комната с оборудованием, такую как серверы, маршрутизаторы, коммутаторы, системы хранения данных.
Инструменты и программное обеспечение, которые используются в повседневной работе
Системный администратор использует разнообразные инструменты и программное обеспечение для выполнения своих задач. Вот некоторые из них:
Операционные системы и утилиты:
Windows Server, Linux (Ubuntu, CentOS и другие): ОС для серверов, обеспечивающие их работу.
Unix утилиты: такие как awk, sed, grep для работы в командной строке.
Средства мониторинга и управления:
Nagios, Zabbix, PRTG: инструменты для мониторинга состояния сетей и серверов.
Ansible, Puppet, Chef: системы управления конфигурацией для автоматизации задач.
Microsoft System Center, VMware vSphere: средства для управления виртуализованными средами.
Сетевые инструменты:
Wireshark: анализатор сетевых пакетов для диагностики.
OpenVPN, Cisco AnyConnect: решения для создания виртуальных частных сетей (VPN).
Безопасность:
Firewalls (например, pfSense, Cisco ASA): для защиты сети.
Антивирусы и антиспам: такие как Symantec, McAfee для защиты от вредоносного ПО.
Прочие инструменты:
Панели управления: такие как cPanel, Plesk для управления веб-хостингом.
Ит-инвентаризация: системы управления активами, такие как Spiceworks.
Варианты удаленной работы и гибких графиков
Современные технологии и инструменты позволяют системным администраторам эффективно работать удаленно и обеспечивать гибкость в расписании:
Удаленный доступ: такие инструменты, как Remote Desktop Protocol (RDP), TeamViewer, и AnyDesk позволяют администраторам удаленно управлять серверами и сетью.
VPN: обеспечивает безопасное подключение к корпоративной сети из любой точки мира.
Коллаборативные платформы: использование таких инструментов, как Slack, Microsoft Teams, Zoom, для общения и совместной работы с коллегами.
Облачные решения: использование облачных сервисов, таких как AWS, Azure, Google Cloud, для управления виртуальными серверами и сервисами.
Гибкий график: многие компании предоставляют системным администраторам гибкий график работы, учитывая нестандартные рабочие часы, ночные смены или дежурства, связанные с необходимостью незамедлительного реагирования на инциденты.
Карьера и профессиональный рост
Возможности карьерного роста
1. Старший системный администратор:
Описание роли: старший системный администратор (Senior SysAdmin) обладает более глубокими знаниями и опытом в управлении комплексной IT-инфраструктурой. Он также может руководить командой младших администраторов.
Основные обязанности: ведение крупных проектов, решение наиболее сложных технических проблем, наставничество и обучение младших специалистов.
Навыки и опыты: глубокие технические знания, лидерские навыки, отличное понимание бизнес-процессов и IT-инфраструктуры.
2. IT-менеджер:
Описание роли: IT-менеджер отвечает за управление всеми IT-операциями в организации, включая стратегическое планирование и бюджетирование.
Основные обязанности: разработка и реализация IT-стратегии, управление командой IT-специалистов, взаимодействие с другими отделами и внешними поставщиками.
Навыки и опыты: лидерские навыки, стратегическое мышление, управление проектами, знания в области управления бюджетом и ресурсами.
3. Консультант:
Описание роли: IT-консультант предоставляет экспертные советы внешним клиентам по вопросам настройки, оптимизации и безопасности их ИТ-систем.
Основные обязанности: оценка текущей IT-инфраструктуры клиентов, разработка рекомендаций, реализация предложенных решений, обучение и поддержка клиентов.
Навыки и опыты: глубокие технические знания, навыки коммуникации, способность к аналитическому мышлению и решению проблем, управление проектами.
Советы по составлению резюме и прохождению интервью
Составление резюме:
Четкость и лаконичность: резюме должно быть кратким, одно- или двухстраничным, с акцентом на ключевые навыки и достижения.
Контактные данные: убедитесь, что ваши контактные данные актуальны и видны в верхней части резюме.
Профиль и цели: включите краткое, но информативное описание вашего профессионального профиля и карьерных целей.
Опыт работы: четко опишите вашу предыдущую работу, акцентируя внимание на результатах и достижениях.
Навыки: укажите все технические и софт-скиллы, которые у вас есть, включая владение операционными системами, знания в области сетевых технологий и любые сертификации.
Образование: укажите вашу квалификацию и образовательные достижения, включая курсы и сертификации.
Прохождение интервью:
Подготовка: ознакомьтесь с компанией, её продуктами и технологической инфраструктурой.
Продемонстрируйте знания: будьте готовы к техническим вопросам и задачам. Пройдите через примеры реальных ситуаций, с которыми вы сталкивались, и как вы их решили.
Софт-скиллы: покажите свои коммуникационные навыки, способность работать в команде и управлять временем.
Задавайте вопросы: проявите заинтересованность, задавая вопросы о команде, проектах и перспективах компании.
Сохраняйте спокойствие: интервью могут быть стрессовыми, но старайтесь сохранять уверенность и позитивный настрой.