code complete

Posted by anton
on Friday, June 22, 2007

here's daily wtf-worthy quote related to me by a co-worker.

some background: we've been helping these guys move their stuff to our new source control.

us: all your stuff is set, check and make sure it's ok, then we'll move it to the main repository
them: we'll let you know when we deploy it to production
us: we don't care when you deploy it. all we need from you is to verify that your stuff looks ok in the test repository, then we will move it to the main one
them: it's ok, it will go away in just a couple of months
us: oh, so you mean it is a test throwaway prototype project?
them: no, it will go into production in two months, so no one will be using a source control repository after that
us: ...

spam and butterflies

Posted by anton
on Tuesday, August 01, 2006

So here I am, taking a break from updating my resume. I must say I do feel a subtle streak of vengeance; even though fully acknowledging the childish nature of it.

I think past few months proved to be a good experience; they showed me what happens if there was nothing but work in my life. Not only my world condenses and becomes a tunnel, but even the work itself starts to suffer as I dutifully plug away without ability to step back, look around and get that much needed "blow your mind" experience that ultimately makes me better at my daytime job.

I stopped reading, I stopped actually listening to music, I spent less time on film, on my friends, even on just forgetting the work for a day. The last drop was dreaming about work in those few hours between the urgent phone calls.

Work is not my life, it is something I like doing, it also happens to be my hobby, but it can only co-exist with all the other stuff I am into. I do tend to go into these intensely focused streaks with all my hobbies, but they last for a few weeks, and then I switch.

Working 12-14 hour days without holidays or days off for past two months got me burned out. Occasional sprints at the end of the release are perfectly normal, but they cannot last for more than a week or two.

I am also done with being on-call. I spent 6 years carrying a pager; someone has to do it, but I value my free time too much to get into it again (especially since we are not paid overtime, nor we are paid extra for being on call).

Work seems to be calming down, but the problem is that the most I can expect at the end is a ~1K bonus - all the sacrifices will be forgotten. I have three weeks of vacation left and probably another two weeks of comp time accumulated in past two months, but I know I will be lucky even if I get to take my full vacation (and only one day gets carried over to the next year). This particular situation is not the first time it happened to me at this company. The higher-ups forget too fast and move on, while their people at best get a humiliating trinket.

There is no carrot dangling in front of me in the form of a promotion or a big bonus; no matter how little I think about pop behaviorism that drives popular incentive programs, no matter how much I value my peers' opinion and personal satisfaction, I also want to see recognition for my work and see myself grow.

Another problem is that a lot of the work lately has been firefighting. As any big company knows, the work distribution is 80/20, and we are part of that 20 percent that gets stuff done. We found ourselves in the middle of a shitstorm caused by a big-bang deployment, as it is transitioning from consultants to employees and stabilizes.

There are a lot of things I have learned and learning every day, and it is a big project with a lot of complex constantly moving parts.

However, I find that most of my time is spent managing the communication explosion that is the result of several hundred people working in a large organization burdened with compliance requirements among other heavyweight bureaucracy (just ask me about our laptops). How can I work on anything when I get 300+ emails a day?!

Paul Graham yet again phrases these obvious things very nicely in "Power of the Marginal" while talking about anti-tests:

Where the method of selecting the elite is thoroughly corrupt, most of the good people will be outsiders. [...] If it's corrupt enough, a test becomes an anti-test, filtering out the people it should select by making them to do things only the wrong people would do. [...] For example, rising up through the hierarchy of the average big company demands an attention to politics few thoughtful people could spare.
[...] People at big companies don't realize the extent to which they live in an environment that is one large, ongoing test for the wrong qualities.

It is getting better, and I am getting better at it, and there are nuggets of value in this, but the question is whether I am willing to spend my time and energy on defeating these tidal waves of crap in order to get my work done and gain knowledge.

If I were to stay I would have to play the system in order to advance. No matter how much you help your peers or their direct management across the enterprise, my next title depends on the visibility to the higher-ups, all of those that sit on the promotion board. This means I need to pick something very visible, focus on it, and dazzle them with reporting skills, generating as much noise as possible. Looking around, very few of the folks at this level deserve the title at all (but those that do are exceptional, and I am so glad I have them around, since I can look up to them).

For the first time in quite some time I really do like and respect my teammates and my manager; I think we have a fantastic team with a lot of potential, and the future in half a year or a year looks pretty nice as we are stabilizing the environments, gaining first-hand support and implementation knowledge, positioning the team to be the integration/best practices nerve center that possesses overall understanding of data/systems, their problems/shortcomings, overall design, and, most importantly, the actual knowledge of the way the business works.

What I am afraid of is "boiling the frog" mode, the perpetual dangling carrot of extra bonus, another small interesting project, yet another short-term treat. This instant gratification masks the opportunity costs of not leaving, and these costs are growing every day.

I value loyalty, I like the people I work with, and I know I will be letting them down If I leave, but in the end I do not want to count on company's loyalty when they make business decisions. I have no illusions, and I'd rather be a professional in a slightly different sense that pays less attention to emotional attachments and focuses on more pragmatic things. I think I can do better given my current work environment, my pay, and work hours, compared to other companies.

I am also a little leery of using blackmail tactics to get what I need (threatening to quit or bringing an offer from elsewhere without an intent to accept it). Unfortunately, this seems the only other way to advance in this company without "playing the system".

The time is right. I feel like I need to move on, and changing jobs is more of an excuse to try and change everything else (and this is what it should be, really - a hobby that also pays for the means to do other things). Now it is time to refresh some of the knowledge in preparation for the (anti) tests that most of the interviewers subject people to :)

biling the night away

Posted by anton
on Sunday, February 19, 2006
working operations issues on sunday night is never much fun. especially when you are talking to a certified oracle admin/dba/etc at work, and you tell him "i am trying to telnet to the port the database is listening on and nothing responds", and he keeps telling you that one cannot telnet to that box. then he insists that the only way to connect to the port is using oracle client. and then i notice that the guy's phone work number ends with 1337. oh the irony!