📜 ⬆️ ⬇️

Hellish project

A few years ago, I was invited as a consultant for a single software project for a large French technology company. What I saw goes beyond everything I could imagine in the design. The mere lack of professional competence was not the worst. Much worse was the extreme contempt for human dignity, which seemed to me comparable to a prison as I imagine it. Here is the list, check for yourself.

Scale



The government pays several million euros in advance. Development plan for two to three years. To begin with, the company hires several developers and continues to double the size of the team every three months or so, mastering the budget as funds become available.

7 years later, the project has not yet taken shape. They incur fines of several thousand euros per day. Management decides to cut costs and makes layoffs of experienced employees, hiring people with little or no work experience.
')
10 years later, given the disastrous state of the project, middle management decides to hire some people with development experience to return to the schedule. Average turnover among beginners: three months. This is the minimum term to have the right to resign in France.

12 years later, the project is not finished yet. The company again falls on daily fines, issuing new bills to the government for the ever-increasing flow of change requests. 2008 is coming.

Numbers



No developer can say that C ++ is a simple language. On the contrary, one of the most difficult. In fact, it is so complicated that even its creators admit that they have not yet mastered everything. See the recognition of Straustrup in his famous "interview" , which was composed as a rally.

Faced with such an incredible maze of bottomless complexity, people react differently. All upstart geeks have heard of C ++ and want to prove that they can also program on it. They are fearlessly immersed - and injured beyond recognition. They spend countless hours trying to figure out why a bunch of gibberish endlessly crashing for no apparent reason. Who has a mind - they quickly go to other languages ​​and other projects. Life is too short.

Maintaining a large project is difficult regardless of language. Just imagine that employees need to maintain 6 MILLION lines of code - and you get an idea of ​​how far insane development can go. Six million is a big number. If you read one line per second, then you sit in front of the screen for seventy days without a break.

To understand the scale will tell two cases.

One developer was tasked with checking why a right click in the interface completely hangs the application. After several days of careful study and an incredible amount of patience, he found that right-clicking is working fine. Just the context menu appears after about 45 minutes. All menus are dynamically generated from a heap of (static!) Content with each click of the right mouse button in the main window.

At some point, users report that the option “Download data from CD-ROM” does not work at all. It took a few weeks to figure it out. But in the end, the bug report was marked as “Solved Earlier” because the data was loaded correctly. Unless loading 700 MB occupied seven days. But patience is a virtue.

Version control went hand in hand


Several years passed before one clever guy in the team had the idea to use version control tools. The first attempt was not very successful, so the team switched to another system. A couple of years - on the third, losing the whole story with each transition.

In the end, we chose a disaster tool with GUI. An abomination emanating directly from Sweden. I had to allocate a full-time team of four people to perform most tasks in this system. It looked like this:


At some point, the official release date was set, completely cut off from the plans of the team. When the day came, the client was actually sent an empty CD with installation instructions, because no one was able to build software for a few weeks. The client found out that they sent him an empty disk, officially complained - and got the old version. He found out about it because the displayed date in the “About the program” field turned out to be the same as last year.

Frames


Pay crumbs - you get idiots

With such a large number of people without any software development experience, is it any wonder that mistakes were breeding in huge numbers? Some highly gifted manager found out that personnel costs are the main costs in a clean software development project. Not at all frightened by this extraordinary discovery, he decided to dismiss all people with at least some experience, but to retain all managers. It was not uncommon to see the books “C ++ for dummies” on the tables of many employees.

Meet the team

55 people in a team: 20 developers, 35 managers. You were not mistaken: there are more managers than real developers.

Managers continue to organize meetings, where they again and again show the same PowerPoint AD presentation to disgust, while developers kill time while chatting in a huge open office.

Few managers have experience in the software industry. At that time, SCO sued IBM for Linux. Even if everything was a bluff, it really worked on all these people, who understood that they would soon have to pay for free software. None of them ever mention “Software Libre”, but they all know about “Software Gratuit”. Needless to say, the project is crammed with GNU libraries, and these guys have no idea that this is how the project becomes compatible with GNU. Although, okay, given the terrible quality of this code, no one will ever insist that they open source.

Technical knowledge below the plinth. Few people know about the internet. Those who know thinks that it is made for porn. Mention that you have seen something on the Internet - and you will start to wink and smile.

welcome to Hell


All this would be funny if the top leadership did not behave like the Nazis in a concentration camp. Just give a few examples.


Perhaps you are wondering why people continued to come to work in such a place. The first and main reason was the deep economic crisis that France was experiencing at that time (and is still experiencing, to a certain extent). Having a job and a salary is considered a privilege, regardless of conditions.

Another reason was that for many it was the first job. Without some comparison, it is impossible to estimate how your job sucks. Most newcomers were considered perfectly normal, which they had to come at exactly 9:00 or be fired when absolutely nothing imposed such a restriction, except for the manager's sick mind.

As for how the government allows this: we all know how it works. The guys responsible for the budget in the ministry, are friends with top managers in a number of companies. In a country like France, corruption is not uncommon at this level; it is mostly not disclosed and is rarely prosecuted. Apparently, this applies not only to France. I heard the same stories from other places in Europe and from the USA.

The next time you think that your job sucks - think again.

Posted June 24, 2008.

Source: https://habr.com/ru/post/352688/


All Articles