Enterprise Automation |
Rex had just been hired on with a large retailer as a Puppet Automation Engineer, tasked with using Puppet Labs to automate deployments of some SAP-py, enterprisey software. He was paired up with another Puppet Automation Engineer, Alexi. Alexi was the expert, and he was in charge of automating the companys Sarbanes-Oxley (SOX) auditing.
Alexei was a firm believer that the Customer Is Always Wrong, and Alexei Knows Best. As a consequence, he thought that any requirements he didnt like could be changed to arbitrary ones he did like. If the customer wanted a report that provided some summarized sales numbers for the year and he thought that was stupid, hed instead give them a report showing their top products Line-Of-Code count divided by the Dow Jones Industrial Average for the month. If they wanted to slice-and-dice their customer database by demographics, he would code up a line graph relating the number of characters in their last name to the average nightly lows on their date of birth.
This caused huge problems with the SOX auditing. As he worked on the requirements-not generated by users, but dictated by US law- Alexei replaced stupid ones with his own expert ones. After a chain of angry emails, angrier phone calls, and downright apocalyptic meetings, management finally got Alexi to deal with the actual requirements. Exactly as written.
Exactly. As. Written.
From what Rex could see, much of ALexis implementation was deliberate malicious obedience. For example, many rules were given the same name, causing their auditing engine (which ran through the rules in alphabetic order) to give varying and nondeterministic results as the rules were run in a different order each time, often overwriting each others output.
What really amazed Rex was the incident that finally convinced his coworker to leave. Alexei was automating another piece of enterprisey software deployments- Initechs SalesManagerPoint- with Puppet, using an existing (and broken, unsupported and officially deprecated) module designed specifically for their case. When the module didnt work, Alexei doubled-down and tried to fix it, adding layer upon layer of expert complexity, meanwhile ignoring key requirements because The module doesnt support that!
Frustrated, management brought in a Highly-Paid Consultant, named Harry. Harry was intimately familiar with Puppet Labs, and within a few days, proved the point by fixing many of their automation-pain-points. Everything was great, until Harry discovered Alexeis work. Harry was also familiar with Initechs SalesManagerPoint. Thats a very tricky one. I can take a quick glance at it, but we normally will not touch that without a minimum six-month contract.
As soon as the words were out of his mouth, Rex stopped paying attention to his work, and started paying attention to Harry and Alexi. Their disagreement escalated into a hilarious shouting match. Harry tried to tell Alexi he was using Puppet, the module, and SalesManagerPoint all the wrong way, to which Alexei would respond with screams of But your so-called right way is stupid! My way is better!
Alexei was angry enough to quit on the spot and Rex inherited his work. Harry refused to go anywhere near anything Alexi had touched without renegotiating the contract. After reviewing Alexis work, Rex decided on ignoring it completely and built up a new system from scratch. Several months later Rex had a working Puppet automation that actually met all the customers requirements, without using Alexeis work and without using the broken Puppet module. No expert required.
| Комментировать | « Пред. запись — К дневнику — След. запись » | Страницы: [1] [Новые] |