All Projects → cristaloleg → interview-manifesto

cristaloleg / interview-manifesto

Licence: other
No description, website, or topics provided.

Interview manifesto

...or how to drive your interview and hire people. Based on real life examples and experience.

General

  1. Etiquette
  • Say hello!
  • Ask how is a candidate?
  • Is everything okay?
  • Suggest a water/coffee/tea/juice/etc.
  • Simple things to make a situation less stressful.
  1. Introduce yourself
  • Every interview is a stress for a candidate (and also for an interviewer).
  • Make the situation more enjoyable.
  • Try to make it comfy and relaxed.
  • To make this - start a simple dialog.
  • Introduce yourself.
  • What is your experience?
  • Describe your current project.
  • How long do you work here?
  • What makes it cool?
  • (Maybe) what can be done better?
  1. Ask about candidates experience
  • That's a starting point to understand who is in front of you.
  • CV is a good thing, same as Github, Stackoverflow or personal blog.
  • But during real conversation you will get much more details.
  • Off course if you will ask for them.
  1. What technologies are you familiar with?
  • You will see how deep or wide candidates knowledge is.
  • What parts of your language/framework sucks?
  • What other technologies are you interested in but don't have ability to try?
  • Any personal projects? own business? or plans?
  1. Do not ask 'Why do you want to work here?'
  • Money, everything else is a bullshit.
  1. Looks for the candidates that:
  • Is able to grow with a team (junior-middle)
  • Is able to grow a team and company (middle-senior)
  • Is able to introduce new things to a team (junior-middle-senior)

Junior developer

  1. TODO

  2. Check candidates logic

  • Why programming makes candidate happy?

    • money, for sure, as everyone
    • but what makes it more enjoable?
  • Who does candidate looks for the answer?

    • Is he/she able to Google the answer?
  • How a web service can be debugged?

    • is this an app or infra problem?
    • are logs/metrics/traces were mentioned?
    • did someone talk to the teammates?
  1. Ask computer science basics
  • Types of sorting

    • simple question to see compute science background
  • Why do we need databases?

  • What is the type in the language?

    • what is the difference between int and string?
  • What data structures do we have and why?

    • Splay-tree is cool, but have you used it personally?
    • Don't ask something that goes far beyond regular development day.
  1. Do not rush into documentation questions
  • Don't ask all the implementation of IList in language XXX
    • are we interested in those who remembers everything
    • or those who can investigate the problem and find a solution?

Developer (aka middle developer)

  1. TODO

  2. How to keep code clean and usable?

  • Linters, static analysis tool
  • Code review
  • Good abstractions
  • ...
  1. Implement a basic function (like len, map, filter so on)
  • You will be amazed how many developers cannnot make it.
  • Even with 3+ years of experience.
  • Also a good question to switch to the editor and talk about it.
  1. Why do we need indexes in databases?
  • What type of indexes do we have?
  • Pros and cons of them.
  • and off course when we do not need them?
  1. Ask about previous project in details
  • What was the load?
  • What about storage?
    • Is everything is fine?
    • Why exactly XXX?
  1. Do not expect to see best code ever
  • Candidate has a stress.
  • Keep errors as something inevitable.
  • Care to help after few minutes of stuck.

Senior developer

  1. TODO

  2. How to develop a new project?

  3. How to build a team?

  4. What problems you had on previous jobs?

  • how to solve them?
  • are you ok that this might appear here too?
  1. System design
  • How good candidates asks for the clarifications?
  • How deeply it explains things?
  • Pros and cons before selecting a tool.
  • Trade offs.
  • Maintain.

QA

TODO

DevOps/SRE

TODO

Team leader

TODO

Architect

TODO

Notes

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].