Мои опасения. Обычно кажется, что он не приносит столько же денег, сколько работа разработчика без предварительного опыта. Также кажется, что есть много людей, которые не добиваются достойной оплачиваемой работы. Какой хороший маршрут выбрать и стоит ли оно того?
Один из способов получить необходимый опыт, сохраняя при этом приличную заработную плату, - это устроиться на должность разработчика в небольшой магазин или небольшую фирму. Когда я учился в колледже, я прошел стажировку по программированию в небольшом магазине разработчиков, и первые пару недель я собирал и запускал кабель, занимался управлением сервером и обеспечивал запуск и запуск резервного копирования. Я также стал первым уровнем поддержки оборудования / рабочих станций. Раньше у меня был некоторый опыт работы с ПК, но ничего на уровне компании, которая этого требует. Я знаю других профессиональных программистов, которые прошли аналогичный путь.
Но одно предостережение: если вам действительно нравится разработка, возможно, вам стоит не делать этого. Вы можете почувствовать тоску по дням, когда можете сесть и написать код. Как системный администратор, такие дни будут редкими и будут прерываться из-за последних реальных проблем.
Мой карьерный путь перешел от производственной деятельности к деловой. Выглядело это так:
ИТ-поддержка -> Сетевой администратор -> Системный администратор -> Разработчик -> ETL / хранилище данных
Придется довольствоваться паршивыми часами и тасканием пейджера с первыми тремя позициями. Мне очень нравится это, но я не живу, когда просыпаюсь в 3 часа ночи из-за какого-то идиота-менеджера, который хочет помощи, потому что они удалили некоторые системные файлы на сервере (реальная история!).
Я провел свою карьеру в юго-западном регионе США, вдали от побережья. В других регионах может быть иначе. Вот некоторые моменты, связанные с операциями в вычислениях:
Этот тип работы приносит удовлетворение, если вы любите работать руками и ненавидите все время сидеть на одном месте. Иначе вы будете страстно ненавидеть это. Я один из тех, кому нужно 8 часов непрерывного сна, поэтому выход из дома был для меня хорошим шагом. :)
Свою профессиональную карьеру начал как программист. У меня степень по компьютерным информационным системам, и я был готов стать программистом. На моей первой работе после колледжа я занимался стандартной разработкой младшего уровня - контроль качества, тестирование, создание сценариев, преобразование проектов между языками, программирование веб-сайтов и т. Д. Затем выяснилось, что парень, которого компания наняла в качестве системного администратора, подходит для программирования. / development нуждается в лучшем, чем я (им действительно нужен был человек более высокого уровня), и я хорошо подходил для системного администрирования. В конце концов, я все равно делал это в течение многих лет в качестве хобби, и я предпочел это программированию.
На протяжении многих лет с тех пор я в первую очередь системный администратор, хотя в прошлом году я увидел, что моя роль снова изменилась на программирование. Большое количество QA и приемочного тестирования с помощью инструментов автоматизации из-за управления конфигурацией. Каждая книга, которую я читал, посвящена автоматизации системного администратора. Они говорят, что вам нужно автоматизировать любую задачу, которую вы выполняете более одного раза. Это так. Автоматизация, конечно, требует ... программирования.
Итак, я думаю, вы можете пройти полный круг.
Область системного администрирования действительно склоняется к программированию как к обязательной дисциплине с растущим числом API и фреймворков, используемых для настройки серверов, экземпляров и инструментов и управления ими.
Например, Puppet действительно сломал пространство системного администратора, сделав отличный инструмент автоматизации для массового использования. Конечно, cfengine существует уже некоторое время, но даже за 10 лет системного администрирования я никогда не касался его. Вместо этого, как и многие другие системные администраторы, я собрал свои собственные инструменты из различных сценариев и компонентов. Новый инструмент Chef - это еще больший прорыв, потому что он предлагает не только декларативный язык конфигурации, но и RESTful API, с помощью которого можно программировать узлы и ресурсы.
Эти методы выводят производительность и масштабируемость на первый план в списке задач системных администраторов. Вместо того, чтобы тратить часы (или недели, или больше) на выяснение того, как связать ваш инструмент мониторинга с веб-интерфейсом управления системой, вы можете сосредоточиться на анализе данных, которые предоставляет инструмент мониторинга, чтобы вы могли улучшить производительность и бизнес-показатели.
Кроме того, мне это намного интереснее, чем установка и настройка Nagios;).
Лучше всего получить какую-то роль технической поддержки, в идеале, в компьютерном магазине, который обслуживает малый бизнес. Работа в одиночной роли не даст вам особо ощутить те проблемы реального мира, с которыми сталкиваются высокооплачиваемые системные администраторы.
Вам нужно выбрать карьеру, которая вам понравится, если вы не собираетесь получать удовольствие от 5+ лет низкооплачиваемой работы системного администратора, будучи на связи 24/7, тогда вы никогда не дойдете до конца, где вы сделаете всего несколько ночей в месяц, а остальное время у вас много свободного.
Вы могли бы делать и то, и другое одновременно, то есть работать в основном как разработчик и начать администрировать среду разработки, а также SCM. Вы начнете получать знания об установке и настройке программных инструментов и машин, связанных с вашей средой. Накапливайте опыт таким образом, а затем медленно, но верно переходите к более зрелой работе системного администратора.
Я ездил разработчиком на дорогу системного администратора вот так.