Skip to content

Latest commit

 

History

History
179 lines (94 loc) · 5.34 KB

InterviewThis.md

File metadata and controls

179 lines (94 loc) · 5.34 KB

##Development Process

  • What will be my day to day responsibilities?

  • What source control do you use? Can you explain why you chose it?

  • Are your repos hosted in-house or on a third-party service? GitHub?

  • What is your workflow currently, with regards to developers pushing changes. Do you do pull requests, or does everyone just merge to a central repo?

  • Are you using a ticket system or is it more play it by ear?

  • Do you have a code review process?

  • Do you have established code style rules?

    • Tabs or spaces?
    • Allman or BSD braces?
  • What are your development environments like?

    • Virtual Machines? Local (VirtualBox) or Remote (ESXi)?
    • Does everyone have an identical development environment?
    • Are you using vagrant and/or puppet/chef?
    • How closely do the dev environments mirror your production environment?
  • What is your release schedule like?

  • Do you maintain separate release and dev branches? (git-flow?)

  • Will I be provided with a new laptop?

    • Windows, Mac or Linux? Do I get a choice?
    • Am I allowed to install anything I want on that laptop?
    • Will it have an SSD?
    • How hard do I have to justify software purchases?
  • Which comes first, bugs or features?

  • Single product, or will I be regularly working on different projects?

  • How frequently does your company start a new project?

  • Will I communicate directly with clients on a regular basis, or does this typically happen through an intermediary?

  • Do developers make estimates on deliverables, or are due dates normally decided upon ahead of time?

  • What can I expect to see in terms of project specifications and/or mock-ups prior to beginning a new project?

  • How do you track development time?

##Remote

  • Will the company pay for home office equipment such as monitors or furniture?

    • If yes, will that equipment be considered company property?
    • Would I have to return it if/when I leave the company?
  • Do you have a team chat setup such as IRC or Jabber? Do your developers actively use it, is it their primary communication channel?

  • Do your developers use video chat software such as Skype or Google Hangouts?

  • If a portion of the team works in-office, do you have a dedicated computer to be used for video chat with remote employees?

  • Will I have to work over a VPN?

  • How frequently will I be expected to visit the office?

  • Will my visits be reimbursed?

  • How flexible are my hours? Can I take time off during the day if needed and make up for it in the evenings?

##Codebase

  • How old is your codebase?

  • Do you unit test? If so, what libraries do you use?

  • Do you regularly correct technical debt?

  • On a scale of 1 to 10, how much spaghetti code do you have?

  • What is the current state of your code documentation and testing coverage?

  • Pure CSS, or compiled middleware (LESS, SASS, etc)?

  • What is your minimum supported version of IE?

  • Does your codebase require a build process, and is it automated?

  • Do you use MVC or similar code structuring?

  • What is your primary backend language, including version?

  • Do you use open source libraries, and are you aware of the licensing on those libraries?

##PHP

  • Do you use a public framework or is it an in-house environment?

  • Do you use PHP driven html templates, or a third-party template engine such as Smarty or Twig?

  • Do you use Composer?

##JavaScript

  • jQuery, Prototype, Underscore, Zepto, Dojo, or other?

  • Do you use a templating engine, such as Mustache or Handlebars?

  • Coffeescript? (If yes, is it required?)

  • Does your code follow Crockford code conventions?

    • Semicolons?
    • camelCase variables?

##Developer Coordination

  • How many developers do you currently have?

  • How large are your teams?

  • How frequently do team members find themselves in meetings?

  • Do your developers pair program on a regular basis?

  • Do you have a methodology for project management (Agile, scrum, etc?)

  • Do your developers use screen sharing or collaborative coding tools?

  • Are teams seated together?

  • Do teams have isolated areas from the rest of the staff / other teams?

##Culture

  • What would my role at the company be?

  • Where would I be inserting into the organization?

  • Am I allowed to take my work home with me?

  • Am I expected to take my work home with me?

  • What are the expectations with regards to hours worked, deadlines, and overtime?

  • How much vacation time do you provide? How much lead time is expected on vacation requests?

  • Open office, personal offices or cubicles?

  • Is there a dress code?

  • What relationship does your dev department have with your sales department? Who sets the deadlines?

  • Does the company provide snacks and/or drinks?

  • What are your expectations productive hours a developer will have per day?

##Company

  • How many non-developer staff members does the company have?

  • Who is your healthcare provider?

  • What percentage of insurance does your company pay?

  • Is your company currently profitable?

  • Does your company release open source code?

  • What is your company policy with regards to me releasing open source code (personal projects)? If there is an approval process, how lengthy is it?

  • What is your company policy with regards to side projects? Am I allowed to work on my own sites?

  • Do I own the code I make in my own time on my own hardware?

  • Will the company pay for training programs / certifications / conferences? What is the approval process like?