https://github.com/fourkitchens/careers
https://github.com/fourkitchens/careers
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/fourkitchens/careers
- Owner: fourkitchens
- Created: 2014-02-05T18:37:10.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2015-01-21T17:14:39.000Z (over 11 years ago)
- Last Synced: 2025-03-03T22:36:12.390Z (over 1 year ago)
- Language: CSS
- Size: 5.44 MB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Careers at Four Kitchens
# Screening Questions
1. What's the coolest thing you've ever coded, what are you most proud of?
2. What is the largest project that you've worked on, in complexity and/or scale.
1. Why did you/are you going to leave your current position?
2. Have them explain any gaps in work history.
3. What interested you about this position?
6. Have you worked as part of a team or primarily as the only development resource on a project. We do some of both, which do you prefer?
## Interview Format.
1. Introduce Four Kitchens.
2. Introduce the Position.
3. Ask the Applicant to describe themselves.
4. Start a conversation that touches on all the topics in the questions for all applicants below. 5. Dig deeper with any additional questions.
6. Give the applicant frank feedback if it's obvious that the conversation isn't going to go further or next steps if it is.
## Prospect questions
## Questions for all applicants.
### Technical Questions
1. What happens between when someone hits return in the browser and they get a web page? "The complete answer would take the rest of the interview, if not day, so give a broad overview and dive into the parts that you feel most comfortable talking about. Many great responses include at least one 'and then some ___ magic happens, followed by or preceded with a detailed explanation of something'
2. Emacs or Vim?
3. The client has reported a bug. Walk me through the process you use to find a solution. _With each step ask 'If that doesn't provide a solution what do you do next?'
4. Walk me through your code sample. Describe at a high level what it's supposed to do, and how you solved for it here. What would you change if you wrote it again.
5. Have the applicant walk through an piece of code in their preferred language that they haven't seen before. _Good example would be an internal Drupal function or the internals of a popular jQuery function._
### Work History Questions
In many interviews the conversation naturally evolves based on the answers and conversations around the above questions. Below is a cheat sheet that helps in diving down into different facets that may not have been touched on.
## Additional Question Ideas
### Computer Science
1. What are design patterns? Describe one. . . becides MVC.
2. Describe the difference between procedural and Object Oriented programing.
3. DRY and KISS are some of the best practices we strive towards. Describe what they stand for, or other programing best practices that you stive for.
### Backend
**General backend**
1. What is SQL injection?
2. What is one technique for minimizing server assets (images, CSS, JavaScript, etc)?
3. How is POST data transmitted to the server?
4. Talk to me about optemizing?
5. What is Varnish and what does it do?
6. What are Apache and Nginx?
7. What are the features in the latest version of PHP that you are most excited about.
8. What are the different types of HTTP requests.
9. How is a session represented in the browser?
10. Describe how Apache and PHP work together.
**Drupal backend**
1. How does the database abstraction layer protect against SQL injection?
2. What are some ways that Drupal forms are more secure than an HTML form and a PHP script.
3. What does the views module do?
1. What are some ways to extend views?
4. What is cTools and what does it provide?
1. Describe some of the tools and how you've used them.
5. What are Drupal hooks?
1. How do you write a Drupal hook?
6. How does Drupal use the .htaccess file to support clean urls?
### Frontend
1. How would you optimize a websites assets/resources in an effort to improve frontend performance?
* Examples: File concatenation, file minification, CDN hosting, caching, etc.
2. Tell me about how the ```this``` keyword in Javascript works.
3. Tell me about some of the new 'HTML5' CSS selectors and what their advantages are.
4. What are some of the things to look out for if a client has asked for a site to be "accessible?"
### Fun questions
* What is on your must-read list? Blogs, newsletters, books, etc.
* Do you have a dot-files repo? How do you manage your environment configuration.
* What is your favorite programming language and which ones do you hate? Why?
* What's the last thing you learned (language/tool/solution) that made you excited?
## Code exercises
1. In whichever programming language you are comfortable with, create a routine that
creates a copy of [this file](./exercises/base64/index.html) where image sources
are replaced with base64 encoded [data URIs](https://developer.mozilla.org/en-US/docs/data_URIs).