Friday, September 21, 2012

HBL-A0043 - Responsibilities of Business to Their Employees

...be it resolved that:

the following is an example of evil (ref .HBL-Ax) in that the purpose of any business entity is to comply with its contractual obligations. this includes specifically that whatever you lead someone to expect is what they will receive. more pointedly, noone can be expected to make the right decisions without the right information and apparently they made no serious attempts to rectify repeated problems in that regard, instead choosing to blame the innocent. this is a double-evil because they were actually blaming the victim of their own incompetence for the results of it.


http://joestraitiff.livejournal.com/
Below are the 1 most recent journal entries recorded in joestraitiff's LiveJournal:

Wednesday, November 10th, 2004
5:07 pm
So I'm posting under my real name -- you have to stand up to this type of thing or it will continue. And every company will become EA so that can compete... Remember, you can't spell ExploitAtion without EA.

Here's my story from front to back, I'll let you decide who's the insane one here. I just listed several of the incidents that led up to my dismissal that I assume were the reasons. Laughingly, I don't really know the exact why -- I never got one from HR and my boss just said the last item was the "last straw." However, I skipped many colorful and fleshing out stuff that shows you the culture of EA, e.g. the Executive Producer of the project hung a neon sign in the team area that said "Open 7 days" and constantly sent out emails to the whole team saying that he'd see them over the weekend. Or the meeting five months before the ship date where they were trying to tell everyone that weekends from then are were mandatory without actually saying it. There was never discussion on cutting stuff or adding resources to complete the game, it was always about working longer and harder.

I joined EA through Maxis, I definitely didn't want to work for EA but Maxis was different and seperate when I joined and the lure of working on a new SimCity geared to consoles was just too great. I spent a year working on two different projects at Maxis that ended up being cancelled (because of lack of management support -- our work was the best I'd ever seen). I was constantly praised, received off-cycle raises, produced tons of prototypes, and rarely worked more than 40 hours a week and never more than 50.

Then it happened -- Maxis was moved to EA redwood shores. Drawn into the mothership. I didn't want to move so I gave them a huge list of "must-have" things or I wouldn't move. They wanted me badly and met all of those desires. They made extra-sure to keep me quiet about what I got because the deal was one of the top 10 for the studio (we're talking above six figures here just for the relocation package...).

Coincidentally, when the move happened they cancelled SimCity again, and put me on another project (The Urbz). And I do mean PUT me on -- I was never consulted, talked to, or anything. One day my new manager came over, told me he was my new manager and gave me a pile of work...

Now, I was peeved this happened, at least they could've asked me to go on the project. I really didn't want to -- they worked hard the year before to ship the product and I didn't want to get sucked into that mess. (Now I wish it had only been as hellish as the year before -- everyone agrees it got MUCH worse and will be MUCH worse the next round).

Well, I started cranking out work on the new project doing great stuff, however, their tracking system was different than I was used to and I was pulled into a meeting for being "late" on a task. It took me a week to do a "3-day task" that I didn't estimate (but even if I had, I would have screwed it up also -- there was no research done into the impact the task would be). After discussion, it became clear that what I really did was do a three week task in one week (I had been informing my "swat lead" all along about why it was taking longer. Apparently that information wasn't propigated to my supervisor.) And if I had been empowered to do even an afternoon's worth of research I would've estimated a month for the task... So after that discussion with my supervisor, we worked out the proper reporting channel and things moved forward again. It was changed into me reporting directly to my supervisor. This was the first sign of trouble.

