Tales from the WTF company, part II

Welcome to the followup of my Tales from the WTF company. If you haven’t read the first part yet, I’d suggest you do. Otherwise you’ll miss important background info and a really funny story, too. This part starts where the last part ended, around noon of the second day.

Let me introduce you to our manager: Jola (name changed), a woman in her late thirties with no technical or managing education. She was earlier providing HR and legal services for the company, but shortly before I started work there she was asked by Johann (name changed), our German CEO, to become the manager.

I guess that Jola was brought to the company because the CEO was not satisfied with the achievements of his Polish branch: their application was slow, massive, bug-ridden and adding new features took ages (he told me about this on the recruitment interview). He also told me that he was looking for a more experienced developer to mend their ways and that was going to be my role after employment.


Around noon of the second day Jola called my team to a meeting. She told us that she received a phone call from Johann and he expected our team to do following tasks ASAP: make changes to the layout of some email sent by the application and make some report (that was already done) accessible from their webpage. The guys had some questions about the details of those tasks but she couldn’t answer them. Instead, she noted the questions word for word and said she was going to call Johann to ask him and then she would give us the answers.

After the meeting we went back to our normal activities: I resumed browsing the project source and they resumed chatting about movies on TV, watching game trailers and funny flics on youtube.com, showing me the webpage selling some paintball guns they bought recently and other fun activities. I wondered when they were going to start working on the tasks they were given, but I figured that those tasks was probably so easy they can do them anytime. At the end of that day I asked my mentor if he could give some task so I could help them finish faster and he said he would look for something appropriate.


Next morning I was assigned my first task: check to see if a particular utility class could be made faster. This class was another piece of classic WTF-ery. Its main purpose was to parse XML file the hard way, because who needs any stinking built-in Python classes when you can use regexps and individual character manipulations? After parsing the contents of XML file were stuffed into nested instances of this class that exposed a dictionary-like interface.

I started by making a suite of characterization tests first as not to break anything unintentionally. This was the first time that any tests were created for their system so it took me a while setting them up. I asked them why there were no tests and their answer was: tests are a waste of time. When I started arguing (being a TDD fan myself), my mentor just cut short the discussion with: when Johann calls you and starts yelling at you, you won’t have time to write those stupid tests.

The yelling part left me with no further arguments and I really started wondering what a mess I have gotten myself into (it was only my third day of work at this company). I resumed my work and by the end of the day I managed to make retrieving values from the above mentioned XML parsing class about 20 times faster on average. It was really easy, though, because this class stored the data internally in a dictionary but the lookups on it were done by sequentially iterating through all the keys to find matching one. All I did was replacing the iteration with normal dictionary lookup.

The guys said that the iteration was probably necessary for something in the past, but they could not recall what could it be. They figured that the cause was probably gone, since the system still worked fine after my changes. I was told I should commit my work to the SVN, but not the tests, because they “didn’t want them to clutter their repository”.


Next day I asked my mentor if I could replace the regexp based XML-parsing with some standard classes to make it cleaner and easier to extend. He said no, because their parsing works just fine, thank you. It just “does what it’s intended to and there’s no need to extend it” (although the code was literally ridden with special cases, multi-storey ifs, workarounds and bugfixes that proved it was changed and extended many times already). He also stated that their solution was surely faster than any library could be, because “it did only what was needed and any library always does many unnecessary things”. I was told that he would find me another task and I was to leave that XML parsing alone.

Before he could find anything, Jola rushed into our office. She was very angry and told us (almost shouting) that she just had a very unpleasant phone talk with Johann and he demanded that the task he gave us on Tuesday be done today or else. Because of that she wanted us all to work today as long as it’s needed to finish those tasks, even if it takes us whole evening or night. I was quite shocked by this kind of management but other guys seemed used to it. They told her that they’d had some difficulties but now they were nearing the finish and there’s nothing to worry about.

After she left, I saw them working probably for the first time in four days. Of course, they were still doing many things unrelated to work, but at least they were trying to make some progress. I asked my mentor if he could give me something to work on so I can help them finish faster, but he told me that they have already divided the work and it’s too small to be divided further (which seemed to be true because the tasks Johann gave us looked really easy). He said that since he was too busy with his work to find me another task I should just browse the code and try to learn what it does.

At 17:00 I asked them again if I could help them anyhow, but they told me they were almost finished, just fixing some minor bugs. I decided to go home then, because it made no sense to me to sit there and just wait for them to finish.


Next morning Jola asked me to come to her office. I was expecting some kind of reprimand for not staying at work with the other guys (they stayed until about 20:00 that day) and tried to prepare some explanations. She gave me a talk about how they, being a small startup, should be working twice as hard as the bigger companies and then she said that she had to fire me and had my walking papers ready.

After first shock I tried to explain to her why I left earlier and that it’s too harsh to fire somebody for something like that, but then it struck me: I didn’t want to work there anymore. So I just said: “I see that you have already made your decision, so there is no use in arguing”, grabbed my things and left.


