пятница, 19 сентября 2008 г.

Техподдержка

Главный специалист по техподдержке увольняется, еще двое уходят в отпуск. Начальник спросил, не возражаю ли я их временно подменить.

- А что делать? Исправлять ошибки в программах?
- Нет...скорее решать проблемы.

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

Есть семь больших систем, которые хитро взаимодействуют друг с другом через BizTalk или напрямую. Функциональность частично перекрывается, т.е. одни и те же данные модифицируются в разных системах. Так что автоматически синхронизировать разные базы данных очень непросто. Разработкой в основном занимались давно уволившиеся программисты или посторонние организации по контракту.

Ежедневно я получаю несколько сотен автоматических емейлов об ошибках. 90% из автоматически отправляются в корзину, потому что на самом деле это не ошибка; или может быть ошибка, но никто все равно не знает, что с ней делать.

Оставшиеся 10% я проверяю вручную (заглянуть в какой-то каталог, запустить запрос, найти емейл, вставить что-то в Excel и пр.) Опять-таки, подавляющее большинство большинство этих ошибок исправляются сами собой... либо мы их игнорируем, потому что не знаем, как исправить. Иногда все-таки от меня требуются какие-то действия, например: переложить файл из архива во входной каталог BizTalk, повторно отправить сообщение в MSMQ, связаться с другой командой техподдержки.

Большинство этих операций простые и тупые, но на них уходит много времени. Я сразу стало думать об автоматизации, но сказали: "Нельзя, сейчас код заморожен, пока не перейдем на новую систему".

Есть мнение, что программисту иногда полезно посидеть на такой работе, чтобы прочувствовать все изнутри. Частично с этим согласен, но люди постепенно начинают немного тупеть.

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

- На каком этапе в типографию передается сверстанный текст и фотографии?
- Понятия не имею! Никогда не думал об этом, честно говоря... Наверное, их шлют вручную по емейлу.

Т.е. со временем ты научился решать свои ежедневные проблемы и перестаешь думать о большой картине.

Еще надо отвечать на запросы пользователей. Конечно, главная цель - это не улучшить эффективность работы организации, а побыстрее закрыть дело, или по-крайней мере перекинуть на другой отдел. Если на отделе висит много открытых дел, это плохо. Бывают смешные ситуации: я шлю запрос в другой отдел, а они, не вникнув в вопрос, перебрасывают решение проблемы на меня; а я опять на них.

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

И правильно делает, ситуация сейчас неважная. Регулярно читаю плохие новости о банках, куда я недавно ходил или собирался на собеседования. Lehman Brothers вон вообще обанкротился, и даже неизвестно, заплатят ли людям зарплату за сентябрь. У одного парня был прикол: банк обанкротился в его первый рабочий день.

По долгу службы немного сталкиваюсь с SOX (Sarbanes-Oxley Act). Это американский закон, который во многом посвящен защите информации. Есть вполне очевидные вещи, вроде "правила двух рук" (разработчик не может иметь полный доступ к рабочей базе). Но одно правило меня удивило: оказывается, нельзя сказать: "Заведите аккаунт Иванову и дайте ему точно такие же права, как Петрову". Положено прямо перечислить необходимые права или роли, но запрещено "клонировать" пользователя.

3 комментария:

dp комментирует...

Да, в банки ты вовремя не попал :)

А меня еще убивает, когда говорят, что надо сделать сайт "как тот". Нельзя сделать как тот, надо перечислить, что будет на новом -- но не понимают многие. Хотя уже я насобачился их понимать.

Z комментирует...

Поделюсь информацией о том, каким должен быть эталонный HelpDesk.
HelpDesk должен принимать обращения пользователей из любого возможного источника. Каждому обращению проставляется маштаб влияния на бизнес/клиентов/внутренних пользователей и срочность. Исходя из этих двух характеристик получается приоритет. Каждый приоритет имеет свои сроки решения (SLA). Сотрудник HelpDesk обязан найти решение в базе знаний. Если решени в базе знаний нет, то он обязан эскалировать на следующий уровень. Если уж совсем не тупить, то можно применить собственный экспертный опыт и постараться решить инцидент на своём уровне, однако это зависит от того, хватит ли тебе времени, отведённое под решение инцидента данного приоритета на твоём уровне, а также какой SLA по числу решённых инцидентов на твоём уровне стоит в целях. (Когда я начанил работать в HD у меня была цель 68% решено на первом уровне. Спустя пять лет планка опустилась до 30%). Процесс переназначений инцидентов с отдела на отдел носит негласный термин "футбол". Инциденты, имеющие переодическую основу носят название "проблемы" и устраняются problem manager`ом. У него нет ограничения по времени, потому что в его обязанность входит найти и устранить корневую причину повторяющихся инцидентов. Задача же участников управления инцидентами (в первую очередь сотрудника HelpDesk), восстановить сервис в кратчайшее время. Отсюда и возникает тупизм. Не обязательно знать причину инцидента - достаточно иметь типовое решение в базе знаний.

Z комментирует...

Про SOX - там ещё много чего интересного есть. Но можно, например, создать профиль "Иванов", а Петрову тогда уже давать права в соответствии с профилем "Иванов". Вроде как и по SOX, и вроде как и эффективно.

Ratings by outbrain