Немного пройдемся по самой платформе 1С и реализуемых продуктах на этой платформе.
Не секрет, что до того, как 1С стала такой как «сейчас», автоматизацию многих решений даже не рассматривали для решения на платформе 1С. И в настоящее время платформу 1С рассматривают в основном как решение для бухгалтерских/складских/торговых задач. Считаю это очень большой ошибкой. ИМХО, на платформе можно строить системы разного уровня сложности и области применения. В этом я убеждаюсь все больше и больше, закрывая проекты и решая повседневные задачи.
В тоже время одной из основных причин популярности платформы 1С является простота освоения и «быстрый старт» проектов. Множество людей могут достаточно быстро и элементарно накидать несколько объектов через конфигуратор и запустить приложение на исполнение. Но… 1С уже давно переросла стадию «колыбелька для начинающих программистов». Сложнейшие расчеты и технологии, которые при грамотном использовании позволяют избегать ошибок работы с базами данных, избавляют программистов от необходимости рисовать диалоговые окна, обрабатывать данные в несколько потоков, строить сервисы различного уровня доступа. И при этом достигать достаточно высокого уровня быстродействия. Для 1С одновременная работа 8(восьми) тысяч пользователей онлайн, или обрабатывать свыше 3.5 тысяч WEB обращений в минуту - не является пределом.
Скорость работы кода, написанного в 1С, скорее я бы отнес к «–» (минусу) этой платформы. Однако платформа 1С никогда не позиционировалась как язык высокого уровня программирования с быстродействием как у «C++» и прочих. Платформа 1С – это интерпретатор языка, что сразу говорит о снижении скорости при работе с написанным кодом в 1С.
А теперь о тех вопросах с которыми сталкивался при решении задач на проектах …
- Необходимо четко понимать, кто и чем из сотрудников занимается на проекте или в штате компании, который занимается решением задач по 1С.
Довольно часто необходимо решать задачу по найму сотрудников, специалистов 1С. Задача «Найти программиста 1С» для проекта по внедрению конфигурации «Бухгалтерия предприятия» может перерасти в конфликт. Т.к. в современном мире бытует мнение, что «Программист» умеет все. А «Программист 1С» - еще больше.
В какой-то прекрасный день у руководства компании возникает мысль (неважно, каким способом), - «Раз нашли «Программиста 1С» и успешно запустились с внедрением «Бухгалтерии предприятия 1С», давайте сделаем (к примеру) «Интеграцию с нашим сайтом». Ведь в штате уже есть отличный «Программист 1С»».
Спустя некоторое время весь отдел ИТ, при невозможности решить эту задачу текущими/собственными силами, подпадает под гнев всех вышестоящих руководителей. Это один из возможных сценариев.
В подобных случаях приходится доказывать на высшем уровне, что для внедрения отраслевых решений требуются узкие консультанты по направлениям и отраслевым решениям. И лучше это попытаться доказать до начала внедрения очередного продукта 1С. Хотя если доказать не получится, то можно ожидать плачевный итог.
- Затрону тему о направлении специалистов для решения задач на проекте. Специфика внедряемых отраслевых решений должна быть понятна всем участникам проекта.
Задействовать сотрудника, который всю жизнь работал с приложением «Бухгалтерия предприятия 1С», на проекте по внедрению «Зарплата и управление персоналом» - это очень похоже на «Пойди туда, не знаю куда. Принеси то, не знаю что». И тут не поможет стимуляция сотрудников «Ты все можешь, мы тебе зарплату прибавим». Однако может получиться отменный долгострой, это смотря какие планы у вышестоящих руководителей или у руководства компании.
- Необходимо понимать, что количество задач, решаемых специалистами зависит от масштаба и ресурсоемкости этих задач.
Достаточно часто сталкиваюсь с тем, что многие не понимают ресурсоемкость и масштабы выставляемых/озвученных задач, - «Ведь 1С – это просто» (ИМХО, это высказывание является общим заблуждением). При чем бывает, что не понимают с обеих сторон, как те люди, которые ставят задачи, так и те, которые решают эти задачи. При этом требуется решение подобных задач в срочном порядке и буквально «вчера». Бывает постановщики задач реагируют достаточно агрессивно на доводы и возражения от специалистов 1С. В итоге такие вопросы часто приходится решать не на локальном уровне, а на уровне руководства или ТОП менеджеров.
Опять же скорость, качество и результат решения задач напрямую зависит от уровня и направления специалиста 1С. Требовать от консультанта переписать код программы – как минимум смахивает на недальновидность ставящего подобную задачу.
Однажды наблюдал как проект, который можно было завершить за 3-4 месяца, перерос в проект, который не завершился спустя год (дальше я прекратил следить за проектом). Очень доверительные отношения ТОП менеджеров с главным бухгалтером привели к такому выбору пути решений по проекту (наступать на грабли, по которым прошли уже сотни специалистов, никто не запрещает ;) ).
- Конечно же количество задействованных специалистов также влияет на качество и скорость проведения работ, внедрения новых идей.
Каким бы крутым и универсальным специалистом не был ваш «Программист 1С» его можно утопить в пуле задач разного масштаба. Решая мелкие/повседневные задачи, специалист будет мало времени тратить на крупные задачи/проекты. Будут откладываться задачи по проектированию дополнительного функционала. И наоборот, решая крупные проектные задачи, организация может испытывать нехватку специалиста на повседневных задачах, что может привести к задержке по консультированию/ликбезу коллег, вплоть до остановки работы предприятия.
К повседневным задачам также относятся задачи по обслуживанию информационных баз и инфраструктуры 1С, что крайне важно для крупных внедрений, где информационные базы превышают размер в 30ГБ и количество операций в месяц достигает 1000 и более. Из-за несвоевременно сделанной резервной копии придется повторять множество операций в информационной базе всем участникам проектного решения на 1С.
Казалось бы: что такое 1000 операций в месяц? Представим, что это 1000 документов в месяц, которые надо завести в систему и провести.
Короткий расчет: для 1го участника (оператора) – это 45 документов за день или 6 документов за час. Для повседневной работы – это не сложно, но когда надо сделать потерянный объем в неделю разницы за 1 день? Т.е. 30 документов за 1 час или 240 документов за день. А это уже проблематично. И ведь никто не отменял другие повседневные и прочие задачи.
- Требуется оценивать глубину проработки решений по задачам/проектам.
В решениях 1С часто переплетаются между собой различные подсистемы/блоки/кубы, входящие в эти решения. Изменение/доработка в одном месте может вызвать критический сбой в другом. Однозначно никогда нельзя утверждать, что доработка будет критична или не критична для работоспособности системы в целом. Ошибки могут себя показать после очередного обновления/перехода программы/решения на новый релиз или при обновлении платформы 1С:Предприятие.
В дополнении к перечисленному могут некорректно отображаться/собираться данные в отчетных формах, что выявляется обычно на точечных, узконаправленных бэта-тестах или на стадии эксплуатации.
Хорошо проработанные/спроектированные решения по доработкам конфигураций вписываются в общую концепцию модернизируемого решения 1С и работают дополняя друг друга.
Однако проработка решений и дальнейшая их реализация могут занимать достаточно много времени. И в этом случае может возникнуть следующая проблема:
- Изменение концепции задачи при ее реализации.
Это наиболее часто возникающая проблема на крупных предприятиях. Если команда привыкла работать на доверительных отношениях, то это кончается тем, что клиент (заказывающая сторона) говорит, - «Мы этого не просили»; или, - «Вы сделали не так, как мы просили».
Нередко из-за таких случаев с проекта уходят очень достойные люди, не выдержав психологического давления. Однако в программировании существует так называемый «принцип неопределенности», когда конечное решение может меняться на любой стадии проекта и это всегда надо учитывать при проработке решений.
- Оценка вклада сотрудников в тот или иной проект/решение задачи.
Очень редко, когда сотрудник, который был занят на проектировании и разработке какой-либо сложной задачи будет похвален. Примите это как должное. Для того что бы каким-либо способом премировали специалиста 1С, надо выполнять много задач на виду у всех. На самом же деле только руководитель подразделения ИТ, который знает специфику и направление работы группы внедрения/модернизации продуктов, способен адекватно оценить реальный вклад участников в проект или решение задачи.
Что поможет избежать множества проблем и не попадать в «выбоины на дорогах» по внедрению решений на платформе 1С, думаю и не только на 1С:
- Для проектных решений ищите специалистов по направлениям;
- Разгрузите своего «Мега специалиста», подозреваю, что он есть во многих организациях. Скорее всего это будет дешевле, чем терять время в спорах и совещаниях;
- Следите за количеством поставленных задач, качеством их выполнения и скоростью работы специалистов. Если показатели работы определенного специалиста резко упали и они вас не устраивают, это может значит, что специалист перегружен. Попробуйте снизить нагрузку на него (способов множество). ИМХО - это гораздо эффективнее, чем потерять «своего» специалиста;
- Для точечных решений выбирайте узконаправленных специалистов, это поможет сэкономить денежные средства компании, время и нервы всех участников проекта;
- И конечно же поощряйте сотрудников.
Если посчитать выхлоп между трудозатратами на дополнительного специалиста и качественно решенного проекта/идеи, то я считаю, что выигрыш для бизнеса будет очевиден.
К примеру: взять тот же долгострой (про который я писал выше), который можно было сделать за 4 месяца.
Простой расчет (без накруток на издержки, совещания, потери времени, дополнительные соглашения, потраченные нервы и прочее).
Наем дополнительного специалиста и передача руководства проектом на грамотного сотрудника с опытом внедрения ИТ проектов, обошлась бы компании в:
Вводные данные:
- 2500 стоимость часа (наем сотрудника);
- 22 дня в месяце (усреднено);
- 8 часов работы в день;
- 4 месяца работы.
Итого расход: (2500 * 22 * 8) * 4 = 1 760 000 рублей.
Но компания пошла путем выполнения работ под руководством сотрудника, который решил, что может организовать внедрение ИТ проекта собственными силами, не имея должных знаний и опыта:
Вводные данные:
- 2000 стоимость часа (это 2 сотрудника ИТ в подчинении с налогами);
- 22 рабочих дня в месяце (усреднено);
- 5 часов в день работы специалистов (отвлечение на повседневные задачи по 3 часа в день);
- 12 месяцев работы (при этом решение еще не внедрено).
Итого расход: (2000 * 22 * 5) * 12 = 2 640 400 рублей.
Экономия в 900 тысяч рублей в пользу узконаправленного/грамотного персонала (около 50% от первого решения). Плюс к этому: более чем пол года работы компании в готовом решении, и еще много прочего. Минус для бизнеса один – нет растягивания выплаты денег на год :) (сомнительный минус, не правда ли?).
Никто не заставляет нанимать специалистов, расширяя штат организации, достаточно взять узконаправленных/грамотных специалистов на время решения конкретной точечной задачи.
В статье нарочно не затрагивал творческие аспекты, психологические и мотивационные подходы, которые имеют свой вклад при внедрении и модернизации решений на платформе 1С:Предприятие.
В любом случае – проектов еще много, а будет еще больше. Всем удачных решений.