A year of work

It has been a year after I started to work as a Full-time IT guy. Time for a reflection.

I always reflect, sometimes too much but without enough organizing.

Many of the topics here worth detailed review in upcoming posts.
In this golden position I spent so much time and effort to get and with some expectation, right after I start I smell something wrong in it and I also find those problems are so common.

The situation here is perhaps particular bad, dont alignt with Bills of programmers and get 1 to 2 marks for the Joel Test

I truly believe what those famous bloggers say. It is 2012 now, ergonomics and Cognitive science have being quite developed. 

Since the very beginning I started to really hate my working environment, a bit over sometimes. Some personal issues do make that much worse,I need to admit.

Where is the hammer?

A physicist go to CERN, expecting the LHC but get a pinball machine for higgs boson simulations.

I am not a pro, but I do wonder why they are willing to pay quite a lot, doing numerous initiatives in HR but always lack the basic hammer and nails.

It’s like a carpenter that need to take a bus to the town, fill in a form, call his boss to buy a nail and go back for every nail he need to build a house. He is paid quite well not for gaining anything from his extra work but to compensate he feel retarded.

Some hands on experience on many new softwares. At least new for me. Lotus Note, IE6, firefox 3.6, which still require quite many processes to get. I spent time to debug “missing functions” in Chrome and afterwards I find it is a chrome 5 and took so much effort and tricks to get a chrome 19. Not to mention many applications that pops up tons of alerts in basic workflow.

With the great cost-reducing initative, we have nice VMs with 20GB harddisk. Packed with some other useful firm utilies like checking whether your email include the word “Internal Only” or sending any binary program. With remaining practical usage of 5GB. 3GB went for the heavy firmwide eclipse and the remaining for your checkout of branches of the application code from SVN.
It is a legend in the modern world you do maintain a close to 0-kb available hard drive.They offer you a 1TB share drive. Dont get me wrong it is 1TB-shared-by-hundreds drive. With 15GB usage I was flagged as high-profile user and receive senior management emails and calls asking me to free up some space. They emphasize VM is not for developer and the other department try to virtualize everyone’s machine and withdraw my 2GB ram desktop.

Chrome hangs, code can’t compile, putty throw out of memory exception, all due to insufficient disk space. Brand new experience, while not really what I wanted as my life is really short comparing to the universe.

With the name as a graduate trainee, I got countless trainings and on of the highlight is a one-month training camp in India. For over 80% of them, the only thing wrong with it is the stuff are completely useless.

The true gears

As in university, I understand sometimes you need proactively to network and social in workplace, and I did manage to do so.

In contrary to what I expected when I just join, now I do know I am totally uninterested and reluctant to expand my networking.

The working culture is way different from the office in central. In the back-end you know more well you are just one of the human resources. Your time is not as precious.

Meetings. Interruptions. Ways of wasting cognitive power. As a developer who need to code I am threatened and always try to prevent any kind of disturb.

I am not able to justify this, as that is perhaps most important stuff in a workspace. Even so I will say one possible reason is I found there is nothing meaningful to achieve together, especially with those project managers.

Perhaps they do nothing wrong. It is the problem of the culture and the incentive model, again.

Employee like me understand that here your job is not trying to avoid owning any mistakes, which is the biggest mistake of a IT firm. Not much is being pushed bottom-up. There is no creativity at all, what is the point to risk changing a legacy system? more than 50% of the effort is used to show status update. another 20% is about pushing your job to others.

Meanwhile, the high levels try to create anything they can think of and push it down, to satisfy their desire of power and make noise for their bonuses. Who cares since they are never the ones who will be doing. And later they change their mind.

The firm try to squeeze out every single buzzword of IT project management like agile, scrum, Orchestration, while they achieve 0 objectives behind them. Everything started with wrong estimation. Driving too much workload with this limited resources.

10% by the employee at lowest level turned into real work. Together with the original nature of software development, this is further reduced and with the lower efficiency accounted by many reasons , real output is like 5%, with the usually wrong objective in the first place. Here most people act as project managers with some technical skills, with not much real technical development taking place.

Just noted that many essays in the old book Peopleware (1999) or Mythical-Man-Month provide better insights to the above.

With this working experience, I understand much more on issues from bad family relationships to lack of political interest in Hong Kong.

The bright side

Being positive, as the legends of building your own castle-in-the-air from a dorm room or garage are still not rare, together with the particularly bad IT discipline in Hong Kong it is not that hard to be better.

I am not trying to complain everything and expect successful career without any pain. I just criticize for doing better. It is not my way. As a really junior it is my duty and opportunity to work on what I was given responsibly. The various backgrounds on working altitude of post-80s is another topic.

I really believe one day I will go for bigger monitors. My simple career objective is to be in a workplace that I can do some meaningful stuff. Very likely it will my own.

Gone are the days working till 10pm, 5 days in a row. Luckily now I have really nice direct managers (No, you are not supposed to be reading this), which are really technical and open to new ideas. I also did strive for some new opportunities.

Only in recent months I am able to write more code, try out some new stuff and develop a whole application from scratch.
Technical stuff

Another upside for this year is I do get a taste of much more technologies. Not those toy examples in schools. I also started to organize my ideas and look for opportunities in a much formal way.

I did not master any of them, but I got some hands-on experience for everyone and will have an idea whether to put them in my future applications

I am the type of person sometimes like a kid that gone mad if I can’t do something I like.
I try to spend all commuting time on technical stuff, reading books with my lovely kindle, coding in the weekend, having my own projects. It is fine as I am passionate about true IT stuff and that also do make my life easier.

New stuff for me tried in work

  • Groovy
  • Metaprogramming
  • Webshpere MQ,
  • Spring framework, with dynamic language..JMS
  • Jenkins(Hudson, ant, maven), crucible, api level Jira & confluence
  • Selenium for testing
  • some real  javascript
  • BDD with jasmine, js-server for java script uni-testing
  • distributed and concurrent programming

Outside work:

  • Play!
  • Guice
  • android applications
  • Google APIs and a bunch of google/ IO videos

Didn’t try yet:

  • Coffeescript
Reading and exploring new stuff is the root to work as a professional developers. Leider- unfortunately not many do that in Hong Kong

These are popular, simple but fundamental, served as a good start for me

  • Clean code
  • Spring In Action
  • Javascript: Good Parts
Project management and software engineering. Classics but still very close to reality. Need more recent books to adapt the concepts to the current world.

With my master of computer science, I need to read some really academic stuff

It is also a challenge to take care of the workload after your prolonged daily work in office.

To be honest, I simply can’t. I am still the type of students that skip most of the lectures, missed some of the assignments.

However it is good to keep up academic learning. If I don’t do it now, it will be really hard if not impossible to go for any high education in related field. Also and I still insist I am not a bad student, bad student are those accept everything without critical thinking.

For the CS stuff, I found that still enhance my understanding and topics itself are interesting. Even though most assignments are boring and even worse than the tasks in the office, still it is good that most of my time studying counts,  and someone give me a qualification

Everyone in the office will tell you it is useless and ask you why not a MBA. enough for that and I know I am doing what I want.

I still wish to further my study, likely in Cognitive Science and definitely in a foreign country. I need to test my self whether I can do so and I like it.

Perhaps this post is too long not being organized enough, but this is my true thoughts and I hope it’s still a good start.  All in all, I am fortunate enough that I have quite clear directions on what I am going to do. I will try my best to keep it up.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s