29 responses to “Tales from the WTF company, part II

  • Max (former EB co-worker)

    Ouch! First part was really funny but the follow-up isn’t at all. In fact it’s quite scary. Would you mind sharing the company name, please? F*ck the f*ckers.

  • szeryf

    No, I won’t tell it here. Mail me if you want more details. Or invite me to have a beer or something :)

  • gryf

    OMG. Sad thing is, that there are plenty of companies like that out there :/

  • me.andering » Blog Archive » A startup should work twice as smart…

    […] from tales from the WTF company, part II . If you work smart, read part I […]

  • Cyndy Aleo-Carreira

    Honestly, if you’d said it was in the States, I’d have told you I worked there once.

  • Vvn

    Wow! This is just wrong …

  • Toji Leon

    How come you missed this nature of the company during your interview? Haven’t you tried to ask *anything* about how they work etc?

  • b

    this sounds like something that happens when you don’t interview the team during your interview :)

  • Ball

    i would have fired your stupid do gooder ass too. trying to make the others guys looks bad. Next time learn to just sit and shutup. clown

  • An

    Same as other poster…I’m in the States, and this sounds *exactly* like a company I quit from. Down to nationalities, attitude, structure, genders, everything.

    It was my first job, ouch. Now I run my own businesses…

  • William

    How sad. I’ve got some friends at a happy, successful startup. They do full-on Extreme Programming, including great test coverage and going home on time. The believe their discipline is key to their success. Good luck finding a place that knows what they are doing.

  • xpguy

    Oh, I can’t help feel an urge to help these guys when I read this.

    I’m disappointed to see this not turn into a XP-promoting success story.

  • Randy

    You should have gone to the manager so she could investigate the level of incompetency of the other developers. That was why you were brought in, and she was too (HR deals with this), but I am still kinda surprised you were let go so fast.

  • Alexey

    OMG, it was right decision =)

  • RK

    This is pretty much the same situation I’m in right now. Fresh out of college, and I didn’t know any better. Difference being, that I’m stupid enough to still be here after 6 months… I’m looking though!

  • nz

    This might not sense to everyone, but I’ll say it anyway. That company was operating in an emotional manner. I realized this as soon as they began goofing around and invited you to look at paint ball guns immediately after the evil phone call. They were trying to involve you and accept you as one of them. They really needed to get unhigh off of themselves and face some objective reality. It sucks to have a stain like “getting fired” on your history, but only a little bit if you have the right story and I think you have the right story. Anyone parsing xml without a library these days is either doing so toward the presentation of some kind of stunt in which the goal is either pedagogy or interrogative design, or criminally clueless.

  • Mikael Jansson

    Eep! Strasznie! Dobrze ze jusz tam nie pracujesz

  • szeryf

    Toji Leon: you have a good point. I should have known better before deciding to work there. But it’s not that I didn’t ask anything. I did and the company looked pretty good from outside: the guys looked intelligent and friendly, they were developing in Python, the CEO told me I would become some kind of a leader, not to mention many social bonuses they offered.

    I think that I would have to have a look at their code and discuss it with them to see some warning signs. Another thing is I was a little bit desperate about quitting my previous job and switching from Java to Python or Ruby.

  • szeryf

    Randy: I would do this but I figured it was kind of too early. What would you think if you were a manager and some new guy came to you on his second day of work and said: “All my teammates are complete amateurs. All they do is completely wrong. I need you to let me change almost everything about how they work.” Would you trust that guy or would you trust your older employees? Not to mention that they would probably oppose any actions from the new guy.

  • troels

    It’s not clear from the post; Did she fire you, because you weren’t dedicated enough? Or did she have some other reason? (Such as you not fitting in to the rest of the company … because that might actually be true, from the description you gave)

  • szeryf

    troels: the main reason (at least officialy) was lack of dedication and insubordination. But I suspect there might be some other reasons as well. I know it’s not nice of me to accuse them without any proof but I think my teammates could have “helped” the manager make this decision.

  • bshock

    I predict you will never regret leaving this place. You’re lucky you didn’t waste more time there.

  • urmom

    Haha you write a blog post about WTF-ery(luv the workd btw) when you get fired in the end. I don’t see you writing this if you hadn’t of gotten fired.

    It seems everyone in that company got along with everyone except you. *Hint* In a new job play it cool and don’t try stirring up the pot b/c you “think” your God’s gift to Python.

    New word to take with you…Bitch-Ass-Ness…your a prime example.

  • szeryf

    urmom: if I hadn’t been fired I’d probably quit rather sooner than later. And I’m not bitching now, I wrote this because I thought it was just a funny story.

  • urmom

    True about being funny. Learn from it and chalk it up as a story you can tell at the next IT convention.

  • matt

    wow, urmom doesn’t even know how to spell. what a fucking clown.

  • Toji Leon

    This is the reply to reply to my comment:
    I think that it was ‘Wishful Thinking’ that deceived you. You wanted to quit; not to join (another company)!

    The lesson that we can learn is: Interview the interviewer to do ‘The Joel Test’ and rate them.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: