Interviews

Online Resources

  • general
    • education history
    • work history
    • interests
    • english
  • software engineering
    • scm: svn / git / hg
    • tests
  • web
    • http
    • rest
  • data stores
    • sql: postgres
    • redis
    • cassandra
    • graph databases
  • networking
    • ssh, certificates
    • nginx
    • load balancers

GENERAL QUESTIONS

  • Ask the interviewee to pick an algorithm THAT THE INTERVIEWER HAS USED and discuss it.
  • What is the time complexity? When did they use it? What would be an alternative if any?
  • Pick a problem, either one of your own or from project euler or atoi and have the interviewee code it
  • See if they volunteer to test their code
  • Ask them to test the problem with good and bad data
  • Can he show you any of of the applications that he has worked on and explain them?
  • Is he passionate about programming?
  • Does he seem to be a fast learner? Will he be OK with doing things the Inaka way (ex. git, pivotal)?
  • Does he understand the service business? Does he like working with clients?
  • How is his overall attitude? Is he easy to talk to you? Does his personality fit with the Inaka team?
  • Is his English at least intermediate?
  • Talk about his experiences in programming so far. What does he like? Not like?
  • Can he show you any of the apps that he developed? Can he explain the process? The challenges?
  • Why is he looking for a new job?
  • Do you see him being able to work independently on projects?
  • Can he talk comfortably and with technical expertise about his past and current projects?

ICEBREAKER

  • What was your first job?
  • Have you ever met anyone famous?
  • What are you reading right now?
  • If you could pick up a new skill in an instant what would it be?
  • Who’s someone you really admire?
  • Seen any good movies lately you’d recommend?
  • Got any favorite quotes?
  • Been pleasantly surprised by anything lately?
  • What was your favorite band 10 years ago?
  • What’s your earliest memory?
  • Been anywhere recently for the first time?
  • What’s your favorite family tradition?
  • Who had the most influence on you growing up?
  • What was the first thing you bought with your own money?
  • What’s something you want to do in the next year that you’ve never done before?
  • Seen anything lately that made you smile?
  • What’s your favorite place you’ve ever visited?
  • Have you had your 15 minutes of fame yet?
  • What’s the best advice you’ve ever heard?
  • How do you like your eggs?
  • Do you have a favorite charity you wish more people knew about?
  • Got any phobias you’d like to break?
  • Have you returned anything you’ve purchased recently? Why?
  • Do you collect anything?
  • What’s your favorite breakfast cereal?

THE JOEL TEST

  • Do you use source control?
  • Can you make a build in one step?
  • Do you make daily builds?
  • Do you have a bug database?
  • Do you fix bugs before writing new code?
  • Do you have an up-to-date schedule?
  • Do you have a spec?
  • Do programmers have quiet working conditions?
  • Do you use the best tools money can buy?
  • Do you have testers?
  • Do new candidates write code during their interview?
  • Do you do hallway usability testing?

ERLANG

Erlang interview questions (Phone interview).

  • Can you describe a time when your work was criticized?
  • Tell me about an important issue you encountered recently.
  • What are you expecting from this firm in the future?
  • Tell about a time that you had to adapt to a difficult situation.
  • What is your greatest achievement outside of work?

Erlang interview questions (Basic interview).

  • A team experience you found disappointing.
  • Do you work well under pressure?
  • Do you think you are overqualified for this position?
  • Have you ever had to deal with conflicting deadlines?
  • Do you prefer to work independently or on a team?

Erlang interview questions (Competency Based job interview).

  • How would you describe the experience of working here?
  • How do you react to instruction and criticism?
  • What are your expectations regarding promotions and salary increases?
  • What techniques and tools do you use to keep yourself organized?
  • What are three positive things your last boss would say about you?

Erlang interview questions (Video interview)

  • What problems have you encountered at work?
  • Give me an example that best describes your organizational skills.
  • What negative thing would your last boss say about you?
  • Where do you see yourself in five years time?
  • How did you react when faced with constant time pressure?

Erlang interview questions (Situational interview).

  • What do you think, would you be willing to travel for work?
  • What attracted you to this company?
  • You have not done this sort of job before. How will you succeed?
  • What would make you happy in a job?
  • What relevant experience do you have?

Erlang interview questions (Communication skills)

  • Do you have the qualities and skills necessary to succeed in your career?
  • Describe a time you were faced with stresses which tested your skills.
  • What type of work environment do you prefer?
  • What is a typical career path in this job function?
  • What's most important to you in a new position?

Erlang interview questions (about Strengths and Weaknesses)

  • Your greatest weakness in school or at work?
  • Tell me about your strengths.
  • Tell us about the last time you had to negotiate with someone.
  • List five words that describe your character.
  • What do you believe are your key strengths?

Erlang interview questions (Behavioral interview).

  • Tell me about how you worked effectively under pressure.
  • How do you keep track of things you need to do?
  • What kinds of situations do you find most stressful?
  • What kind of events cause you stress on the job?- What have you learned from mistakes on the job?

Distributed Systems Questions

  • Explain the life of an http request.
  • What does the FLP result teach us?
  • What is a byzantine failure?
  • Explain CRDTs
  • Explain linearizability.
  • How does DNS work?
  • Crash-stop vs crash-recovery?
  • Difference between soft and hard real time
  • Model GC in an eventually consistent system
  • Discuss clock skew, NTP, and AWS vs metal
  • What is causal consistency?
  • Whats the difference between a vector clock and a version vector?
  • What is chain replication?
  • At-most v at-least once
  • Model RYOW in an EC system.
  • Why does fail-stop rely on perfect fault detection?
  • How is this flawed?
  • How does 2PC fail?
  • How does 3PC fail?
  • Why can Raft survive byzantine failures?
  • Why CANT Raft survive byzantine failures?
  • How is 2PC different from fast-consensus?
  • What do merkel trees accomplish?
  • How do replicated logs work?
  • Discuss an EC system that implement idempotent increments and decrements of counters
  • Why are timeouts common in RPC?
  • Push vs poll for stats and why?
  • Advantages and limitations of the actor model?
  • What is process calculus?
  • What does termination, agreement, and validity guarantee in consensus protocols, respectfully?
  • Which systems are best optimized for safety? 31) liveness?
  • What are the characteristic differences among the two?
  • Why is WAN replication difficult?
  • Which programming languages are best suited for building concurrent systems? why?
  • Have you ever been to a RICON?
  • Watched the videos?
  • What are 3 fundamental diffs between Cassandra and Riak?
  • How can you reduce tail latencies in distributed systems?
  • Why do they matter?
  • Explain set union vs set intersection
  • In your opinion why arent there any decent distributed time series databases on the market?
  • How can you break paxos?
  • Why is a total order reflexive?
  • What are the fundamentals of atomic broadcast?
  • What does a POSET guarantee?
  • What is TCP incast?
  • Compare and contrast Kafka, Storm, and Spark
  • Are you familiar with LASP?
  • Difficulties of programming concurrent systems in shared memory env?
  • Do you know how vector clocks work?