Showing posts with label It takes a village to raise a child. Show all posts
Showing posts with label It takes a village to raise a child. Show all posts

Sunday, December 17, 2017

It is time to say great thanks

Dec. 17, 2017

Introduction


I start to write a series of blogs related to "It takes village to raise a child". As a software programmer, I notice that I have developed so much confidence in writing clean code, readable code, self-documented code in 2017. People are so busy but they still find a little time to read my blogs. And then they are so busy but they like to share their experience with me through short phone conversation. It touches my heart every time I meet in person and talk through the phone. I feel that the world is so connected and I am making new friends. And also I start to understand the programmer job is actually people oriented, I have to reach out for help.

So it is my turn to write some thank you note to all the people working for various companies in 2017. Without those encouragement and feedback, I may be still the same quiet hard working lady, write coding blog every day, but now I am happy and healthy, make small progress every day, and  fully enjoy the beauty of coding.

My argument is this. Act like a super talent programmer, and then always find the joy to review the code, write a better one with more efficient, much better coding style, and also with advanced design of object-oriented. Now I spend less time to debug my code, and I always find myself to write a simple code.

Thank so many companies in 2017 to help me grow so well as a software programmer.

Amazon - January - Make my January so special and so challenging.

Google  -  February - Make me so excited, even though I experienced first car accident in my life in the same day, I learned to get more prepared for worse or for good thing in life.

Vision Critical - May -  Make me feel so special.

Copperleaf - I understand that how math can change the world, specially in financial industry

Refdash.com - I understand that every mistake I make in one hour mock interview, I also make  another great mark to show my progress.

Pramp.com - This is such a great company and I have chance to meet all over the world top talent people.

Amazon - July -  I worked so hard to push the limits to advance my coding skills.

Global Relay - September, Operating system question can be so challenging and great time to think about.

Microsoft - October - It makes me so excited to know how a start-up runs in the big company. So exciting to know the company and an engineering manager.

Amazon - October - I really like to think about work when I took vacation in China, I will try to compete again.

Stackoverflow - November - I always get the best advice and find my weakness in my skills.

Tuesday, June 20, 2017

Can mock interview make difference? Continued

June 20, 2017


Introduction



"It takes a village to raise a child". Related to improve algorithm and data structure, Julia learned that it also takes the hundred people to help her learn depth first search using recursive function.

As a classical depth first search algorithm, Julia worked on the Sudoku algorithm in 2015, she collected over 10 solutions; She thought that she mastered the sudoku algorithm in 2015, actually not! How did Julia find out the fact?

Julia practised Sudoku solver in April and May of 2017. First experience is in April, the peer complained that Julia forgot to write a base case in her first writing and gave a rating of 3 with comment "Do not know how to write code", and then second one is in May, the peer coached Julia to set base case first thing in the design, do not write any small function, keep it short as possible, quick as possible. From those two hours to work with two different people, Julia learned to stay humble, learn and quickly fix her learning issues. With those two mock interview experience, Julia learned the Sudoku solver in totally surprising ways. Learn from people from recent graduate and senior developer, recent graduate explained what to work on through Google onsite experience, and the senior developer showed her later in second meeting with more tips.

June 18 and 19 weekend, Julia worked on the expert level algorithm called path matching, she scored 0.46 out of maximum score 100, she worked on over 5 hours but she learned depth first search again through the problem solving. Julia likes to solve the problem first, it does not matter if she scored less than 0.5%. She likes to get expert level algorithm problem solved first.

Julia starts to meet a person a day to work on algorithm problem solving, she also pays attention to peer's curiosity level on algorithm and problem solving, how good the peer can influence her through one hour conversation. Today she was surprised that the peer shared her link to solve C# problem from stackoverflow.com. Also the peer also typed the test case for her, and then Julia found out that her code had a bug, wrong output.

Julia learns how to do whiteboard testing and she did one today as well. But she missed the bug. So she felt that the peer is much better a tester and maybe she is a project manager working somewhere. It is the second time Julia worked on the algorithm.

A research talk 



The mocking experience is short, only one hour, the peer chose to turn off the video. But the quality of the work is very impressing, Julia found out that she is lacking of this kind of preparation for the mocking experience. 

Julia worked on extra 10 minutes to use Microsoft visual studio to find the bug. It is an excellent experience. 

C# code is here

In the line of 44, the new variable should be declared for each key value pair of dictionary. It is called nextPrefix. Do not change the function argument prefix, based on the least astonishment principle.

So share the advice Julia got today.

-very good communication, i liked how you explained your thought process thoroughly -got to the answer fast but still made sure to test before writing code

it's ok to ask the interviewer if you can look up inbuilt/library functions for the language if you need to, that might be helpful sometimes.