Инженеры ли вы?

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

«Мы ищем инженеров» — похожее объявление можно увидеть в разделе вакансий какого-нибудь стартапа. Что может означать, что угодно: от программиста Java Script до специалиста по робототехнике. Правильно ли это? И кто это — инженер в разработке? На эту тему в своей заметке рассуждает Ян Богост (Ian Bogost), академик и член редакции технологического раздела портала The Atlantic.

Термин, вероятно, является сокращением от «инженера по программному обеспечению». Инженер — это звучит гордо. При этом в отношении «классических» инженеров действуют определённые нормы и правила, требования к сертификации, постоянному образованию. Инженерные дисциплины заявляют, что несут ответственность за общественную безопасность и надёжность. А ИТ вследствие широкого использования где ни попадя обесценивают понятие «инженер»...

На протяжении последних лет невозможно не заметить масштабные сбои в работе программного обеспечения. Утечки данных в таких видных компаниях, как: Target, Home Depot, BlueCross BlueShield, Anthem, Harvard University, LastPass показывают лишь небольшую часть проблем с информационной безопасностью, вызванных современными компьютерными системами. Но эти проблемы являются наиболее актуальными и запоминающимися. Системы могут таить риски как для отдельного человека, так и для общества, риски, на которые мы никогда не пошли бы в более осязаемых конструкциях — таких как мосты, здания, электростанции, системы противоракетной обороны. Обновление Apple iOS 9 приводило к «окирпичиванию» некоторых телефонов, делая невозможным их дальнейшее использование. Web-сервисы, например Google Docs, иногда таинственным образом «падают», оставляя пользователей, чья работа зависит от них, в большой беде.

Информационные технологии стали инфраструктурой, но они не работают, как инфраструктура, замечает Ян.

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

К 1960-м годам крупные системы Министерства обороны США в основном управлялись компьютерами. Но создание таких систем было потрясением — сорванные сроки поставки, превышение бюджета, ненужная сложность полученного продукта. В конце десятилетия Научный комитет НАТО выступил спонсором двух конференций, посвященных разработке инженерного подхода к созданию программного обеспечения.

Отчёт конференции 1968 года говорит о том, что сама фраза «программная инженерия (software engineering)» является провокационной, подразумевая необходимость разработки программного обеспечения на основе теоретических основ и практических дисциплин — как в обычном инженерном деле. Создание программного обеспечения не имело и не имеет ничего общего с промышленным производством или строительством, где изменения сложно или невозможно внести после первоначального воплощения. И почти через 50 лет после конференций Научного комитета НАТО, некоторые из предупреждений его участников по-прежнему актуальны. «В конкурентной гонке, чтобы предоставить заказчикам новейшие технологии, мы совершаем большие прыжки в пропасть неизвестной ширины и глубины». Похожие ощущения сохраняются и сегодня.

В поздних 70-х, с появлением персонального компьютера произошла компьютерная революция: каждый, кто обладал ПК, мог и программировать на нём. Такая демократизация разработки вызвала, в свою очередь, революцию в среде пользовательского и бизнес-ПО. И увеличила риски. Разработка систем класса MS Excel или бэк-офисной системы авиакомпании сродни строительству моста или здания. Такие случаи требуют инженерного подхода. В то время как проба пера в программировании, создание приложения для скачивания в BBS (теперь — магазин приложений) — нет. Неформальность в разработке программного обеспечения еще больше ускорилась с ростом Интернет, начиная с середины 90-х годов, и продолжается по сегодняшний день.

При этом, продолжает Ян, попытки движения в сторону формализации требований и применения инженерного подхода к разработке ПО есть. Так, например, Национальная Палата экзаменаторов в области инжиниринга и инженерных изысканий (NCEES) США начала предлагать тестирование для инженеров-программистов. Экзамены были подготовлены в сотрудничестве с IEEE, который поддерживает Центр знаний по программному обеспечению (SWEBOK).

Вполне возможно, череда серьёзных сбоев программного обеспечения приведёт к изменению общественного мнения. Появится запрос на изменение и реформирование стандартов разработки ПО. И постепенно дело дойдёт и до правильного названия профессий. Ну не называем же мы графического дизайнера или управляющего хедж-фонда инженерами. Разве они создают что-то, связанное с инфраструктурой, что-то связанное с интересами всего общества?

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

ITIL ITIL Practitioner — новый учебный курс 2016

Правильный следующий шаг после ITIL Foundation.
 

Узнайте больше!

Комментарии и мнения

  1. AlexanderK

    Мысль про социально ответственное ведение бизнеса (IT-related) или выполнение отдельных видов деятельности (software development)? Как-то в кучу всё у автора: и информационная безопасность не такая, и риски какие-то мало кем осознанные. А в итоге и инженеры не инженеры, ну или, как минимум, пусть так себя не называют 🙂 Забавно.

    P.S. «The title “engineer” is cheapened by the tech industry.» ≠ «А ИТ-технологии вследствие широкого использования где ни попадя обесценивают понятие «инженер»...». Да и «ИТ-технологии» это прям что-то ... 🙂

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Ближайшие мероприятия

Зарегистрируйтесь, чтобы получить больше полезных знаний:

СЕН
27
ОКТ
1