Posted on Leave a comment

Hiring Right

Reading Time: 2 minutes

In a little over last year or so, I was involved in many technical interviews, and sometimes hiring decisions (one vote only, but a No vote is usually a No for the candidate). This is quite different from normal technical contributor’s job. But I learn something from this process too. I think overall I had two bad “Yes”, meaning I should have said “No”, but I said “Yes”. In one instance it was purely my unforced error, in another case the process went haywire.

Let me recall my mistake first. I was talking to candidate, and I noticed something unusual in the resume. Basically it appears the resume has some contradiction with what’s been said by the candidate. I have two colleagues on the phone, not sure if they saw it on video (likely not as I may not have video camera for the laptop then). But basically at that moment the candidate grabbed the resume back from me. I was stunned to say the least. I told my two colleagues No. But they somehow asked me to re-think. And they talked me into “give him an opportunity”. Things did not work out eventually, as the manager eventually let that person go as he has some personality issue.

The second bad “Yes”, was process oriented. Basically after we made “hire” decision after interview, I recall I have seen the resume. I searched email and found out that candidate was “no show twice” in last September (sept 2019). No show is a red flag. No show without explanation is even worse. Not matter how talented someone is, it’s very hard to overcome this kind of issues. My regret there is we did not have a process to flag a candidate in our system. I recall at my former workplace, due to some back and forth, one hiring manager said “enough”, let’s flag this person on our system. So basically we are unlikely to see this person again. In a way it’s a good thing, because as minimum it gives some warning: one can always over-ride computer, but computer has better memory than human beings in many occasions. This process would have helped, if we had one.

Last but not least, some interview advice from Joel Spolsky. Quote: You should always try to have at least six people interview each candidate that gets hired, including at least five who would be peers of that candidate (that is, other programmers, not managers). || (more quote) So: don’t listen to recruiters; don’t ask around about the person before you interview them; and never, ever talk to the other interviewers about the candidate until you’ve both made your decisions independently. That’s the scientific method. || I spend about 30 seconds telling the person who I am and how the interview will work. I always reassure candidates that we are interested in how they go about solving problems, not the actual answer.

Posted on Leave a comment

Job search advice amid COVID-19 pandemic

Reading Time: 5 minutes

We are at unprecedented times, in terms of the pandemic, and the economy aftermath. The IT software dev job market is not impacted as much as some of the hard hit ones such as. travel and leisure, but nobody is also insulated when there is a typhoon. For example, locally here in St. Louis, Enterprise rent a car, the largest car rental company in the US and in the world, has laid off more than 2,000 people, IT division included. I recall about 10 years ago I wrote a post about job search, and I like to update it, amid the time change and this specific pandemic change.

Some obvious things

No onsite interviews, remote or video interview only these days. Zoom is the most popular choice, and for developers there are some white-boarding online software. Realtime white boarding is actually quite challenging, from my personal experience, on both ends. It also depends on the friendliness of the interviewer, some interviewers like to be “above the interviewee”, they give the problem, did not like to talk or give hints, and expect a quick answer right away. On the other hand, there are some other interviewers who are more open and friendly, and sometimes they will throw a dog bone to rescue. As interviewer I always try to be the former, as I personally have been in the receiving end of “bad interviewers”, and don’t like the experience. Once at an onsite interview (long time ago), a guy who maybe quite sharp, made this comment: it sounds like you did much better than the other guys came in earlier, they really don’t know what they were talking about. And at least you put up this and that, blah blah blah… is this a compliment? I guess my English is already good enough to appreciate the underlying tone there. On the other hand, I can always appreciate good / friendly interviewers, once (not in coding or white boarding) during an onsite interview, the interviewer saw my schedule and saw that I was stuck in the little room all day, he offered let’s talk a walk, and talk in the company cafeteria. It was year early / winter 2005 as I recall, in middle of New Jersey.


Below two the most popular websites now.

Indeed: note is No. 1 in terms of the number of jobs. I found my last job and current job via This is mind boggling when you think about it. I am not sure whether it exists in 2010. It’a an aggregator website. A bit like Google for information search.

