Помимо кодирования — часть 1

Feb 19 2023
Давайте поговорим о том, что делает великого инженера-программиста. Хотя кодирование — это отличный навык, его достаточно только на ограниченный период времени.
Фото Люка Чессера на Unsplash

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

Помню, когда я начинал свою профессиональную карьеру, я был тем парнем, который собирал пользовательские истории и штамповал код. Но перенесемся на мой четвертый год, и вдруг я стал тем, к кому можно обратиться за ответами, когда что-то пошло не так. Мне нужно было знать ответы на такие вопросы, как «Как мы должны ограничить скорость этого маршрута?», «Почему наше приложение случайно падает?», «Почему мы тратим так много денег на эту часть нашего программного обеспечения, когда наши пользователи не так сильно его используете?» и «У нас всплеск трафика или это атаки?»

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

Кодирование — самая легкая часть нашей работы как инженеров-программистов. В наши дни это может сделать даже ИИ. По мере того как большие языковые модели, такие как GPT-3, лучше понимают контекст, ваша способность создавать продукты становится все проще, но ваша способность находить проблемы, исправлять и оптимизировать существующие системы будет становиться все более важной. Это то, что будет отличать вас от остальных.

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

Это первая часть серии Beyond Coding, в которой я буду писать о том, чему я научился на своем пути к тому, чтобы стать старшим инженером-программистом. Вместо того, чтобы писать о том, как создать следующее приложение на миллиард долларов с помощью новейшей среды JavaScript, я буду писать о том, что делать, когда возникают определенные проблемы в производстве, профилировании, оптимизации запросов, как выбрать правильный компромисс (потому что все компромисс), защита ваших API и многие другие интересные темы.