Time passed and I was pulled into another meeting with my supervisor to discuss the "issue" from the previous day. This was on Wednesday, on Monday I had worked a 14 hour day to clear stuff off my plate before a build was due so I put in the effort to get it done. The next day I was called at home at 11:30am to come in, there was a problem with one of the other builds because of some of my work. Yup, I had overslept and missed the "you must be in by 10am no matter what" deadline that was in effect, but I had also been up until 7am with a sick daughter. So I came in quickly, fixed the problem (it was in code that I had done a month before and had never been tested on that platform...), gave the fix to the person who owned the platform and asked him to inform me if there were any problems. This was all finished about 1pm. I then worked through the afternoon untill 6:30pm and was falling asleep at my desk so I decided to leave, and did (yup that was about a 7 hour day -- I work through lunch to spend more time with my family. However, I felt that was PLENTY given how long I'd been in the night before and the fact that I could no longer work due to fatigue). Well, the next day I was ripped into because a build for that platform didn't happen on time. Yup read that again, I was blamed for a platform that wasn't my responsibility, AND get this -- my fix worked, but I was yelled at for not staying until the build was done and verified. I didn't even know there was a build. Sign number two of trouble. I explained all this to my supervisor during that meeting and he seemed perfectly fine with the explaination.

Well, a few weeks pass, and some bug shows up in my code at 10pm (yup I had left at 7 or 8, I was trying to only work about 40-50 hour weeks and was keeping up with my schedule by working at breakneck speed -- but there was no way I was working on weekends which you were required to do if you were "behind"). I got a call from another team member asking if I knew what a certain problem was, it clicked, and I gave him a solution that worked, over the phone, in under 15 minutes. Well, the next day I was pulled into another meeting with my supervisor and got yelled at for not being there. He said (even though he denied it in a later meeting) that he didn't have issue with the quantity or quality of my work (in fact he praised the quality of my work) but said that someone in my "senior" position (my title was only Software Engineer not Senior engineer but I've shipped a lot of titles and been in the industry for about 6 years) should be available a lot more at "this time in the project" in fact I should be working at least 12 hours a day, which I said was completely unaccetable. I'd do the work given me but I certainly wasn't going to sacrafice my family, and certainly not that early in the project. It's ok (not really, but it's a common consesus) to work those kinds of hours the week before a major deadline (E3, alpha, beta, final) however outside of that 10 hours a day should be the absolute max.

Warning sign number three...

Then I received a call at 10:30pm on a Saturday night to come in and fix a problem immediately. Well, I was asleep -- my daughter had actually gone to bed early and my wife and I took advantage of that and crashed. Well in the morning when I checked my email (after hearing the message) they had fixed the problem within an hour. I assumed this was going to be a big problem with my supervisor, so on Monday the first thing I did was email HR and schedule an appointment to discuss the communication issues I was having with my supervisor.

I talked to the head HR person because the regular one wasn't available and she wanted to set up a meeting between me, my supervisor, and our HR person. Apparently she already had an appointment with my supervisor that afternoon and would convey the information.

Well, that meeting happened and everything seemed to be cleared up. The communication problems were going to be solved by a clearly defined task list that "had to be done" by Friday with the posibility of it changing if higher priority things came along. In the words of my supervisor "This is a very aggressive schedule are you sure you can get it done -- it will require a lot of extra hours." I agreed to it, partially to clear the air between us and partially because it was now late in the project and we had to ship the pig.

Well the week cruised by with me not hearing a peep from my supervisor except in reply to almost daily status reports I was sending him (on my own perogative, to forestall any suprises). I worked my butt off and completed the list. I had several "great job" emails from my supervisor during this time.

Then things went nuts. On monday, when I came in, I was pulled into a meeting (on 5 minutes notice) with my supervisor and our HR contact. Apparently my work the week before was "unacceptable." I got everything done on the list, but I didn't get every single new thing added by everyone else. Now we had discussed this in the previous meetings and I wasn't supposed to prioritize stuff from anyone except from my supervisor, and he also said we'd talk if something new was supposed to replace anything on my must do list. Neither of these things happened. So the new stuff (only a couple trifing things that I had already almost completed that monday before the meeting) wasn't complete.

It was a suprise -- I did what they asked, and was yelled at for it. I was "supposed" to have completed every little thing extra. And, both the HR guy and my supervisor lied that that was what had been discussed at the last meeting. I couldn't believe the bold faced lie, so I capitulated saying that I must've misunderstood and apologized.

The weirdest thing in this meeting, which I now understand is "stock EA" was the attitude of the HR contact. HR is supposed to be the employee's advocate, they are supposed to try to keep people and work things out. However, that is not at all how he acted, in fact he asked me several times to "just quit" He also said that if I didn't turn around and show more "commitment" to EA I would be punished "up to and including termination." I was stunned. I had kicked ass and worked my heart out for this project, created tons of great code, fixed some of the worst horrible mess I've ever seen (that codebase is the worst quality I've ever seen in my life, bar none. And I thought I had already seen the worst twice before at different companies.).

