Taking a potshot at a large company

I have met with a lot of people from many different countries discussing stories from a whole range of companies. It wouldn’t really be fair to highlight shortcuts taken by a startup who are almost always by definition are on a shoestring budget. Yet, once a company grows so large that they pretty much dwarf all of their national competition it seems that you should be able to take the gloves off.

I did some consulting through a multi-national telephone company with offices on virtually every continent on the planet earth. I think that they can probably handle some good natured ribbing.

In Germany every few years some company gets sued by one of their freelancers claiming to be an employee. It wouldn’t be a worry for the companies except that sometimes these cases don’t go in their favor and the company is forced to take these people and make them their employee. Thus to prevent such a horrible thing from happening the companies try to ensure that they treat these external resources people in a manner that is not like an employee.

Well, in 2013 in an attempt to really make this a much more stringent process they instituted forms asking all sorts of questions designed to highlight people who might be a problem on the horizon. I understand their concern from a business level but what I found to be too funny was that either the auditors that they were hiring to do this task1 or the internal staff decided to improve the form from one year to the next.

Rather than consider a new angle of questioning, or a clever rephrasing of the existing questions they took a different approach all together. The form is an adobe acrobat PDF so that the user can edit to include all their useful answers print it out and sign it. The change was to increase the font size for four of the answer fields and adding a version number to the form. Other than this, there appears to be no noticeable change in any of the questions presented.

I guess when a company with only 60 billion2 Euros revenue really wants to take something serious they change the font size on a form.

1What do this task themselves? Nah, outsource the task.

2If my figures are correct it was actually 60.13 billion euros for 2013.

Diapers? Yes, I win!

If you want a chance to feel superior then read on. While speaking with my wife I happened to hear that one of her colleagues is having a bit of a tough day.

Before I get into that I want to describe my day. This morning my wife Daniela got up and crept out of the apartment so she could go to the hospital on a Saturday morning. About an hour later David and I got up and started our day. We had a long list of things we wanted to accomplish but despite our best intentions we didn’t quite get everything done.

  • finish assembling and mounting screen on kitchen window
  • pick up shirts from the dry cleaners
  • change sheets
  • do the laundry including the sheets
  • try and not put Daniela’s non-dryer safe clothes into the dryer
  • go shopping
  • make dinner
  • prepare computer so boys and I can play multiplayer games
  • get my hair cut

It was a full day and David and I were busy pretty much until Dr. Daniela came home. The food was good the general mood was also pretty good.

In general I think that David and I can be proud of everything we accomplished, and perhaps we can rest a bit on Sunday. But what does this have to do with Diapers and how does this make anyone feel good about ourselves?

Well, Daniela’s colleague is a single mother who also had to work at the hospital today and because of this her ex-husband was baby sitting their daughter. She is three years old and like most children at that age still has diapers. It seems that the last diaper was used so her ex decided he had a few options.

  • go to the store and buy diapers
  • walk 5 minutes to the hospital and pick up some from his ex wife
  • call his ex wife and yell at her about the missing diapers.

So, I think that we can all feel a bit better about ourselves that we solve the “big” problems. If he wasn’t able to go to a store and get diapers what happened to that poor little girl? Well, as luck has it the neighbor has a similar aged child and she did Daniela’s colleague a favor and brought a few diapers over.

But they might want to work for us …

I have been around the block once or twice and one of the funniest things I have seen is how self employed people are treated in Germany.

It seems that sometime back, some of these contractors were working side by side with some some regular employees and the inevitable day had come to trim costs. Well, the easiest way to do this is to get rid of some of your not so fixed expenses.

Quite understandably some of these not so fixed expenses wanted a paycheck and were very comfortable where they were. They decided to sue the consulting company that they were working for using the legal argument “no really, we are actually indistinguishable from their actual employees”.

When I heard this initially I thought that it was a joke and there would be a punchline. Well, the punchline is that the court felt that indeed the contractors were treated just as if they were employees. They were given direction, where treated in internal systems (ie email, company address book, etc) in the same way and thus they won their lawsuit.

Uh, well I guess that is score one for the little guy. Not just that company but all German companies did have a bit of an adverse reaction due to that ruling.

