Рубрики
Uncategorized

Инженер Devops: Что нужно, чтобы получить работу?

Каждый день все больше и больше компаний ищут людей со знаниями DevOps. Как я пишу это … с меткой DevOps, Engineering.

Каждый день все больше и больше компаний ищут людей со знаниями DevOps. Когда я пишу этот пост, на LinkedIn Для рабочих мест DevOps. Это много вакансий.

Высокий спрос на инженеры DevOps должен быть по причине, верно? Ну, согласно Devops.com «Состояние внедрения и тенденции DevOps в 2017 году». Отчет , Усыновление DevOps увеличилось за последние пару лет, особенно с 2016 года, и оно не будет Стоп Анкет Проблема в том, что некоторым организациям трудно начать путешествие.

Несмотря на то, что начать инициативу DevOps — непростая задача, поиск людей, которые обладают необходимыми навыками, еще сложнее. Неважно, что такое ваш опыт; Разработчик или Sysadmin, вам нужно улучшить или приобрести новые навыки и знания, чтобы добиться успеха в вашей повседневной работе.

Давайте рассмотрим, что вам нужно, чтобы получить работу DevOps.

Иметь навыки кодирования

Вам нет необходимости иметь фон разработчика, хотя это облегчит. Но это это Важно, чтобы вы чувствовали себя комфортно читать код, чтобы вы его понимали, и что вы чувствуете себя достаточно уверенно, чтобы изменить его или даже создавать что -то с нуля.

Вы не будете изобретать колесо, создав новое программное обеспечение для развертывания, но вы создаете сценарии для автоматизации развертывания и других определенных задач.

Поэтому для вас не важно знать шаблоны дизайна, объектно-ориентированное программирование, функциональное программирование или кучу языков. Пока вы разработали свою логику-это значит у вас есть мышление решения разработчика-повторно используйте код, а не повторяйте себя, и поддерживаете другие практики, у вас не будет никаких проблем с получением этой работы.

Навыки важны, и вы можете развивать их, изучая только один язык программирования. Рекомендуемый (но не ограниченный) список для вас на выбор — это Go, Python, Ruby, Bash или PowerShell. Есть различные причины, по которым я их рекомендую. Но по сути это обычно используемые языки. Например, вам нужно знать Ruby, если вы хотите использовать повара. Наличие фона разработчика сделает это проще Чтобы вы адаптировались к команде, которая занимается DevOps.

Языки для конкретных доменов ( dsl ) также очень важны здесь, в зависимости от используемого вами инструмента. Некоторые используют Json. Другие используют Ямл . Это форматы представления, и именно так взаимодействуют некоторые инструменты. Например, когда вы определяете свою инфраструктуру как код с такими инструментами, как AWS Cloudformation или Terraform, вы определяете этот использование формата YAML. Как будто вы программируете, в основном структурно или процедурно.

Знать контроль версий

Для разработчиков нормально быть знакомы с контролем версий. Но если ваш фон находится в операциях, контроль версий не так распространен в этой области. По крайней мере, только в таких вещах, как Инфраструктура как код Пришли вместе.

Самая важная система управления версиями — Git Так хорошо знать, что это такое и как его использовать: как использовать ветви, привлечь (или слияние) запросы, и, что более важно, как решить конфликты слияния. Вам нужно иметь мышление «Если это не в контроле версий, я не доверяю этому».

Хороший способ практиковать контроль версий — использовать GitHub. Есть хорошие Учебные пособия и Курсы там Это поможет вам быть уверенным, используя git.

Знать об инфраструктуре

Вы должны знать об инфраструктуре. И я не имею в виду, как настроить маршрутизатор Cisco, хотя это ценно. Важно, чтобы вы знали о Сеть, безопасность, хранение и администрирование серверов Анкет Вам также необходимо ознакомиться с ключевыми понятиями, такими как высокая доступность, избыточность, самовосстановление и устойчивые архитектуры-и не только в теории. Вы также должны знать, как применять их в реальных сценариях.