My supervisor said that the only way he could continue to work with me was if I fully commited to shipping the game and would do whatever it took to do so. I capitulated again -- at this point there were two weeks left, so it was time to dig down anyway. So I promised him and then I worked like an idiot.

From then until ship was hell. Many nights working till 4am when we finally had the ok to go home, only to be expected to return by 10am. I did it all, cranked out the last bits of work, found some vicious bugs, cleared my bug list constantly. I.e. was the perfect psycho worker. Then we hit final and things started to calm down a bit, then we were in CQC (EA's Corporate Quality Control, you have to pass testing there for 7-10 days before you can submit to Sony, Nintendo, and Xbox to get their approval for manufacturing). Things would heat up and we would crank stuff out to resubmit to CQC so we could make our ship date. During this time we also had our studio test department banging on the game and they would find stuff for us to fix that we'd choose wether or not we'd put in a new build to CQC (because we didn't want to "reset the clock" in CQC and miss our ship date). One of these issues was mine, one of the guys on the team could reproduce it, so I (and another teammate) figured it out, created a fix and sent it to the other guy to test (as he wasn't around much -- this is that time of the project were some people work like crazy and others play games). He dropped by at one point to tell me how the fix acted and it sounded perfectly correct, however I was busy getting the fix into a build so I didn't visually verify it on his system at that moment. This was around 2pm. After getting it ready for the build I tried to catch him to see the problem, and he wasn't around so I emailed him to tell me when he was back so I could just do the sanity check that the fix worked (I had told my supervisor that I'd be sure it would work on that guys machine, the guy told me it had, but I was paranoid and I wanted to see it). Well 7pm rolled around and he still wasn't back, so I went home.

The next day I was publicly reamed via email. Notice that I said the next day -- I wasn't called about any problems nor emailed that night. There was NO attempt to contact me at all that there was a problem. I didn't find out until 11am the next day when my supervisor wrote the flaming email. Apparently the fix wasn't acting EXACTLY the same on his machine there was a slight difference and my supervisor was pissed. I finally got to see it on the guys machine, studied the code found a minor change to make it work on his system put it in the build and had it all ready. This fix was then integrated into a build for CQC days later. I.e. there was no time pressure for it. I was never told that it had to be done "that day no matter what" and it wasn't even verified for a couple days.

However, that was the "last straw" per my Supervisor and I was terminated over a week later at 5pm on a Tuesday... I was told I could "voluntarily resign" but I turned that down. Why hide what was happening? I don't see how it could possibly look bad for me, in every case I did what was asked and more. It was always just interpreted in the worst possible way. I always thought my explainations went over well, but apparently I was supposed to know everything about the project so that I could know my place in it, and spend my copious free time at work figuring out when all the platforms were being built, watch the "leads" to make sure they get their stuff done (because it's not their fault if it doesn't), etc... Just insane.

I was never given a formal reason why I was fired, nor did they go through any of the companies official "personnel improvement plans" or any other such stuff that they saw the do before firing someone.

I chaulk it up to personality conflict with my supervisor -- he was a work-a-holic who chose the company over his wife and kids. He worked insane hours 7 days a week. I refused to do that and prioritize my wife and daughter over work. That never sat well with him.

My wife believes that I was terminated because they feared I'd lead a revolt. My supervisor repeatedly told me to work long hours to be an example, and I replyed that that was immoral and setting the wrong example...

All in all, I'm now happy I was fired. I've actually shucked the stress I was under (and I was under contract because of the move package so leaving wasn't an option, and I didn't want to -- I wanted to fix things from within.) I've been able to spend lots of quality time with my wife and daughter and repair those relationships from the "EA smashing" they received.

Well, hopefully I find work soon and put this mess behind me. I do love the gaming industry. Some companies are bad and some teams are bad, however, EA is evil.

-Joe Straitiff
formerly Software Engineer III
of EA formerly Maxis

No comments:

Post a Comment