Wow, we thought those people were ours to use and get rid of, we don’t want them as actual employees.

The general reaction of the companies was what can we do in order to prevent this from happening again. I guess there must have been a room of lawyers and other big brains looking through the results of the lawsuit.

Well, we could…

  • put all contractors through agencies
  • don’t list them by full name in our address lists
  • don’t talk with them directly.

This did work out fine for about a decade when yet another couple of contractors were to be gotten rid of. The company was a fortune 25 company and fought tooth and nail yet the judge said that yes they were essentially the same as employees and would have to be hired.

This was really terrible, two people were forced to our payroll but who knew how many tens or hundreds might want to join us in the next few years. Besides they are IT specialists, we have very little use for that skill. Right?!?

This time the discussions really began. What corrective actions could we perform to make sure this doesn’t happen again. Well, we could …

  • make them wear their badges so they are visibly distinguishable from internal people
  • get rid of most of our external consultancies, only having a few larger ones
  • we could take away their email addresses and for those in support or projects give them group mail addresses
  • send them off site so we don’t have to look at them
  • ensure they don’t go to regularly scheduled meetings
  • remove entrance permissions from their badges
  • simply get rid of all external consultants
  • only communicate problems with ticketing systems

Only time will prove if this is enough to keep the consultants at arm’s length but also only time will prove if these limitations the returned value of even using external consultants.

Well, if that wasn’t enough I know of a company that took even more actions.

  • All externals were given email addresses that used a different domain than the company email
  • All the names of the individuals who used email were removed and replaced with their initials and an arbitrary number (MT14)
  • Everyone who could be moved away from the corporate offices to a remote location were indeed moved away

The jury is out if this will be enough but it should definitely be a solution for productivity.

Dancing

You don’t normally let the software developers out of the dungeon, and very rarely let them visit the client. There are a lot of reasons for this, sometimes they don’t dress quite right for the business world, sometimes they don’t have “the social graces”, but a big reason is sometimes they don’t know when to keep their big mouth shut. Well, lets just say that they have a tendency to say inconvenient truths at inopportune times.

To prevent just this exact thing from happening and to provide all the necessary translation both “business to technical” and “German to English” a guide (erm keeper) was provided in the shape of a salesman. The tech guy and the salesman made the trek to Düsseldorf, and worked on the technical issue and after a few hours working on the issue the developer thought he understood the problem. It appeared that a solution was at hand but needed further testing in the morning when the market was open. Thus the boys had the night off.

It turns out that the handler not only fancied English and Irish pubs and knew all the best ones in Düsseldorf. To prove that point, the two of them spent all evening going from bar to bar. It was more of a “scientific survey” comparing the bars in Düsseldorf against those in Frankfurt.

Well all good things come to an end which is probably what the bar owners were thinking as it was closing time. The boys had to make their way back to their hotel, which as it turns out, was a very upscale hotel. The handler who was well experienced at this started to cross the lobby to a very crabby looking receptionist – yet she was very professional when she discovered we were not looking for the bar but looking for a wakeup call. She smiled like a 1000w bulb and was more than helpful.

The only thing left to do now was to go upstairs and go to bed. Of course they could have taken the stairs but there was an elevator and so they took it instead. It is not clear who started dancing but apparently it was contagious as within seconds both were dancing in the elevator as only a couple of hours of drinking Guinness can inspire. In retrospect that should have been embarrassing, as the elevator was a glass elevator, but perhaps their inhibitions had been slightly reduced. Just to make sure that the dancing fever was cured they took a couple of trips up and down in the elevator.

I can only imagine what the receptionist was thinking….

The size of company does not equal organizational prowess

I used to do a fair amount of travel in Europe and depending on where you were going depended on how you were received. Well, this was due to the shengen agreement which allows for the gradual abolition of border checks within the EU.

The convenient part is when landing in a foreign country from another EU country you were simply waved through the booths where the passport checks were normally performed.

It was on one of these trips that the line was stopped for unknown reasons and we all stood around with not too much to do. Eventually I was bored enough to grab my passport and rifle through the pages and eventually found myself looking at the page with my aufenthalterlaubnis (working permit) only to discover that it expired nine months ago.

