How to get a job offer

Based on one hour session with Dylan from the senior class.

Dylan is one of the first in the senior class to receive and accept a job offer. He must have something special.

The employers looked at the following things:
– his personal project.
– his group project
– his personal website.
– his GitHub profile

Personal website:
– His website is fantastic. Hence, whenever the employer wants to see the portfolio, he sends the website to impress them.
– It has to be responsive. Employers would literally resize the window to check.
– A good model is

Personal projects:
– Working and pretty/presentable
– Not necessarily the most complicated project
– The other extreme is the technical challenging ones, such as building a WebRTC framework or build a REST interface to Mongo(?)

Group projects:
– Understand all the code other people wrote.
– Implement a couple of design patterns such as observer or mediator in the project.
– Make sure the code is nice / clean / presentable to employers

GitHub profile:
– Activities are important. Similar to your undergraduate GPA, it is hard to cheat on your commit activities.
– Showcase a couple of the projects

Other recruiting channels:
– AngelList
– LinkedIn (change your title to software engineer)

High level thoughts:
– 50% technical details
– 50% like-ability

Practical stats:
– all interviews coming from hiring days
– 5+ onsite interviews with more voluntarily declined
– To nail the 5 minutes speed dating in hiring day, be personable, smiling. A lot of conversations end up being non technical. Don’t underestimate the people you meet since he might become your biggest advocate inside the company.

Phone interview:
– 50% tech depth
– 50% personable

Onsite interview:
– 3-4 hours each, one hour per person
– All coding on whiteboard
– Talk through the coding process
– Practice writing code on the whiteboard
– Be proactive. Reach out and not necessarily aggressive.
– When struggling, don’t get frustrated. Ask for help.
– After making a mistake, admitted it.

Other thoughts:
– Meteor.js is cool to know. However, it is so new and so powerful that few companies are using it in production. Also, employers might not take you seriously if you build a project with Meteor. Meteor is definitely the go-to weapon in a Hackathon.
– When asked about the expected salary. First, avoid giving a definitive number, saying “average market rate / what is competitive”. Second, if pressed again, referring to a high anchor point, “Peter in our previous class got an offer of $125k with signing bonus. While I don’t expect your company to offer the same salary, it does give us some range to think about.”

Common interview questions:
– Write SQL to join two tables
– Explain CSS box model
– Promises
– Implement promises in jQuery without using .done() or .success()
– jQuery events
– Make a drag & drop modal without using any library. Hint: mouse_down -> mouse_move -> mouse_up
– Backbone
– Some angularjs

May or may not be true:
– People likes Ruby but don’t like Rails
– CoffeeScript is ok

Example – what is the output for the following program:

var a = 8;
var f1 = function(){
  var a = 7;
  var f2 = function(){
    var a = 6;

One thought on “How to get a job offer

  1. Pingback: D2: Closure, hoist, and more | Shanshan Zhu

Comments are closed.