LinkedIn: linkedIn became more meaningful too, I got a job offer in my last round job search and the lead is from LinkedIn. Many companies now post jobs at LinkedIn. Besides the number of jobs, we all know LinkedIn is the top 1 place that recruiters congregate. And as I built profile at LinkedIn, I also received more unsolicited messages or requests from mostly recruiters or website SEO people. Most recently I decided to be more discreet on accepting recruiters request. Most recruiters are young enthusiastic people and I bet they send out things blindly. This brings to another point.

Also, stackoverflow has a job portal, and some of the jobs are looking good too.


I think recruiters are still useful, if we are more discreet and we ask what we want. I have some recruiters friends from both ends as well: job search, or candidate technical screen. And I keep in touch with them from time to time, as a part of relationship building. Sometimes this could be a simple “hi” when the recruiter is in the hallway or in the office. I do understand, on linkedIn, or via database, sometime some younger recruiters will cold call (the reason I pick up the reason was probably the call from number is an agency I know). And we need to keep things in perspective that’s a part of their job and paycheck too. Also keep in mind we live in a small world especially in the St. Louis IT job market, and sometimes the table can turn quickly. I recall seeing a former coworker at two separate places (and I remember he was not being nice to me 🙂 I don’t have grudges against him, but I just know I probably won’t use him as reference, and vice versa.

Code Test

Not white-boarding or pairing either remote or on spot, but something like hacker rank, or Those are okay as they are usually not overly difficult, they are fair test in other words. There is some random ones, which is usually some problem a tech lead, an architect came up with. And some of those can be nasty. Once I spent 24 hours on a problem, and could not solve it. I solved it a day later. Also noted the behavior type questions on or company recruiting website. Those are easy ones to score points, so don’t waste the opportunities. Usually they let you re-do if the first recording does not look good. The coding test, if done properly, you can run the unit test on the editor and you know it’s failed or passed.

(Update 05-19-2020) There are a lot of online code playground or white boarding tools for code testing on the spot. Those are mostly collaboration tools, with some syntax highlighting. But it’s usually not as powerful as the hacker rank or as the latter ones usually have the build-tests, so basically you will know your code is good enough or not by passing those tests (tests are usually hidden though). Tools such as code labstack are still pretty useful. One thing I am not sure is how they manage the sessions. From interviewer (hiring side) point of view, it maybe helpful to give a heads up if a quick code test is expected so that the candidate is aware. I have seen candidate just bail out without even trying. I have been on the receiving end of this kind of test as well. Again the interviewers friendliness (more precisely helpfulness, do they just want to see the candidate fail, or they want to be as human as possible) varies. (sample java code question here). Also JavaScript code playground such as (more links for codepen clock 1 mine and clock 2 Dan Abramov) and .

My javascript code samples.

Last but not least, problem solving questions. One example: Suppose we have 8 balls: one is heavier than the other 7, the other 7 are identical. Now we have one balance (or scale), and we can put balls on two sides to weigh and compare. Use as few attempts as possible, to find the heavy ball? A follow up question is, if we have 2 or 3 attempts, how many balls can we handle (again one heavy ball with many identical lighter balls). 

About me. Also you may read about my other post on related topic.

Also, please note this guide on job search. I haven’t read the whole thing but it appears good. Much longer than this blog. Last but not least, this post is a good read too (Helen Anderson @helenanders26).

The Science Behind Making Software Engineering Interviews Truly Predictive of Job Performance by Geoff Roberts.

Posted on

2015 Year In Review

Reading Time: 4 minutesIt’s new year again, and obligatory new year resolution time. I think I’m already past that practice: will try to put down iPhone and Macbook more when I’m at home though (I was referring to this comment on 2014 review: Leave the iDevices/mac if I can). I’ve eaten my own words on this one. My younger daughter is at a fun age (17.5 months), being a toddler learning to talk, I’ll play with her more, and of course continue my weekend chauffeur job for my older daughter (skating, dancing/pre-ballet etc).

Job Change
I changed my job again this year. I was not expecting it at the beginning of the year or did any planning. But it worked out so far. Again I hope I can stay at my current place longer 🙂

Personal finance
I stopped contributing to the Exxon mobile DRIP program; started put same money ($100 per month) into IBM DRIP program instead, still using ComputerShares. Was able to save some money in the emergency fund account. But still spent quite some on the following items.

Visited Disneyland;

Got a piano and ready to start piano lesson for Serenity in 2016;

Replaced AC and furnace, the new one (American Standard, same as the Trane brand) works like a charm, also bought two mattresses (one from Mattress Firm local store, another one from US-mattress online store). Long term it’s going to save some money on electricity as this one is more energy efficient.

Workout, exercise, swim
I have been doing swimming for a few years at JCC (both Chesterfield and Creve Coeur locations), as I live near the Creve Coeur location, and I worked near the Chesterfield location last few years. That has been changed as the new baby (July 2014), and new job requirement (June 2015). I have been using UP Band, Fitbit app on iPhone 5s, and in June this year I got Fitbit Charge the same time I changed job. Trying to get 10,000 steps per day per the recommendation. Still try to get some swimming as time permits.

I started walking in the trails at Laumeiers Sculpture park since last Winter: trying to breath some fresh air during lunch break at work. The new place does not have a nature trail like the Sculpture park, but it does have a one mile paved trail. It’s good enough for me. I usually walk at lunch break, when weather permits. Otherwise I would walk the stairs, as not good as outside, but it does the job. One thing I learned over the years is we need to take care of our own health while working, because at the end of the day, we need that to provide for our family, also to enjoy things (this hits home especially whenever I get sick). There is an excellent “Under the Radar” podcast on this ergonomics topic. I recall at my old work place, my coworker had surgery on the capal-tunnel (a common injury from using too much keyboard or mouse). Back pain is also common among office workers (sitting too long). The walk/stretch from time to time is a good way to prevent/reduce that.


Continue reading 2015 Year In Review

Posted on 3 Comments

2012 Year in Review

Reading Time: 3 minutesI took this cue from Kurby Turner, the independent Mac/iOS developer, as I think it might be helpful to reflect a year’s work, life, effort, etc. As the old Chinese saying goes “Ji Wang Kai Lai” (learn from past, and look forward to the future).

New job: Software Development
Today is my one year anniversary at my new employer. Looking back, from the initial ramp up to more comfortable work on my own pace, and then deliver the first iOS (iPad) app to the field, back end work, report work and support. I feel good about my effort and the support I got from my coworkers. Sometimes my wife will ask me “why it took so long for you to complete a project”? Because it’s not trivial to do it.

I also wrote a few blog posts on iOS app development, and the back end (.Net) web service. I plan to do the same as times goes. Generally speaking, now I have more confidence doing customized app development, full life cycle, and from front to back end (all tiers).

Our daughter goes to the Hope Montessori Infant Toddler Community at Creve Coeur (off Manson road, near Olive Blvd). We are truly blessed with the teachers and staffs at the Hope family (I consider them as family, both adults and children, because sometimes they are better than family 🙂 . Serenity (Yoyo) learned English and all kinds of things there, which laid a good foundation for her future. For us, we learned parenting lessons there. Sometimes I wonder how much quality time I spent there, from afternoon pickup, to field trip, to social (work-day, Fettuccine, Montessori and Vino, the FMV movie). We watched the FMV movie with great fun, my wife and my friends (couple) did not attend the FMV event, and really enjoyed the movie after I showed them.

We did one family vacation, and I had 2 business trips in year 2012. We went to Orange Beach, Alabama in the Memorial Day weekend, with Chinese friends. We drove there. It’s funny Yoyo would not go to bathroom on the road, she wants to use bathroom in the hotel or condo (destination). For the business trip, I visited 2 mines in West Virginia, the 2 hours I spent in underground mine is both interesting and a bit unsettling. That’s the first time I visited mines (both surface and underground). In November I visited Las Vegas, stayed in Palazzo (Venetian), which I stayed 3 years ago when I attended AU (Autodesk University, the developer/user conference) in 2009.

Personal Finance
As I wrote this post, I found I made both good moves and bad moves on this topic. I did well in 401k accounts (because I did nothing). But not in the Scottrade brokerage and IRA accounts (because I tried to do too much). Overall I still did ok, because majority of my assets are in 401k (both existing accounts and new account).

Today (01-03-2012) as I listened to Charlie Ellis on the Consuelo WealthTrack podcast, I can not agree more on one comment from Charlie: we all strive to be above average in school or at work. In investing being average is actually not too bad. I understand what meant: 80% of mutual funds perform below average (the index), hedge fund and individual investors are not doing better. So in other words, being average is actually in the top 20% 🙂

Continue reading 2012 Year in Review

Posted on 1 Comment

Felt blessed: looking back at 2010

Reading Time: 2 minutesIt’s Christmas eve 2010. Baby already fell asleep. Wife is tweaking her new Toshiba R705 laptop, and I was reading some Navigation controller stuff while watching TV (PBS Christmas program, KMOV news).

This year is obviously one of the most significant years in my 13 years stay in this country. In early March, we got a baby girl. Before that I changed job after 15 months stint at a decent size software company. Things did not work out as good as I thought in Oct/Nov 2008 (the middle of financial crisis). The good thing is, after some hard work and luck, I got a new job at local software company, and got to do what like to do.

In July I signed up the Apple iOS developer program, paid the $99 annual fee and became more seriously on iOS app development. I have thought about it and bought Macbook and iPhone 3G back in Jan 2009, but between my old job, our expectation of baby, and my shear inaction, I did not get to finish the Beginning iPhone Development book in 2009. I started fresh again in 2010 (got the new iPhone 3 dev book, for one). Since the birth of baby, I felt more and more the importance of spending time with family. I think iOS app dev gave me a decent shot at this desire. In middle Oct. I went to the city of brotherly love Philadelphia (again, I went there in May with my in-laws), for the Voice that Matter iPhone dev conference. I think I learned quite a few things there, besides technology, there is design and the business of going indie, which both are important to me (being from developer background).

Looking forward, baby is growing much faster than I thought, especially since she started to crawl and stand. She likes my gadgets (iPhone, iPad, and macbook), much more than her own vtech laptop. I hope I can spend more time with her before she grows up.

Posted on Leave a comment

How to find a job in this difficult market?

Reading Time: 2 minutesParticularly in the IT (software development) field. Obviously the No. 1 thing is “never give up”. I started looking about 9 months ago when I felt “the need to look”: both for defense (fear of lay off) and offense (opportunities better matching my interest and skill). I had to admit finding a job is not an easy thing in this environment. Why look for another job while one still has a job (besides the main reason behind the change)? The simple answer is, only when a person still has a job or other sources of income, he/she will have the space to look for something better.

job search logo
(Source: Brandies U.)

Strategy and Job search sites I used

Continue reading How to find a job in this difficult market?

Posted on Leave a comment

China Investment Co. is hiring

Reading Time: < 1 minuteHere is their web site. Unfortunately the decriptions are in Chinese, and they require resume in Simplified Chinese. The positions are based in Beijing.

Thanks to my wife who found their Ads at WSJ yesterday. It says apply at their web site: . The application deadline is June 28. As name implies, most are financial related postions, but they do have a few law, IT postions as well.

China Investment Co. pic

If you never heard of China Investment Co., they are China sovereign wealth fund who invested in Blackstone (pre-IPO; NY Times) and Morgan Stanley (2007/9; ChinaDaily).

Posted on 1 Comment

How to find a job in the recession?

Reading Time: < 1 minuteCompiled from various sources in last few months. I read those articles first from Yahoo Finance career-work section. A lot goodies there.

(AP) Even in a recession, some companies are hiring. Quote:

Help wanted: pharmacists, engineers and nurses. Believe it or not, even some banks are hiring, at least for their technology teams.

(CNN Money) They are hiring.

(Money magazine) Smart job strategies to avoid layoffs.

Continue reading How to find a job in the recession?