Почти год назад разработчик Йен Хуан ушел из Amazon в Twitter. Вот чему его успела научить соцсеть за это время.
1. Поддерживать сервисы в рабочем состоянии
Разработка — это не только создание новых функций, но и поддержка существующих. Сервисы никогда не должны отставать в производительности. Это нужно, чтобы сохранить доверие клиентов. Если существующие сервисы не могут обеспечивать тот же SLA (соглашение об уровне обслуживания), то зачем клиентам их использовать?
Существует множество способов поддерживать сервисы в рабочем состоянии.
- Oncall
- Мониторинг
В системах мониторинга можно установить порог для ключевых показателей, и, когда они будут превышены, дежурный получит уведомление. Но это — палка о двух концах. Если небрежно определить порог (то есть установить слишком низкие или слишком высокие показатели), заявок будет слишком много. Поэтому нужно выбрать такой порог, который будет указывать на реальные проблемы сервиса. Кроме того, не стоит усердствовать и устанавливать порог для каждой метрики. Оповещения должны приходить о важнейших показателях, которые могут иметь разрушительные последствия, если их быстро не вернуть в норму.
- Автоматизация
- Операционная гигиена. Очень важно иметь высокую операционную гигиену, чтобы ручные операции не спровоцировали проблемы. Один из способов решить эту задачу — написать инструкцию, в которой будут подробно описаны шаги для выполнения каждой ручной операции. Кроме того, другой член команды может проверить работу оператора, особенно если известно, что эта операция вызывает проблемы.
50% задач разрабочика — поддержание сервисов в рабочем состоянии. И эту задачу нельзя назвать заурядной. Разработка — это не просто написание кода.
2. Писать надежный код
Важно убедиться, что любой введенный код гибко реагирует на изменения. Это особенно важно, когда меняются требования бизнеса.
- Принцип DRY
DRY означает Don’t Repeat Yourself — «не повторяйтесь». Один и тот же фрагмент кода не должен повторяться несколько раз. Если это так, то вам, возможно, придется оптимизировать его, чтобы избежать избыточности. Если понадобится изменить логику кода, корректировки нужно будет внести только в одном месте.
- Тесты
Придумывайте тестовые случаи для всех функций, которые вы добавляете. Важно, чтобы новшества не нарушали существующую систему. Тестирование может быть утомительным, но оно очень полезно.
- Архитектура
Если при написании кода не учитывать архитектуру, проблемы будут копиться как снежный ком. Подумайте, как другие сервисы станут взаимодействовать с вашим, насколько легко его получится обновить в будущем и как его можно протестировать. Код должен быть написан таким образом, чтобы изменению логики ничего не препятствовало.
- Постоянные значения
Не идите на риск — вместо этого используйте константы. Если значение когда-либо потребуется обновить, правки придется внести только один раз.
3. Проявлять инициативу
Разработчику вредно стагнировать — ему стоит стремиться к лидерству в команде. Чтобы увеличить влиятельность, проявляйте инициативу и готовьтесь взять на себя новые задачи, которые вам не нравятся. Хороший разработчик может справиться с новой задачей с минимальной помощью. Я начал больше анализировать код сервисов, с которыми я не был знаком. Я заставил себя чаще критиковать технические проектные документы, касающиеся крайних случаев или уязвимостей. Я даже попросил руководителя, чтобы он назначил меня на проекты, которые помогут мне развить свои слабые стороны.
Понадобится не только пробовать себя в новой области, но еще и продумывать, с какими трудностями может столкнуться ваша команда и как с ними справиться. Всегда размышляйте о будущем и решайте проблемы на этапе возникновения — до того, как они разрастутся. Проактивность — навык, над которым я сейчас работаю. Надеюсь, с его помощью я смогу выйти на следующий уровень.
Фото: Unsplash
Нашли опечатку? Выделите текст и нажмите Ctrl + Enter
Материалы по теме
-
Пройти курс «Просто о сложном: первые шаги в бизнесe»
- 1 Число запросов белорусских IT-разработчиков на работу в России выросло в 5 раз — исследование
- 2 Четыре книги, которые должен прочитать каждый разработчик
- 3 Три полезных привычки, которые помогут стать отличным разработчиком
- 4 Каких ошибок нужно избегать разработчику: 21 совет от специалиста c 21-летним опытом