The passport hadn’t expired but I suspected that somewhere in Germany there was a government office that wouldn’t be very happy at this revelation. So anyway, I was at the project and my work weeks were only four days long. I decided to use my free day to go to the local government office, but my goal was not to shout out that my papers are expired but rather to find out where is the auslanderamt (foreigner office) is located so I can get this problem fixed.

Ok, ok, little to my knowledge the new local government office supported more services since my last visit so the woman at the desk simply took my passport out of my hand. I don’t think that she was especially angry with me but that didn’t stop her from yelling at me and informing me that with these papers expired all she had to do was to get the police to ship me out of the country.

Well, after being yelled at for a while I made a call to our human resources gal. She was a nice lady who keeps the company papers in order, well, usually. She spoke to the government office worker for a while and promised that she would get my papers corrected next week. The next week I went downtown and got my papers extended for another 90 days. Why so short? Well, it seems that if I had not let my papers lapse I could have now had unbeschranked aufenhaltserlaubnis papers (unlimited living/working papers).

I am sure that I am random statistic and that a large international financial company couldn’t possibly get it that wrong all the time right? Well, I don’t know all people who worked for my company but I do know of another similar encounter.

It turned out that the government people did realize that Paul’s papers were expired and this needed to be addressed. From what I heard, our human resources group was indeed working on it when some rather overzealous boarder enforcement decided to get to work.

Paul was doing a few things in his apartment Saturday morning when the doorbell rang. It seems that two nice policemen were there to bring him to the airport so he could be deported.

Indeed his papers were not in order but both the government and our human resources group knew this. The problem was supposed to be corrected the following week. I wasn’t there but I heard that after a considerable amount of time and some phone calls the police decided to not deport him on the spot. To keep good control of the situation they took Paul’s passport with them. He wouldn’t be getting it back, it would have to be retrieved by our human resources woman in person.

Just an intern

My friend was an intern at a telecommunications company in Bratislava. It was his job to so some minor software development in Java. In retrospect, this turned out to be one his most challenging jobs but not because of the work but because of the equipment.

The computer that assigned to him was slow and quite literally wasn’t quite up for the task. There was enough space for Java, and there was enough space for the development environment Eclipse, but there was not space enough for the source code he needed to change. He was a very clever and industrious developer and copied some code locally a built the rest over the network. The poor hardware was probably due to a very tight budget, which was reflected in other aspects of the company.

That doesn’t mean that his time was completely uninteresting. During his development he did find one super funny piece of login code. The code looked somewhat similar to this.

 Authenticated = false
 try {
    Status = checkpassword (user, password)
    if (status == password_accepted)
    {
        Authenticated = true;
    }
 }
 catch (Exception ex)
 {
    Authenticated = true;
 } 

This pseudo code basically means that if some unexpected action took place while the user was logging onto the program then an exception would be thrown but the exception handler was setting the authenticated flag to true – thus upon serious error during login you wouldn’t need to know the password. To test this theory, my friend disconnected the computer from the network and logged into the software with false credentials. Once the login process was over, he plugged the computer into the network and it turned out he was logged in.

A lot of the actual staff were not employed but were temp workers and in the IT department most of the technical people had a contract that was only for a year. This did provide maximum flexibility for the company but it didn’t inspire much firm loyalty. At the end of his one year internship, my friend was not only one of the most senior people in the group but one of the few who remained from the group he started with beyond the first year.

Taking inventory

The urban dictionary says:

Hacker

Person who gains authorized/unauthorized access to a computer without the intention of causing any damage.

My first job was to help computerize the company, which is a very nice way of saying that the company had purchased a computer and they needed it filled with data – specifically it needed to be filled with inventory data.

It was only in retrospect that I discovered I was a computer person but not a data entry person. The reason that some people become skydiving teachers and others become teachers, clerks, physicists, etc is because the person’s interest and abilities match up with that type of work. I did not know that taking inventory of toilet seats, nails and hinges would somehow lose its shine. It was nice getting a paycheck but after a few months I found it tiring and unfulfilling.

It was at about the same time I discovered that some of the commands that worked on my home computer also worked on the work computer. It turns out that the system was written in basic and it did not take very much examination to read through the code and to jump to other menus. Granted some of those menus were password protected but all you needed to do was list the code and find a different menu further down the menu hierarchy.

