Journal #247 – Work-related reflection

I must have gone mad because today marks another day where I actually write two journal entries. Well, it turns out it may be a good thing. You may ask why.

The truth is in any given day, there will be many things going on at once and sometimes, each of those things should be documented and distilled. Your thoughts and feelings about each of those events should be put out there for people to read. One journal post that summarize the whole day just don’t cut it.

My first journal for today talks about my dental appointment, some background, the importance of oral health, and me showing gratitude.

For this journal, I shall talk about some thing that happened at work.

So after I’m done collecting my new identity card from the Singapore Immigration and Checkpoint Agency and had my lunch, I went back to office in the afternoon.

Once there, my primarily focus was still getting the pagination stuff implemented properly.

But before I could get down to doing my work, my team leader came over to talk to me and my colleague about the high-priority stuffs that we need to do before start of 18 December. That week, we will be deploying at least two copies of the client application onto the customer’s workstation for them to test over the holiday week and provide feedback. To ensure that happens, we need to test our stuff properly and give training.

So during the talk, he asked us when we can finish the part that we are assigned. I told him I can finish my assigned tasks by 13 December. And not surprisingly, my colleague also said the same date. Personally, I think it is because no one wants to give the impression they are not effective in doing their job. But I never ask and don’t really care. For me, I will just do my part to the best of my ability and what I have promised.

After that, I got down to business and started solving a specific problem that could cause some usability when user perform dynamic searching of data.

As I was solving the problem, I encountered an issue where the server-side application is not very responsive to client requests sent via HTTP. It turns out, the IIS was stuck processing a large volume of request generated by an external system for the purpose of data syncing.

I went and talk to my colleague about it and was genuinely surprised at why we are using the same application instance to process data-sync requests. I was expecting the data-sync was done using another cluster that is independent. I even went to talk to my ex-manager to talk about whether having a second cluster was there right way to go. After all he has far more experience with these kind of thing. He did gave me some suggestions, which I am going to tell the team leader about it. But for now, it turns out the architecture was meant to be like that due to resource constraint. I seriously hope we can change that soon if not we will be the ones suffering.

During the discussion about the performance issue, we ended up talking about stuff like my focus is on delivering high quality even just for one part and how the company itself isn’t even putting quality first, even though that was one of their core values. It’s actually very obvious when compared to my previous company and I did mention it from time to time in my past journals. The first indication of lack of quality is the lack of proper training and getting the right people for the job. Due to budget constraint, the company just decide to dump everything on us and ask us to figure it out. Not that it’s wrong but it’s not effective especially in the face of short development time, large amount of data the application needs to handle, and our general lack of experience in infrastructure-related stuff.

Now that’s not an excuse for us not to learn or do our job. To be useful to the organization, one has to learn, apply what one has learn, and solve problems given a certain resource constraint.

However, it is a problem when the resource constraint reach a certain level where it is obvious there is no budget for us to do anything worth our time.

I heard that the project that we are on has actually exceeded its current budget and the management can’t add additional manpower. I don’t know how true is that but it is something that I have seen and heard before. I encountered the same thing in my previous job because the project got dragged too long.

I think this issue is especially rampant in Singapore. I’m probably wrong to generalize like that and I know I have not face enough stuff in life but my conclusion is based on the culture of Singaporeans when it comes to services—everybody wants cheap, wants high quality, and fast. And management people tend to squeeze the people below them to achieve profit at the expense of job satisfaction. In a way, most Singaporean workers are highly skilled but underpaid and under-appreciated. Some of them can’t quit because of their family. Please feel free to correct me if I’m wrong here.

I would love for someone working in the tech industry elsewhere in the world to share what’s like over wherever they are.

Regardless of the budget issue, I will still focus on doing my job well and deliver quality work but that doesn’t mean I will flood myself with work. It’s all about being un-busy, focusing on the really important stuff. Right now, quality software is the important stuff.

There is a mindset that got drilled into me by my previous boss and it goes something like this, “I am not the one paying your salary. Your customer is the one paying you. If you don’t deliver quality, no one will look for you anymore.”

Now I realize how it fits into my values and I am telling myself, “It is not my company paying me. They are just the intermediary, an agency of sort. My focus is the customer and I will do my best to make their life easy.”

In the spirit of delivering quality and finishing my task, I got the pagination of data working. I have also implemented additional stuff to make life easy—like a refresh button for an example. I also made sure the component can be operated in an intuitive way, well, at least the way I see it now. It will have to face the customer and only then I will know for sure if I did something correctly.

When I was testing the functionalities, I lost my patience and got pretty irritated a lot of times because the server was responding a little too slowly. Data loading took a long time. It was already 6.30pm when I finally left office. Way later than I would like actually but I got what I need to do done.