Программист — профессия человека, занимающегося разработкой программного обеспечения. Так определяет эту профессию Wikipedia. Но объектом для этой статьи будут не те талантливые и удачливые люди, что создают программы, а скромные работники технической поддержки, что помогают миллиардам пользователей эти программы освоить.
Программист техподдержки, конечно, тоже создаёт свои программы, но они, как правило просты и играют вспомогательную роль для работы Больших программ. Основное же время программист тратит на работу с пользователями (обучение, ответы на вопросы) и выявление ошибок в чужих программах.
Работа программиста техподдержки роднит его с представителями других вспомогательных служб: водопроводчиками, электриками, радиотехниками. Человек пользуется плодами их труда ежедневно, не замечая вложенного в это труда и не отмечая положительно тех, кто обеспечил их благополучие. К хорошему легко привыкают.
Но стоит чему-нибудь сломаться - человек бежит к водопроводчику, электрику, программисту и кричит: "Не работает! Почини немедленно!". Тот, кто кричит, не понимает, что поломка в 99% случаев обусловлена естественным ходом вещей (износ, засорение, прогорание, устаревание) и своими обвинительным тоном настраивает слесаря или программиста против себя. Ни слесарь, ни программист не виноваты в том, что наш мир несовершенен. Если бы проблемы возникали по вине программистов и слесарей следовало бы просто сократить эти должности и проблемы прекратились бы сами собой. В нашем мире каждый выполняет свою функцию и в случае поломки следует без обвинений сообщить об этом специалисту и позволить ему выполнить свою работу.
Привычка обвинять порождает естественную защитную реакцию, которая быстро закрепляется в виде шаблона поведения. Возникает напряжённость, ожидание обвинений, конфликта, что провоцирует новый конфликт.
Можно возразить, что представителей других профессий тоже не хвалят за каждодневную качественную работу. Но наказывают их за совершенные ошибки, а не за стихийные бедствия и капризы природы. Столяр будет наказан, если сделает бракованное изделие, а программиста наказывают, если компьютер, сделанный и купленный не им, с установленными чужими программами и стоящий в другом здании, вдруг перестанет работать. Так же будет наказан и слесарь, если вдруг, после десяти лет, проржавеет и прорвётся закопанная и заваренная не им труба. Здесь под наказанием я понимаю незаслуженные обвинения (пусть и не выраженные явно) от пользователей водопровода или компьютера.
Работа человека с компьютером предполагает сотрудничество с программистом. Именно сотрудничество, партнёрство, взамоотношения равного с равным, а не "основного работника" с "обслугой". Про портных и сапожников ведь не говорят: "мы ту дела делаем, а вы нам только помогаете." Попробуйте сказать врачу, что он всего лишь "обслуживает основных работников", помогает им нормально жить, не болеть и выполнять "по-настоящему важную функцию".
Считается, что программисты обязаны решать все проблемы, связанные с компьютером, будь то исправление ошибок или расширение возможностей. В этом призвание и миссия программистов на Земле. Поэтому, если возникает какая-нибудь проблема - можно требовать немедленного её решения от любого находящегося рядом программиста. Неважно, входит ли это в его должностные обязанности или он вообще здесь случайно - сделай и всё!
Платить программисту (если он не на работе) считается необязательным ("Тебе ведь интересно!?") и люди с удивлением и обидой слышат о необходимости оплаты.
Работодатель считает что, программист должен знать всё, что как-то связано с компьютерами: начиная с криптографии и заканчивая сменой картриджей и набором персонала для работы на ПК. То, что количество знаний связанных с компьютером давно превзошло возможности человека, никого не интересует. В будущем, скорее всего, появится специализация программистов и уже появляются первые ласточки: "Программист 1С". Но, на самом деле, работодатель будет удивлён, если "программист 1С" вдруг откажется менять картриджи, настраивать локальную сеть, чистить "мышки" и разгружать грузовик с офисной техникой и мебелью.
Отдельная песня - системный администратор или сисадмин. Он тоже программист техподдержки и на него распространяется всё вышеописанное. Но есть одно "но": сисадмин отвечает за работоспособность всех информационных систем предприятия. В его власти отключить любую, сколь угодно большую организацию от связи с внешним миром. Прервать связь с партнёрами, поставщиками и клиентами, закрыть доступ руководства к внешнему миру. Практически, поставить "шах" предприятию.
Вся эта невероятная власть не уравновешена ответсвенностью. Если сисадмин обрушит бизнес и обанкротит предприятие - его уволят, пострадает его репутация и только. Сравните это со "всемогущим" главбухом, в чьих возможностях - лишь завладеть некоторой частью финансов организации, чтобы вскоре "сесть". По-настоящему, на нары, ближе с Полярному кругу.
Низкий социальный статус сисадмина, который следует из его принадлежности к миру программистов техподдержки - это мина замедленного действия. Ему приходится решать вопросы уровня предприятия, но к его мнению никто не собирается прислушиваться. Человек с подобной властью должен быть уважаем не менее, чем тот же главбух и пользоваться теми же привилегиями. Он должен быть частью руководства и участвовать в принятии решений, т. к. организации всё больше зависят от информационных технологий.
Очень много времени программист проводит в ожидании: начиная от ожидания вызова для решения проблем и заканчивая ожиданием загрузки компьютера. Запустив любую программу приходится ждать пока она загрузится или выполнит некоторую функцию. После проведения настроек приходится ждать пока они вступят в действие. Работа программиста - работа по управлению процессами. От этого - привычка, что время, затраченное на работу может существенно превысить запланированное.
суббота, 21 февраля 2009 г.
Подписаться на:
Сообщения (Atom)