Friday, May 4, 2007

My First Resignation

A month of working at that online-retail-giant-named-after-a-South-American-river, I am ready to say goodbye to it. It's been kind of a disappointment to me so far. Before joining, this company is one I've had my eyes on for quite a while. I applied right after graduating from college, but I didn't do well on the interview so I didn't get the job. When Motorola announced our layoffs, I decided to try again. This time, with more experience, I got in without much trouble. I was thrilled when I got the offer. So thrilled that Alex said he's never seen me this happy.

Well, a month into the job and I'm not so happy anymore. I now understand why a lot of people warned me about this company and why the turnover rate is so high here. Two words: it sucks. Well, at least for me it does. I took an SDET (Software Development Engineer - Test) role here because test development is where I want my career to go. I like building test infrastructures and enjoyed my assignments as an SDET at Motorola. The SDET position here seemed like a perfect fit for me. I would be doing Java development, which I have been doing for the past several years, and I would be doing test development, which is something I want to pursue further. Well, a month in and I am doing Java development and I am doing test development. I should be happy right? Not quite. One huge aspect of my job I didn't really consider was the team participation part. My company does not put much emphasis on Quality Assurance, at all. Because of this, most SDETs here work alone or consult developers when tackling testing problems. I am one of the few lucky people here who get to test an entire product by myself.

That should get me trained plenty, having to do everything by myself, right? In a way, it would teach me a lot of things. For example, I would have to do all sorts of testing that I've never done before, like stress and load testing. But in another way, it's teaching me the wrong way to do things. Because of their lack of direction on testing, everything here is somewhat "hacked". So essentially, I would just be creating a bunch of little projects here and there to solve temporary testing problems. I wouldn't be able to build a test infrastructure, or at least learn how to build one. Because of their lack of emphasis on testing, I have no one to learn from, no one to consult with on the subject of testing. There is no test architect to guide the general direction of testing, and there is no team members to consult with about how to test a feature. I would very much like to become a test architect at some point, but I am way too inexperienced as of now to take on that role.

The culture of this company is also a sore point. Because they're a retail company, they have very very low profit margin. They don't have the financial resources as say Microsoft or Google, who mark up their products quite a bit. For this reason, they must operate efficiently and cheaply. That means that everything has to be done quickly and new features have to be out much faster than normal so they can attract customers. There's always a trade-off between delivering products quickly versus delivering a quality product. When a product is shipped quickly, quality usually suffers. When a product is shipped with top-notch quality, it usually isn't delivered that fast. This company values shipment date much much more than product quality. They provide a free service for online retailing, customers don't have to pay to use it. It's okay if a bug or two is found, as long as customers can find what they're looking for. But it's not okay if they lose a potential group of customers because they did not deliver a new service quickly. As a result, their services are usually released in lightning speed but with lots of bugs. To remedy the bug situation, instead of prolonging the release period and hire more staff to test it, they make their developers go on-call to handle any crisis.

So after a month, my position here has become "just a job". It is just the wrong fit for me. As a result, I will soon be quitting this job and moving onto another company who values quality a lot more - Microsoft. I know, I know, it's the devil. But hey, for a career in test development, Microsoft is the place to be. My stint at this company will be short, but I rather leave a bad impression here than waste my time doing something I don't like doing here. I haven't told my boss here yet as I'm still waiting for Microsoft to take care of my visa. I am dreading the conversation with my boss but I can't wait to get it over with.

I can't wait to quit.

1 comment:

Confused and Human said...

We shall be archenemies!