This is a draft cheat sheet. It is a work in progress and is not finished yet.
Technical
What's your favourite language and why? |
Do you have a preference for any particular framework? |
What would you consider the strengths of $language to be? |
Do you think there are any scenarios where $language would be an inappropriate choice? |
What features would you like to see added to $language? |
Do you find any languages/frameworks intimidating? |
What do you think makes good, maintainable code? |
What do you understand by Test Driven Development (TDD)? |
What do you understand by Continuous Integration (CI)? |
What is your experience of version control? |
What are your thoughts on Design Patterns? |
What is your general strategy towards documenting your code? |
If you were faced with a project that had performance issues, what steps would you take to investigate them? |
If you were faced with a legacy project with maintainability problems, what things would you look to improve to get it on a stable footing? |
How do you feel about code reviews? |
What is your understanding of Domain Driven Design (DDD)? |
Swap $language for the language relevant for the role you are interviewing for.
|
|
Personal
Tell us about yourself? |
What projects are you working on in your spare time? |
How do you keep up with tech trends? |
What was the last project you worked on? |
What are you looking for in a new position? |
What was the last big mistake you made and how did you recover from it? |
If you're put on a particularly busy project team with documentation on how to set up a development environment but you run into an undocumented issue, how would you look to progress? |
|
|
Agile
Do you have any experience of working in an Agile environment? |
What is your understanding of the SCRUM methodology? |
What are your thoughts on daily stand ups? |
Would you be comfortable demoing a feature you worked on to a client? |
|