Skip to content

Commit c34d622

Browse files
author
freemanzhang
committed
add checklist for onsite interviews
1 parent 6ec234b commit c34d622

File tree

1 file changed

+29
-12
lines changed

1 file changed

+29
-12
lines changed

README.md

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@
1212
- [Solve follow up questions](#solve-follow-up-questions)
1313
- [Interview mindset](#interview-mindset)
1414
- [Understanding what interviewers really wants](#understanding-what-interviewers-really-wants)
15+
- [Checklist](#checklist)
16+
- [Things to be careful.](#things-to-be-careful)
17+
- [Phone interviews](#phone-interviews)
18+
- [Onsite interviews](#onsite-interviews)
1519
- [Interview mistakes made in past](#interview-mistakes-made-in-past)
1620
- [Whiteboard coding pros and cons](#whiteboard-coding-pros-and-cons)
1721
- [Practice mindset](#practice-mindset)
@@ -84,7 +88,6 @@
8488
- [Internal structure](#internal-structure)
8589
- [Heapify](#heapify)
8690
- [Sift up/down](#sift-updown)
87-
- [PriorityQueue](#priorityqueue-1)
8891
- [Improve built-in remove O\(n\)](#improve-built-in-remove-on)
8992
- [Lambda expression as comparator](#lambda-expression-as-comparator)
9093
- [Top K problems](#top-k-problems)
@@ -113,7 +116,7 @@
113116
- [Detect cycles inside directed graph](#detect-cycles-inside-directed-graph)
114117
- [Trie](#trie)
115118
- [Use case](#use-case-1)
116-
- [Trie definition](#trie-definition)
119+
- [Trie definition and common tasks](#trie-definition-and-common-tasks)
117120
- [Algorithms](#algorithms)
118121
- [Math](#math)
119122
- [Random](#random)
@@ -344,6 +347,29 @@
344347
| Write code to solve problem | <ul><li>Jumps into writing code</li><li>Awkward silence</li></ul> | <ul><li>Would I want to work with them everyday</li><li>Have they actually written production grade code</li><li>What do they do when stuck</li></ul> |
345348
| Maybe you could try this ... | <ul><li>Take advice without serious thinking</li></ul> | <ul><li>Do they think independently</li><li>How fast can they absord new information</li><li>Do they take advice/directions well</li><li>Do they learn quickly and run with it</li></ul> |
346349

350+
#### Checklist
351+
##### Things to be careful.
352+
* Do not just give "yes" or "no" answers. Limit initial explanation to short summaries and allow the interviewer to ask follow up questions.
353+
* Your tone of voice and word choice. Interviewers use voice to judge how believable you are. Posture really have impact on your mind.
354+
* Eye contact and shake hands. Say thanks to interviewers at last.
355+
356+
##### Phone interviews
357+
* Test the online coding environment.
358+
* Make sure your cellphone has enough battery.
359+
* Have a copy of resume in front of you.
360+
* Take notes and write a follow up thank you email with details from the discussion.
361+
362+
##### Onsite interviews
363+
* Show up 15 minutes early and have the interviewer's phone number for last minute changes.
364+
* Things to bring with you
365+
- Identity card.
366+
- Bring extra copies of your resume with you - for the interviewer and your own reference.
367+
- Notes on the detailed schedule. Put interviewers' names and interview topic on a sticker and bring it with me.
368+
- Tea/Coffee.
369+
- Whiteboard pen and erasers.
370+
- A piece of pen and paper. Take notes when an interviewer speaks to help yourself focus and ask more specific questions.
371+
- Computers for last minute warm-up.
372+
347373
#### Interview mistakes made in past
348374
* Too nervous: When I become too nervous, I just could not speak. This is the number one red flag during interviews. No one wants to work with people who cannot speak.
349375
* Ignore first impression importance: Don't smile/handshake/look into interviewers' eyes.
@@ -773,8 +799,6 @@ class FinalizeExample
773799
##### Use Weak reference
774800

775801
```java
776-
package com.pluralsight;
777-
778802
import java.lang.ref.WeakReference;
779803

780804
public class Main {
@@ -816,8 +840,6 @@ class Person {
816840
- Meta data goes away
817841

818842
```java
819-
package com.pluralsight;
820-
821843
import java.util.Date;
822844
import java.util.WeakHashMap;
823845

@@ -879,8 +901,6 @@ class PersonMetaData {
879901
- Reference object added to the queue
880902

881903
```java
882-
package com.pluralsight;
883-
884904
import java.io.BufferedReader;
885905
import java.io.IOException;
886906
import java.io.InputStreamReader;
@@ -954,8 +974,6 @@ class PersonWeakReference extends WeakReference<Person> {
954974
- Not sure when they will be called
955975

956976
```java
957-
package com.pluralsight;
958-
959977
import java.lang.ref.PhantomReference;
960978
import java.lang.ref.Reference;
961979
import java.lang.ref.ReferenceQueue;
@@ -1620,7 +1638,6 @@ public void heapify(int[] A) {
16201638
}
16211639
```
16221640

1623-
#### PriorityQueue
16241641
##### Improve built-in remove O(n)
16251642
* Built-in implementation remove() method for priorityqueue has O(n) time complexity.
16261643
- O(n) time is spent on looping through entire queue to find the element to be removed. O(logn) is used to remove the element
@@ -2287,7 +2304,7 @@ private boolean hasCycle( GraphNode root, Set<GraphNode> isDiscovered, Set<Graph
22872304
- Space complexity: when storing a list of words (Especially when these words share prefix), using trie save space.
22882305
- Time complexity: to compute hashcode for a string, O(n) time complexity; find/insert a string in a trie, the same
22892306

2290-
##### Trie definition
2307+
##### Trie definition and common tasks
22912308
* Depending on the size of charset, children pointers could be either stored in a bitmap or hashmap. Although slightly suffering performance, hashmap implementation is more concise and generic.
22922309
* Common tasks such as search() and startwith() can be implemented in a similar way.
22932310

0 commit comments

Comments
 (0)