Categories
Fun kids

Family photos

Reading Time: 3 minutes

Family photos of my grandma, my father, me, and my 2 older brothers. This was taken by my father’s friend in middle 1970s (1976?). It appears both my 2nd brother and myself did not start school yet, as we did not have the red collars on our necks: a bit like boy scouts and girl scouts here. It was in the courtyard of our family home in Xiaomeng, Ningbo, Zhejiang province. I stayed and studied in the village elementary school until the very beginning of grade 5. My grandma passed away when I was in the senior year of high school (late 1988). My mom was not in the picture because she was working. Photography was a luxury at the time as China was an impoverished nation at that time. Bicycle, sewing machine and watch were the 3 luxury items young couple like to have when they getting married at that time. Now it’s the house (apartment, which is unaffordable in Shanghai, Beijing and other major cities). I am guessing I was 5 at that time, my brothers were 7 and 9 years old. Now I am probably more than 15 years older than my father on the picture.

I think the first picture is 1976 (they are one picture, I snapped the original picture using my iPhone a few years ago when I visited my childhood home). I added another picture which is June 1961: I saw my uncle there (mom’s big brother, he passed away 2 years ago, he was 87 years old). I found that picture online (https://www.sohu.com/a/243472385_467312) when I searched for my uncle’s name and the school he was the head (Baifeng middle schoo. He was 30 years old in that picture).

My uncle / my mom’s big brother, Hu Jinyu 胡金雨, is shown in the second row (counting from left, the fourth person, I can see some resemblance with my mom / maternal grandma). He is the first head of Baifeng Middle School.

A kind of funny episode involves my uncle and me

说说这个典故:高考前那个晚上,我失眠了。我可能是半夜醒来,就睡不回去了。我知道大舅🈶葡萄酒🍷,我就打开他的葡萄酒喝了不少,想着帮助睡眠,实际上没啥用。这事我外婆知道,因为她过来做我高考的后勤保障(烧饭),平时她一般是跟小舅住的。后来,我大舅当然发现了。他倒不是心疼他的葡萄酒:我现在想想他应该是有点后怕 – 因为万一我因为喝酒高考考砸了呢?因为我是农村户口的,我两个哥哥已经考出农们了。后来,我每次去大舅家,只要有其它亲戚在,他都会说说我”偷喝酒”的事 🙂

Below English was translated by Google translate

Let me tell you this story: The night before the college entrance examination, I couldn’t sleep. I might wake up in the middle of the night and couldn’t go back to sleep. I knew that my eldest uncle 🈶 drank wine🍷, so I opened his wine and drank a lot of it, thinking it would help me sleep, but it actually didn’t work. My grandmother knew about this because she came over to provide logistical support (cooking) for my college entrance examination, and she usually lives with my younger uncle. Later, of course, my eldest uncle found out. It’s not that he felt sorry for his wine: now I think he should be a little scared – because what if I failed the college entrance examination because of drinking? Because I have a rural household registration, my two brothers have already passed the examination to become farmers. Later, every time I went to my eldest uncle’s house, as long as other relatives were there, he would talk about my “secret drinking”.

Categories
Software development Technology

Couple agile tools

Reading Time: < 1 minute

Point Poker: free (accepts donation). A nice pointing tool, click start session, for collaborators: put in name, and join the session.

Fun Retro: there are free and non-free choices. The free ones are public. It’s a bit like Trello. For that matter, if someone likes to keep it private, I think Trello is a good alternative: just put in swimming lanes such as liked, learned, lacked, longed for and action items

scrumpoker-online

Categories
Career Software development Technology

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.

Websites

Below two the most popular websites now.

Indeed: note Indeed.com is No. 1 in terms of the number of jobs. I found my last job and current job via Indeed.com. 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.

Recruiters

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 filtered.ai. 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 filtered.ai 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 filterer.ai 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 (Update: 03-01-2023 no longer available, here is alternatives programiz, and jdoodle) 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 codepen.io (more links for codepen clock 1 mine and clock 2 Dan Abramov) and jsbin.com .

(10-31-2022) Found another website codio (may not be free), today I happened to use it for Python coding as I was helping a high school student on AP CS course (STEM focused high school in LA area, it seems they require AP CS as a course).

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.

Categories
advice and tips

Layoffs

Reading Time: 3 minutes

This piece is a continuation of the piece I wrote last night about the economy and the mass layoff. Layoff is just a way of life in corporate America (note this includes non-for-profit org as well). There are couple things in the US about layoff that makes life harder: 1) The health insurance is usually associated with employment for lots of white collar jobs, losing a job also usually means the loss of health insurance of the employee, let’s say if that employee is the breadwinner of the family, that also means the family will lose health insurance. This is both costing money and inconvenient. 2) Unemployment insurance: usually it pays between $350 to $600 per week (depends on the state, living cost etc), the duration (usually 6 months) usually depends on state too. These are practical things or consequences, some employers do offer some severance pay (but usually most US employers don’t have generous severance pay). So in this scenario, the money let’s say $2400 a month is not enough to cover both health insurance for a family and a mortgage (or rent), not to mention food and car payments. Please note there was a survey last year that 40% of American does not have $400 in the bank.

