Saturday 2 March 2019

An Extraordinary Day in the Life of an Ordinary Developer

Remember when I wrote about good and bad days at work? Just a week ago, I had an extraordinarily good day.

It was evening in the office. I had been feverishly debugging a deployment process tasked to me, for the past couple days. To no avail - the tasks ran smoothly and everything seemed correct, but the web application simply refused to run. I could get into the login screen, but an error message was displayed every time I tried to log in. And nothing in the logs was giving me any clues, at least, nothing I could search StackOverflow for.

I was stuck. Boy, was I totally stumped, mystified and pissed off. Hours had passed since morning, with me trying every configuration option possible. DevOps wasn't my thing, but it had been tasked to me and I had to get that done, no two ways about it. Just about everyone had left for the day. I sat there stewing quietly in frustration, and wondering what else I could possibly do.

And then it hit me. I was barking up the wrong fucking tree. Hell, I was in the wrong fucking forest to begin with.

Wrong forest.

I could access the login screen, which meant files and the base URL were just fine. But if I was failing on login, that was probably to do with the database, because the data had to be verified there. And if there were no logs, that was a clue in itself. It meant I wasn't even connecting to the damn thing. With that in mind, I examined the config file for the culprit, this time with a renewed sense of purpose. And when I scrolled to that line where the connection string was, that's when I saw it. One digit was off in the port number. One. Goddamn. Digit.

I changed the value, and ran the test again. And when the dashboard came up after logging in, indicating that I had successfully squashed that bug, that intense triumph I felt gave new meaning to the term "better than sex".

That high remained with me all the way home, as I rode the train with that silly grin on my face. It felt so special that I'm writing a blogpost about it.

But it's not just about me being oh-so-brilliant. In the hands of a more experienced, more able developer, that bug would have been squashed long ago. There was otherwise nothing remarkable about this incident.

And that is precisely the point.

It's moments like these that reaffirm the choice I made a full ten years ago, when I quit my desktop support job and ventured into the murky world of web development. Ten years later, the unbridled enthusiasm remains, the same eagerness that first saw me through several setbacks over that decade. That's remarkable. Skill can be taught. Enthusiasm can't. More skilled devs than myself have burned out and decided to call it a day. Because being a techie, like many other professions, is about a lot more than skill. It is about who you are when all the programming know-how, fancy frameworks and whatnot have been stripped away.

The fact that I could feel so unreasonably pleased with the evening's work, even for so negligible an accomplishment; the sheer amount of pleasure I wrung out of that magical moment where more jaded developers would have simply glossed over, is indicative. I was made to do this job.

Cold water

And then there are the party poopers. They'll be the ones who choose to harp on the fact that I stayed back two hours past official knock-off time. They will tell me that what I do only benefits the company at my expense.

I refuse to fall into the trap of thinking that way. That is small-mindedness, and small-minded people, generally, don't accomplish greater things. I've said it before - work is not simply work. Work is also training yourself for your next job. I put in the extra time not because I want to impress anyone (most of the time, nobody even knows) but because I want to train myself. The fact that the company benefits, is merely a side effect.

Back when I was still actively performing Reservist duty, I had the opportunity to speak to some of my fellow reservists. This guy in particular was griping about how cheaper foreigners are replacing us at our jobs and how our Government isn't doing anything to stop it. I told him a story of how I'd replaced three Indian nationals simply by doing all their jobs. My purpose wasn't to brag - well OK, maybe a little - but my main point was that it's how we adapt to the environment that matters. It's our attitude towards our profession that counts.

His response was a sneer. "So you're reduced to doing three jobs for the price of one. See? Too many foreigners."

Always unhappy.

I was left speechless. Technically, he was correct. But that wasn't the point at all. Sure, I was doing the work of three people, but it was still less work than I was accustomed to and for more money. It occurred to me then, that some people are bitter and unhappy, and determined to stay that way. There's absolutely nothing I can do for them. They will compare what they have constantly to what others have, forever coming up short, instead of appreciating what they do have or making the best of situations they cannot control. If they do extra work, they will think of it only as (grudgingly) giving the company a freebie, never in terms of their own benefit.

Also, more disturbingly, this guy was an officer. A leader of man. Cream of the crop. At some point in the Republic of Singapore Navy, he was probably one of the brightest and the best, and probably gave the extra mile to even get into Officer Cadet School. What happened to that drive? Life get him down? I'll never know. But it's very sad.

Work-life Balance

People like to talk about this. I think they talk about this way too much. It's become one of those douchebaggy buzzwords of the new millennium.

I used to say "I don't have a work-life balance. I have a work-work balance.", in obvious reference to the fact that I code just as much outside of work. Like all the other people who overuse the term "work-life balance", I was naive and didn't see past the obvious fallacy.

Always tinkering.

You don't magically become someone else from nine to five, then revert after that. You're still you. I'm still a software dev even in the comfort of home, even when I'm not doing any work from the office. I approach problems in much the same way, and I like to find out how something works rather than simply what it does. In many ways, I'm still the same excited teenager who discovered C++, HTML and JavaScript in 1996.

Hence, there is no such thing as work-life balance. At least, not the way people understand it. It is all life. Work is part of life. And if, for some reason, you really are someone else on and off the pitch, you probably don't like your job very much. You have my sympathy. It's a terrible position to be in, to spend almost a third of your life doing something you don't care for.

I'm blessed to be earning good money in a field I care about, even though I'm probably crap at it. And I never forget it.

Your very ordinary developer,
T___T

No comments:

Post a Comment