Interviewing for FE

January 19, 2020

http://jemyoung.com/interviewing

https://josephg.com/blog/3-tribes/

application

What do you like about your current job?

What are you looking for in your next job?

network | talks/meetups | linkedin | github | webpage

Reviewing resumes:

  • which role does this person fit?
  • what sort of experience is required?
  • is there bias in selection process?

initial call

  • what do you do currently?
  • what are some projects you've worked on recently?
  • what are you looking for in your next role?
  • why do you want to work for _?
  • what is your availability for the next steps?

Interviewer:

  • How many steps in interview process? How long does it take?
  • How big is your engineering team?
  • which team would I be interviewing for?
  • what is the culture like?
  • who are your competitors?
  • what sort of projects would i work on?

pre-screen

  • what is the difference between const, let and var?
  • explain prototypical inheritance
  • what is 'this' mean in javascript?
  • what is the data structure of the DOM?
  • what is a stack and a queue? how would you create those data structures in js?
  • How can you tell if an image element is loaded on a page?
  • What is call() and apply()?
  • What is event delegation and what are the performance tradeoffs?
  • What is a Worker? When would you use one?

code test

  • Make your code as readable as possible
    • Comment your code
    • Don’t over complicate the architecture
  • Don’t import too many libraries
  • If you have time, add unit tests
  • Ask questions!

interviewer:

  • Make the problem as straightforward as possible
  • Be honest with the time constraints
  • Have a code review checklist
Average Good Exceptional
Application starts properly. Code is well documented. Created unit and integration tests.
3/5 requirements complete. All requirements are complete. Modular architecture designed for extensibility.
No errors are thrown in the console.

Big 'O' Big omega (Ω) - best case -> Ω(1) Big theta (Θ) - average case -> Θ(n) Big O () - worst case -> O(n)

phone screen

  • Ask questions
  • Talk out your solution
  • Get comfortable with the environment

interviewer

  • Are you in a quiet area?
  • Is the problem well worded?
  • Does the candidate know what the requirements and restrictions are?
  • Did you leave time for questions at the end?

on site

  • Practice writing code without a computer
  • Go over general sample problems
  • Ask your friends to test you
  • Try to ask what the style of technical questions will be