Слогер Создать блог
Карьера

Как сисадмину стать разработчиком: 5 шагов от скрипта до приложения

Системный администратор без учебников по алгоритмам превратил рутину в полноценное приложение. Разбираем, как лень и автоматизация меняют карьеру, и что можно позаимствовать из этого опыта.

Сисадмин с отверткой и загрузочной флешкой — типичный портрет человека, который чинит серверы, когда они падают. Но именно такие люди часто становятся лучшими разработчиками. Не потому что кто-то прочитал учебник, а потому что устали делать одно и то же руками.

Эта история начинается с двух слов: дисковый массив. Ну и с того, что админу надоело вводить команды в CLI.

Рутина — двигатель кода

Всё начинается с мелочей. Установить Chrome на сорок компьютеров, создать сто пользователей в Active Directory, поменять права, сбросить пароли. Любой сисадмин рано или поздно понимает: если операцию нужно повторить больше трёх раз, её лучше автоматизировать.

Первый скрипт часто уродлив. В оригинальной истории это был цикл foreach по списку компьютеров с psexec. Три часа ручной работы превратились в кофе-брейк. И это чувство победы запоминается надолго.

Машина не осудит твою лень. Лень — это топливо для автоматизации.

Так появляется привычка писать скрипты. Сначала для себя, потом для коллег. Но пока это ещё не разработка — просто набор полезных команд.

Когда скрипт становится программой

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

В истории с дисковыми массивами NetApp проблема была в том, что создание тома — это одна длинная команда с десятком параметров. Ошибиться в имени агрегата — и ты получаешь неправильную конфигурацию, тикет и длинный вечер. Сисадмин решил сделать форму: с вкладками, кнопками и выпадающими списками. Чтобы не надо было помнить, что платиновый QoS — это 937,5 МБ/с.

Первая версия была на PowerShell с WinForms. Если вы пробовали — знаете, это боль. Но она работала. Потом пришло время Python, PySide6 и нормальной архитектуры.

Чему учат ошибки в реальном коде

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

ОшибкаПроявлениеРешение
Целочисленная математикаКоманда -size 33.99GB не выполняется, массив отказываетОкругляй вверх: math.ceil() вместо простого умножения
Неправильное имяТом создаётся, но с неверным именем из-за невнимательностиИспользуй регулярные выражения для валидации до выполнения команды
Ложная ошибкаИнструмент сообщает о сбое, хотя команда ещё выполняетсяЖдать маркер успеха (например, «Successful») вместо таймаута по тишине
Ошибка в собственном кодеПоля LUN и volume перепутаны в скрипте-первоисточникеФиксить и документировать, почему это расходится с оригиналом

Обратите внимание: ни одна из этих ошибок не была про знание языка. Все они — про внимательность к деталям и понимание предметной области.

Пять шагов от сисадмина к разработчику

Если вы узнали себя в этой истории, вот практический план действий.

  1. Найдите свою самую ненавистную рутину. Команду, которую набираете 40-й раз. Идеальный кандидат для первого скрипта.
  2. Напишите скрипт, который делает это за вас. Даже если он уродлив. Даже на PowerShell. Главное — он должен экономить время.
  3. Добавьте обработку ошибок. Что будет, если команда не выполнилась? Научитесь ждать маркер успеха, а не просто падать по таймауту.
  4. Сделайте интерфейс. Это необязательно, но именно так скрипт превращается в инструмент для других. Хотя бы простую форму или конфиг-файл.
  5. Используйте инструмент в реальной работе. Собирайте обратную связь, чините баги, записывайте изменения. Это уже процесс разработки.

Что делать, если вы сисадмин и хотите в разработку

Вот несколько правил, которые работают вне зависимости от вашего стека.

  • Не нужно начинать с теории алгоритмов. Начните с задачи, которая болит. Всё остальное придёт следом.
  • Используйте свой опыт. Вы знаете, как работают серверы, сети, базы данных. Это полдела в разработке — понимать, для кого и зачем пишется код.
  • Не ждите разрешения. Никто не просил сисадмина делать утилиту для NetApp — он сделал её, потому что ему надоело. Это легитимный старт.
  • Готовьтесь к тому, что ваш код будет использоваться. Тогда придётся думать о том, как он выглядит, как тестируется и как сопровождается.

В итоге из простого скрипта выросло полноценное приложение: с тёмной темой, поддержкой трёх языков, тестами и changelog. Автор этой истории признался себе: «Я разработчик» — хотя формально образования так и не получил.

Если вы сисадмин и постоянно вставляете одну и ту же длинную команду — попробуйте обернуть её в скрипт. Это может занять выходные, сэкономить год работы и, возможно, изменить вашу карьеру.

По материалам: career. Текст переработан редакцией Слогера.

← На главную

Рекламное место — Конец поста
Реклама · Слогер

Комментарии (0)

Войдите, чтобы комментировать.

Пока нет комментариев. Будьте первым.