I suppose it was the software vendor who eventually they discovered a bit of unusual activity and ratted me out to management. Unsurprisingly they asked that I focus only on my data entry. Shortly after this meeting the source code also was encrypted so it couldn’t be listed, as luck turned out the summer was over and I then was heading back to school. I learned quite a few lessons at this first job but actually the most important was that I was not a data entry person.

Note: I was both a minor and there were no computer Cybersecurity laws in place at that time. (whew!)

The upgrade

The upgrade goals when seen from the management level must have sounded fairly modest. Change the existing process flow for all transactions so they are only entered once and processed end to end without any “manual processing”.

This may not sound like a revolutionary development to bring in straight through processing starting with data entry up until final settlement. That would be really nice but that wasn’t the goal at all. Due to limitations of the existing financial system had some pretty terrible inefficiencies. One example was to enter the data into the backend system, print it out and have someone re-enter it into the front end system so it could be seen on the company reports.

In order to placate the different departments there were a lot of promises of new and better functionality that would be delivered as part of the new upgrade. After all, the vendor had made big changes since the last version of this system.

One of the first problems encountered was the upgrade of our STADS system. During the initial installation of this system the project team built an application of their own using Microsoft Access and Visual basic. This system, STADS, was intended to hold various static data but more importantly to provide the ability to populate an empty database with all of the configuration.

This system was a convenient way to upload the data during the initial project phase. It was so convenient that our client decided to use this as the official storehouse of static data for this system. The problem is that that this homebrew tool when combined with the complexity of the vendors software created a situation where it simply was no longer possible to manually maintain this setup.

A big part of the problem was the IT decision to virtually clone the table structures from the vendor system. Over the years the vendor’s product added new functionality and thus the structure of some the tables changed a little while other tables and relations were totally redesigned. The vendor didn’t have a data model for the original product, nor did they have a data model for the upgrade, and to make matters worse no good product release notes were available.

Nobody from the IT group knew up front how long it was going to take to internally upgrade the STADS solution just to support the basic functions from the previous version. Not only that but IT also had no idea how long it would take to modify STADS to support the new functionality. Each time the vendor delivered a new patch the database structure seemed to have massive changes which again caused the STADS group to re-write large portions of their system.

The goals of the upgrade ended up being like a stick of salami at a party – over time more and more of planned new functionality was being sliced off. The first casualty was the target release of 7.4. The project leaders came up with a lot of official sounding reasons why that was not feasible but the real reason was that the permission structure had changed so much and the code was so poorly documented in STADS they did not feel confident to go beyond the 7.3 patch.

Then straight through processing was abandoned mainly due to integration. The part of the vendors back end system had been replaced with something purchased from another vendor. The vendor’s integration of the two products really was to maintain separate tables with a lot of duplication that needed to be kept in sync.

Even worse, the old system had a lot of data that was no longer available in the new system. The new front end did allow data entry but it was nowhere as rich as the data the existing backend system needed. Because of this multiple payment and extract interfaces would continue to exist in both the new system including the printout and manual entry of data as well as the old system.

Another major feature to be cut from the feature list was the full reporting database. The number reporting tables were limited and the hierarchy was relatively flat but due to other technical issues all of the developers were too busy with other problems to even begin to implement this new reporting system1.

Not all of the problems were related to software. A big resource blackhole was the desire to have a lot of different testing environments – six to be exact. Three environments existed for the existing production (prod, pre-prod and test), but somehow double that number were being maintained for accounting, risk, trading, development not to mention the new pre-prod and related databases.

The tech guys were busier than a one armed paper hanger trying to keep all of the necessarily changes and fixes in sync on all the environment. When they weren’t keeping environments running they were fighting with 20+ hour upgrade scripts that should have worked but did not most of the time.

  • Ineffeciencies
  • Conflicting requirements
  • Political infighting
  • Multiple unnecessary environments
  • None of the promised enhancements

The upgrade took two years, cost a lot of money, and delivered none of the new functionality.

1Actually the vendor had just added this feature. It wasn’t in use by any other client.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close