Manage Emotion

There is other factors that come to play as well, in many cases those factors are actually more significant compared to the money side of the things. Let’s assume this person or family has enough money to survive before the impacted employee finds a new job. Let’s just say the other spouse brings enough bacon home. The main thing I want to say, from my personal experience is the stigma, or the rejection feeling from the layoff experience. I have seen in couple cases, adult (grown up) coworkers, cannot stop crying when they were asked to leave. I think maybe it’s the first time they experience this. Fortunately for me, I have seen these movies before personally experiencing something like this. There could be signs (looking back), such as the announcement of potential layoffs from CEO, or the secretary (admin assistant) looking away when I looked at her a few days before layoff (again this was a small company, and they did not do things large orgs do: their ways of orchestrate is more sophisticated, and usually not given away quickly. It’s very hard to overcome the rejection feeling, my personal experience this is a bit like dating a girl, and being rejected. Usually only time can heal to some extent, one may say “move on to next girl friend or next job”, but for some people I think this feeling never truly or 100% goes away. But it’s something we need to manage or control. Because those ill feeling is not good for health. One bible verse I like on this topic is: And forgive us our trespasses as we forgive those who trespass against us (Mt 6: 12). I recall seen a passage on a friend’s desk the day after I found out my contract ended earlier I thought: I was expecting to convert to full time employee after certain time.

My suggestion

The most useful advice I received once is the lady who is a consultant hired by the employer, and her job is help transition (polish resume, job search strategy etc). I actually did not go to their sessions. But on that fateful day, the thing left me impression is “take care of yourself first“. Basically step back, recoup, take some rest, before restart. Usually I was not in that type of fortunate position (again the breadwinner role in my family). we usually do have some savings but don’t want to burn the cash too fast. I recall in 2011 when I experienced this the first time, I still went to the Bread Co. for dinner (to go), and I think we had about 40k in the bank, but feel a bit uneasy about spending $20 or $30 for family dinner: myself, my wife and one year old daughter. In the most recent experience, due to my age, I feel the age discrimination is prevalent (it’s illegal in the US, but many places practice this anyway, because it’s hard to find evidence for candidates). Another reason in the job search situation, it’s usually buyer’s market, unless the labor market is unusually tight or hot.

Ironically, due to my new job, I have interviewed (mostly tech screen) many candidates for developers, or architect position since last July. I will write up some job search strategy, and interview tips in my next series. Do remember another tip: this is something I heard from a wise gentleman (law professor), he said “it may not necessarily a bad thing for you, as it gives you some new perspectives and look for new things otherwise you don’t proactively go out and search”. So there is that: a wise perspective.

Categories
advice and tips

Happy Labor Day

Reading Time: < 1 minute

I took some pictures of “wish healthcare workers well” in my neighborhood. Tomorrow may 1st is international Labor Day. I understand the US does not observe. I wish the healthcare and all front-line workers well. We live in an unprecedented time indeed. This afternoon I got a call from a friend who worries about potential layoffs. I understand: I have been there, both the worrying part / seeing coworkers being paid off, and the actual layoff part. Again this time the US has lost 30 millions of job since pandemic, out of 150 millions of total jobs. 50% of the people know someone either from family or friend that lost job. My wife and my jobs are safe so far, but we know in this environment nothing is given or forever. We can only control the things that we can control: we sold the condo on March 19. We try to do our jobs as much as practical at the same time, watching our little ones. And I have some plans for my post corporate programmer career as well, if it comes to that. Wish all is well and together we will overcome this pandemic. China with 1.4 billion people has this mostly under control, so can the USA with 1/4 of population, 350 million.

Categories
Software development

GCP Cloud SQL hibernate issue

Reading Time: < 1 minute

It complains the table does not exist when in the data.sql we were trying to insert some data. Turns out the table did exist but the default table name was lower case, while we were using Upper case both in the data.sql and the java hibernate entity. The fix is to add one line in the application.properties file. Note this is a spring boot app. Also note the data.sql was used to load initial data in spring boot.

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

I found out about it as I first work around the issue by doing something like shown in this article. But I was thinking this was not right. I was able to find out once I connect to the cloud sql db via proxy. Also refer to this stackoverflow discussion. 

DROP TABLE IF EXISTS employee;

CREATE TABLE employee (
  empId VARCHAR(10) NOT NULL,
  empName VARCHAR(100) NOT NULL
);

Also Spring Data

Spring data REST reference: this is by default will be shown in the root of the website.

the key seems to be adding this in pom:

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-rest</artifactId> </dependency>

Last but not least, to disable the end points or to show the available ends points for spring boot app, we can use actuator.

management.endpoints.web.exposure.include=mappings

We can show the end points at:

/actuator/mappings

Categories
401k and Personal Finance

Weekend thoughts: Zoom and Math

Reading Time: 2 minutes

For most Americans, Zoom meeting probably becomes the hottest potato in last few weeks, as we saw the pandemic situation got worse: New York, New Orleans, Detroit, Dallas, and so on. I started to using Zoom about a year ago when I started my new job, and the product experience was good. Note I have used many meeting software in the past, from Webex, Skype, GoToMeeting to google hangout, Slack, Microsoft Teams. Before Zoom GoToMeeting was my favorite. Skype probably is the worst. This is not a scientific comparison, mostly my gut feeling. Zoom is pretty standard in technology companies as well, even for interviewing (no more airplane ride, and uber ride, and hotel stay). Couple more points on Zoom. Zoom is not perfect in terms of security and privacy. And yours truly owns a few shares of Zoom. Last but not least, I do like Zoom’s founder, Eric S. Yuan (wiki English; wiki Chinese). It looks like he came to the US the same year I came. He is very much grounded person, even though is a billionaire now. I think he came from a humble background in China, which is common in China in those days (he was born in 1970, one year earlier than me).

But my point here is while Zoom is important, we should not equivalent zoom = learning or communicating or working. For that I am very much appreciative of this tweet by @DHH.

A more important task, in nowadays’ always-on culture, is the basics: reading, writing, thinking and so on. Otherwise we will end like this. Everyone makes mistakes, my point is not that Brian Williams makes stupid math mistakes. It’s more the issue two people talking about the talking points without realizing that their math is totally wrong. This is more issue in the America right now: the guy or the girl who have the microphone (in some sort of public facing position) usually don’t know what they are talking about. If in doubt, just look at the white house.

Last but not least, here is a stimulus check calculator developed by OmniCalculator.

Stimulus Check Calculator

Categories
401k and Personal Finance

Financial crisis and wall streets movies

Reading Time: < 1 minute

Hank: about Hank Paulson, available at Netflix

Too Big To Fail: on Amazon Prime

I am only curious about Wall Street and movies by Michael Lewis

Categories
401k and Personal Finance

Technology, distance learning and my meltdown

Reading Time: < 1 minuteI was thinking about this as we are at least expecting one month of distance learning for our two kids (K and 4th grade) due to the lockdown of Coronavirus pandemic. Ladue School use google suite and I think they may use google classroom for some or most teacher / students interactions. I was thinking about Zoom as Zoom recently announced free usage K-12 due to the pandemic. Many tech companies have similar initiatives. Not sure how my two kids will handle this. They are not super confident or outspoken in the class: I was hoping they could be a bit more confident (or a lot more) and be a bit more assertive.

This remind me one thing when I was already graduating from middle school. I called my classmate, at that time it’s not the direct phone, it’s like operator assisted phone. The classmate came online, and I did not know what to say (I was shy at the time too), and just freaked out in the end. I don’t think I would freak out in person. So there is my 2 cents on the distance or online learning. It may create some challenges to students who may not be comfortable with microphone or public speaking. For myself, I tried to improve myself on this aspect, I made some progress: and it was still working in progress. 🙂

Categories
401k and Personal Finance

I love Italy

Reading Time: < 1 minuteThe news coming from Italy is heartbreaking: Italy lost nearly 800 people in one day due to Coronavirus. Overall Italy lost more people than the epicenter of outbreak in China’s Hubei province (Wuhan is the capital city of Hubei, with 11 millions people). I think Italy has a population comparable to Hubei’s. In my high school years, a while ago, I watched quite a bit Italian soccer league, from Maradona to other Italian and International players. Milan has two teams: AC and Inter. And I know a little about Italy from the world history class. They are some explanations of the higher death rate in Italy. I hope things can get better from here. Besides the difference in terms of social distancing and lock down, Wuhan / Hubei did have one advantage that Italy does not have: that is China poured help from many other provinces: in total there were more than 40,000 doctors and nurses coming from all over China to help, that was about 10% of the relevant healthcare resources in China. Here is an article talking about the people in Wuhan sending off the medic teams leaving Wuhan when the mission is completed.  This kind of arrangement is difficult to accomplish in Italy, if not all possible. But note China did send some help in terms of advisors (doctors) and medical supplies to Italy, Iran, Spain and other countries (Serbia, Czech), also neighboring Asian countries too.