Если вы работаете на стартап, почти гарантируется, что вы будете работать с облачным провайдером. Так что вам нужно знать о облачных вычислениях. Самые популярные прямо сейчас AWS, Azure и Google Анкет Выберите один, получите некоторый опыт и, если возможно, получите сертификацию. Облачные сертификаты улучшат ваши шансы получить работу и лучшую оплату.

Если вы работаете на предприятие, вы можете работать с серверами, которые являются локальные, в облаке или комбинация обоих Анкет Некоторые компании могут планировать мигрировать все в облако. Таким образом, облако важно, и его принятие каждый день увеличивается во всех типах организаций. Но одна вещь наверняка: даже если вы не работаете в облачной среде, это не значит, что вы не можете принять принципы DevOps, особенно когда вы знаете Критические практики Анкет

Итак, чтобы работать в DevOps, вам нужно знать о Непрерывная интеграция, непрерывная доставка, инфраструктура в качестве кода, управление конфигурацией, управление журналами и неизменная инфраструктура Анкет И когда мы говорим об неизменной инфраструктуре, мы не можем не говорить о контейнерах. Контейнеры Играйте большую роль в инфраструктуре В настоящее время , особенно Докер. Даже если вы не окажетесь в организации, которая уже использует контейнеры, вы можете оказаться в одной, которая хочет начать.   И если нет планов на это, принципы контейнеров, такие как упаковка, единственная ответственность и неизменная инфраструктура, также могут быть применены.

Знать и использовать правильные инструменты

Люди в отрасли говорят, что вы должны быть «Инструмент агностик» или что вам не нужно сосредотачиваться на инструментах. Но на самом деле хорошо познакомиться с некоторыми инструментами. Выберите хороший набор инструментов и начните что -то делать, что -нибудь — вы узнаете позже, был ли это правильным выбором или нет. Хотя DevOps — это не только инструменты , они все еще важны.

Вы обнаружите, что многие публикации вакансий требуют, чтобы вы узнали, как такие инструменты, как Дженкинс, шеф -повар, марионетка, Ansible, AWS Cloudformation, Docker и Terraform Анкет Это обычно используемые. Вам нужно знать, какую проблему решает каждый из этих инструментов. Некоторые из них компетентны сами по себе; Другие лучше, если вы их объедините. Когда вы начнете использовать эти инструменты, вы увидите, насколько важно, что вы знаете, как кодировать.

Есть мягкие навыки

DevOps — это все люди. Как инженер DevOps, вы будете проводить много времени с разработчиками и другими командами.

Вам нужно сообщить о важности применения некоторых из Принципы DevOps Анкет Это означает знание того, как продавать новые идеи и иметь для них солидные аргументы. Первоначально, коучинг команды будет важна, особенно если компания только начинает с DevOps. Люди всегда немного устойчивы к изменениям. Это нормально, пока ваши дебаты здоровы и конструктивны. И для этого необходимо иметь хорошие навыки общения, быть напористым и поставить себя на место другого человека.

Разработчики также должны осознавать, как все работает и почему некоторые вещи важны: такие вещи, как строительство, показывает флаги и непрерывная интеграция. Они помогают развертываниям быть более надежными и предсказуемыми. Конечная цель должна заключаться в том, чтобы доставлять быстро и часто, с хорошим качеством и детерминированным образом.

Принять вызов

В этом посте мы не глубоко погрузились в темы. Я только что упомянул, что вам нужно знать, чтобы быть инженером DevOps. Уже освоили все, что здесь упоминалось? Хороший. Продолжайте улучшаться!

Но если есть навык в этом списке, у вас нет, найдите время, чтобы узнать его и практиковать. Вы можете быть ошеломлены всем, чего еще не знаете, но расслабьтесь. Начните с одной вещи. Инструменты придут и уходят, но они становятся лучше. И это не только в том, как они решают проблемы; Это также в том, как они создают хорошо написанную документацию, так что ее легко выучить.

Примите вызов, потому что спрос на вас как инженера DevOps будет расти только с течением времени.

Оригинал: «https://dev.to/scalyr/devops-engineer-what-does-it-take-to-land-the-job-2d26»