Programming at gunpoint

In business automation, the so-called. “Prostitute projects” (I didn’t come up with the term). These are clients whose tasks have been solved by crowds of different people, without a single decision-making center, any analysis, thoughtful architecture and common sense. The client just comes up with a Wishlist, the programmers just implement it.



The reason is usually the long duration of the automation. A small team of professional attack aircraft is working on the initial implementation, the project lasts several months, money and tasks flow like a river. Then the main stream becomes scarce, maintenance begins - small tasks that are given to interns or intermediate-level programmers. It is not possible to assign one or two specialists to the client, because he has few tasks, and the staff turnover does its job.



The client, of course, is annoyed by this approach. They just got used to one specialist, or at least remember his name and phone number, as they get another. You need to explain everything again, show it, or even pay for "analyzing how everything works for you" - of course, there is never any documentation. Most of the clients have already resigned themselves, because they understood that this is the case everywhere, in any automation office, even for freelancers.



But some clients, due to their individual characteristics, are not ready to put up. Some hire a programmer, others endlessly sort out "partners", and still others periodically cut the Gordian knot - launch a new large automation project. And some stand over the soul of a programmer with a pistol.



I was then that middle-class programmer - I had some experience, but not so serious as to work in assault brigades. The manager came up and said that there was a task for the next prostitute project. True, he says, the client has some peculiarities. I ignored these words - you never know who has what features.



Asked who had previously worked with this client. It turned out that more than half of all our programmers. And now, for some reason, no one really wants to - either busy, or figs understand what. In short, go, the manager says, there is no one else. Fortunately, it took 5-10 minutes to walk from our office on foot.



The office was in an office building, but for some reason the entrance was from the backyard. I pressed the call button, introduced myself, heard "expect". He waited about ten minutes (as I found out later, they called us and asked if we had sent such and such a specialist to them) and finally went inside. An accountant girl met me, took me to a meeting room and sat me down at a large table. I connected to their system from a laptop, she showed what needs to be done - minor modifications to a large colorful report. Well, she left.



For half an hour I worked all alone, managed to get comfortable and relax a little - and why does no one want to work with these lovely people? - when suddenly a strange guy entered the meeting room. Silently proceeded to the head of the table and collapsed in the chair. I said hello, but did not hear an answer. Okay, to hell with him - you never know, all of a sudden it's the owner, it's not a royal business to greet programmers.



The man was quite remarkable. The first thing that caught my eye was the scarred face and the expression of a typical representative of the successful survivors of the 90s. At that time, such characters were often encountered, so I was not particularly surprised. But, just in case, he straightened his back and stared at the monitor.



With peripheral vision, I noticed that the man was looking at me for several seconds, then he turned away and began to mutter something - either he was humming a song, or he was just talking to himself. When he raised his hands and put them on the table, the jacket bulged out and I noticed a strange object. Then I realized that it was a holster. I don’t know what was in it, but just in case I assumed the worst, straightened my back even straighter, made an extremely focused face and rhythmically tapped the keys.



The dude continued to mumble something, sway in his chair, and sometimes look at the phone. I tried to pretend not to pay any attention to him. We live in the 21st century, we are in the center of a rather big city, will he shoot me, in the end? Probably, they just sent to look after me. The same girl accountant.



Then, according to the very law of nature, the girl returned. I asked how the progress was - I showed it was almost ready. Together they dig deeper, twisted and turned the report, the result suited her. She said to finish and fill in the work base, and she went to chat with the dude.



They spoke somehow unusually loudly - although, maybe, it seemed to me so, after a long programming in silence. They discussed some unknown people, events and deeds, after which the man suddenly shook his head in my direction and asked - "what is he like?" The girl also looked at me and replied "nothing like, smarter than the previous one." Both smiled, and the girl left the meeting room. A spark of hope has finally appeared in my soul that I will have dinner at home today.



But then the dude said loudly: "and I always said: you have to talk to smart boys with a gun in your hand." At the same time he was looking somewhere to the side. Just in case, I decided to pretend that I hadn't heard anything. It didn't work out to make the back even straighter.



The next half hour passed in complete silence. The dude, for some reason, stopped mumbling and sat very quietly. The tension was building. It seemed to me that he was quiet because he was waiting for an answer to his remark. I frantically tried to think of what to say. My straight back, along which it was already possible to pass descriptive geometry, was unpleasantly damp.



I could not endure this stress further - I decided that it wouldn’t get any worse. And he asked where you can drink water here. For some reason, the dude did not react in any way - he sat and looked at the phone. I stared at him and waited. I thought about waving my hand, but realized in time that it was better not to do this - suddenly his muscle memory somehow does not react so well, and starts firing at my palm.

So I kept looking at him. A couple of minutes later he repeated the question, and he finally heard me. And he changed his face in a way that only Leonardo DiCaprio can.



He looked at me, broke into a welcoming smile, and politely said: "I beg your pardon, I didn't hear." I repeated - where can you drink water here? The dude all leaned forward, and he said in a slightly guilty tone: "I am deaf after a shell shock, I beg your pardon, can you get a little louder?" At this point I could not restrain myself and smiled. Well, we started talking.



Turns out the dude is the security assistant (whatever that means). She has been looking after the programmers for a long time, and the gun is the specifics of the profession and position. But in general, he is white and fluffy, and he even respects knowledge workers very much. More precisely, respected, up to one case.



Just once, another "partner" was solving an elementary problem in a very exotic way. They have a supplier with a ton of checking accounts. Due to the specifics of the business, the money must be sent to the supplier to strictly defined accounts, depending on the transaction and purchased goods and services. The supplier does not issue invoices for payment, everything works on a human-understandable algorithm. We decided to automate this algorithm.



In principle, the programmer did everything right - the conditions for choosing a current account worked adequately. Only here the details for payment (account number, BIC, short account) the programmer, for one well-known reason, entered directly into the code. And it lived well - until the Central Bank closed another bank for hell-there-knows-what.



The person at the payments knew about this, and made changes in advance to the directory of settlement accounts - edited the existing record, changing the account number, bank, etc. So that the reports on the movement of money do not spread into two lines. The programmer's algorithm, of course, could not tolerate this - the account number was hardcoded in the code. So the money went to the sinking bank.



In general, the situation is widespread - there is some kind of time lag between the announcement of the closure of the bank and the termination of transactions through it. If someone managed to run money during this lag, then it is problematic to get it back - you need to act very quickly and decisively.



Here are the guys with a pistol and ran and jumped. Especially because they could not do anything - the money ended up in the supplier's current account being closed. And there people are serious and touchy sitting. Also, probably with pistols. They, in general, do not care - they did not receive money, and they may well demand a repetition of the payment, only to a normal current account.



In short, we taxied in half with grief. But now they create a special atmosphere for programmers. Just in case.



All Articles