Программирование под дулом пистолета

    В автоматизации бизнеса часто встречаются т.н. «проекты-проститутки» (термин не я придумал). Это клиенты, над решением задач которых поработали толпы разных людей, без единого центра принятия решений, какого-либо анализа, продуманной архитектуры и здравого смысла. Клиент просто придумывает хотелку, программисты просто реализуют.

    Причина, обычно, в большой продолжительности автоматизации. На первичном внедрении работает небольшая команда профессионалов-штурмовиков, проект длится несколько месяцев, деньги и задачи текут рекой. Потом основной поток оскудевает, начинается сопровождение – мелкие задачи, которые дают стажёрам или программистам среднего уровня. Закрепить одного-двух спецов за клиентом не получается, потому что у него задач мало, да и текучка кадров делает своё дело.

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

    Но некоторые клиенты, в силу индивидуальных особенностей, мириться не готовы. Одни берут программиста в штат, другие бесконечно перебирают «партнёров», третьи периодически разрубают гордиев узел – запускают новый большой проект автоматизации. А некоторые стоят над душой программиста с пистолетом.

    Я тогда был тем самым программистом средней руки – опыт кое-какой имелся, но не настолько серьёзный, чтобы работать в штурмовых бригадах. Подошел менеджер и сказал, что есть задача по очередному проекту-проститутке. Правда, говорит, у клиента особенности есть. Я пропустил эти слова мимо ушей – мало ли, у кого какие особенности.

    Спросил, кто раньше работал с этим клиентом. Оказалось, больше половины всех наших программистов. А сейчас, почему-то, никто особо уже и не хочет – то ли заняты, то ли фиг пойми что. Короче, иди, говорит менеджер, больше некому. Благо, от нашего офиса пешком можно было дойти минут за 5-10.

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

    Полчасика я работал в полном одиночестве, успел немного освоиться и расслабиться – и почему никто не хочет с этими милыми людьми работать? – как вдруг в переговорку вошёл странный тип. Молча проследовал во главу стола и развалился в кресле. Я поздоровался, но ответа не услышал. Ладно, хрен с ним – мало ли, вдруг это собственник, не царское это дело с программистами здороваться.

    Человек был весьма примечательный. Первое, что бросилось в глаза – лицо со шрамами и выражением типичного представителя успешно выживших в 90-е. В то время подобные персонажи часто встречались, поэтому я особо не удивился. Но, на всякий случай, выпрямил спину и уставился в монитор.

    Боковым зрением я заметил, что человек разглядывал меня несколько секунд, после отвернулся и начал что-то бубнить – то ли песенку напевал, то ли просто сам с собой разговаривал. Когда он поднял руки и положил их на стол, пиджак оттопырился и я заметил странный предмет. Потом понял, что это кобура. Что в ней было – не знаю, но на всякий случай предположил худшее, выпрямил спину ещё прямее, сделал предельно сосредоточенное лицо и ритмично застучал по клавишам.

    Чувак продолжал что-то бубнить, раскачиваться на стуле, иногда – заглядывать в телефон. Я старался делать вид, что не обращаю на него никакого внимания. Мы ведь в 21 веке живём, находимся в центре немаленького города, не пристрелит же он меня, в конце концов? Наверное, просто приглядывать за мной прислали. Та самая девушка-бухгалтер.

    Тут, по тому самому закону природы, вернулась девушка. Спросила, как прогресс – я показал, было уже почти готово. Вместе поковырялись, покрутили-повертели отчёт, результат её устроил. Сказала заканчивать и заливать в рабочую базу, а сама пошла поболтать с чуваком.

    Говорили они как-то необычно громко – хотя, может, мне так казалось, после долгого программирования в тишине. Они обсудили каких-то неизвестных мне людей, события и дела, после чего человек вдруг мотнул головой в мою сторону и спросил – «чё, как он?». Девушка тоже посмотрела на меня и ответила «ничё вроде, умнее предыдущего». Оба улыбнулись, и девушка вышла из переговорки. В моей душе, наконец, появилась искорка надежды на то, что я сегодня буду ужинать дома.

    Но тут чувак громко сказал: «а я всегда говорил: с умными мальчиками надо разговаривать с пистолетом в руке». Смотрел он при этом куда-то в сторону. Я, на всякий случай, решил сделать вид, что ничего не слышал. Сделать спину ещё прямее не получилось.

    Следующие полчаса прошли в полной тишине. Чувак, почему-то, перестал бубнить и сидел очень тихо. Напряжение нарастало. Мне казалось, что он притих потому, что ждёт ответа на свою реплику. Я судорожно пытался придумать, что сказать. Моя прямая спина, по которой уже можно было сдавать начертательную геометрию, неприятно взмокла.

    Дальше выносить это напряжение я не мог – решил, что хуже уже не будет. И спросил, где тут можно воды попить. Чувак почему-то никак не отреагировал – сидел и смотрел в телефон. Я уставился на него и ждал. Думал помахать рукой, но вовремя понял, что так лучше не делать – вдруг у него мышечная память как-нибудь не так отреагирует, и начнёт палить по моей ладони.
    Поэтому я продолжал на него смотреть. Через пару минут повторил вопрос, и он, наконец, меня услышал. И переменился в лице так, как может только Леонардо Ди Каприо.

    Посмотрел на меня, расплылся в радушной улыбке, и вежливо произнёс: «прошу прощения, не расслышал». Я повторил – где тут у вас можно воды попить? Чувак весь подался вперёд, и он немного виноватым тоном сказал: «я глуховат после контузии, прошу прощения, можете чуть громче?». Тут уже я не сдержался и улыбнулся. Ну и разговорились.

    Оказалось, чувак – зам по безопасности (что бы это ни значило). За программистами присматривает давно, а пистолет – специфика профессии и должности. Но вообще, он – белый и пушистый, и работников умственного труда очень даже уважает. Точнее, уважал, до одного случая.

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

    В принципе, программист всё сделал правильно – условия для выбора расчетного счета работали адекватно. Только вот реквизиты для оплаты (номер счета, БИК, кор.счет) программист, по ему одному известной причине, вписал прямо в код. И жило оно неплохо – до тех пор, пока ЦБ не прикрыл очередной банк за хрен-там-знает-что.

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

    Вообще, ситуация распространённая – там есть какой-то временной лаг между объявлением о закрытии банка и прекращением транзакций через него. Если кто-то успел запулить во время этого лага деньги, то их потом проблематично достать обратно – надо действовать очень быстро и решительно.

    Вот ребята с пистолетом и побегали, и попрыгали. Особенно потому, что сделать ничего не могли – деньги-то оказались в закрываемом расчетном счете поставщика. А там люди серьёзные и обидчивые сидят. Тоже, наверное, пистолетами. Им, в общем-то, без разницы – они денег не получали, и вполне могут требовать повторения платежа, только уже на нормальный расчетный счет.

    Короче, с горем пополам вырулили. Но теперь создают для программистов особую атмосферу. На всякий случай.
    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 13

      0
      Что-то повеяло с улицы разбитых фонарей…
        +6

        Gun-driven development

          0

          Вспомнился "Пароль «Рыба-меч»".

            0

            Ага, я ждал КДПВ оттуда

            0
            Мне понравилось. Иногда и об ответственности стоит вспомнить.
              0
              ну да…
              когда в самом-самом начале нулевых убил базу у «алкоголиков» (ну, сами помните, кто в те годы занимался алкоголем) меня участливо спросили — «а чего это вы так побледнели? вам плохо?»
              зы. естественно, был свежайший бэкап — я был уже лет 8 «из тех, кто уже делает»
                +1
                К сожалению, ответственности это не прибавит. Вы можете посадить программиста хоть на электрический стул и рубильником поигрывать. Но если программист — остолоп, прибивающий данные гвоздями прямо в коде, результат будет не очень.
                Всё просто же: чем более умён (и дорог) исполнитель, тем более вероятность, что он не накосячит. Потому что он способен осознать, что такое ответственность.
                А многие эти «выжившие в 90-е» — жлобы. Тяжело им заплатить «кнопкотыку» адекватные деньги. Когда платят, лица у них — как мать родную хоронят.
                +4
                Красивое сочинение, но что оно делает на хабре?

                А если не сочинение, а реальная история… ну что сказать, заказчик- идиот/отморозок и лучше не иметь с ним дальше дел.
                Начиная с того, что они хотят без тестирования сразу же в коммерцию запускать нечто со сложной бизнес-логикой с формулировкой в голове «если что, то застрелим программиста».
                Заканчивая тем, что качество работы в стрессовом состоянии становится только хуже.
                  +2

                  Ну, стресс вообще позитивная штука, если с ним не перегибать. Тут явный перегиб.

                    0
                    в этой отрасли, как правило нет тестирования — все работают по методике ХХП.
                      0
                      и лучше не иметь с ним дальше дел.

                      судя по рассказу никто и не хотел иметь с ними дел

                      0
                      ну почти как в начале фильма: пароль рыба меч
                        0
                        Мужик спрятался в переговорке что бы в змейку поиграть на нокиа3310, а «праграмисд» выдумал душераздирающую историю с инапланетянами, историей заговора и вспомнитьвсё в одном лице.
                        Часто в код зашивают то, что видеть никто не должен, отсюда и косяки. И ожидание на улице вещь вполне себе стандартная — когда в СБ работает бывший прапорщик то и правила тянутся оттуда где этот прапор охранял ракетный комплекс.

                        Only users with full accounts can post comments. Log in, please.