Interview Process
This is some of my experience with the hiring process, particularly at the intern/entry level. Every company and even departments are different. Your experiences may vary.
- Social Media
- GitHub
- Resume
- Information for both HR and hiring managers.
- If you can, skip HR and attempt to send resume to hiring managers directly, do it.
- Create targeted resumes for different job positions.
- For HR: List your technologies first and bulleted/bolded. Be clear about what job you are looking for.
- For Hiring Managers: List a few projects you worked on, this will help build conversations/stories for the interview.
- For Both: Keep resume short.
- Initial Contact (E-Mail or Phone)
- You could be contacted by LinkedIn, email, or phone.
- Understand what the next step is.
- It is not rude to follow up. People are busy, and hiring you might not be their #1 priority at a given moment. Not getting back to you quickly does not necessarily mean disinterest.
- Don’t bring up salary until they do. Often this is handled by HR and not directly by the hiring manager.
- Phone Screen
- Often an initial interview/screen will occur. Typically 30-60 minutes, often with a single person. This is an attempt to very quickly gauge your technical and communication skills.
- Local Candidate – If you live in the same city as the company the screen might be a way to narrow down the candidate pool to those who will be called in for face-to-face.
- Remote Candidate – If you are a remote candidate the phone screen may be much more involved to determine if you are a good fit before meeting you in person.
- Face to Face Interview
- Might be in person, might be Skype.
- Might require travel. Usually the company will pay travel expenses, but not always.
- Companies have different levels of technical savvy in this area. Some are very good at remote interviews and skills assessment.
- It is almost impossible to overdress; it is very easy to underdress. Fortune 500: professional dress is a very common choice. Startups: business casual is a good choice.
- Technical Evaluation
- There are many formats for skills evaluation: written exam, online, oral, whiteboard, etc.
- The purpose is to see if you can code or perform whatever technical task the company has in mind for you.
- Ask questions before, during, and after the technical evaluation.
- Perfection is rarely expected. The best technical evaluations are a conversation where you are allowed to explain your approach.
- Human Resources
- If you have successfully made it through the interview process, you will complete the final phases with HR.
- This is usually when salary is discussed. Glassdoor is a great resource here. Titles are rarely apples to apples.
Skills/Topics for Different Professions
- Data Scientist
- Know unsupervised vs supervised. Classification, regression and clustering.
- How do you validate your models.
- What is overfitting.
- What is regularization.
- How does model A compare to model B.
- What is a technology that really interests you.
- SQL/NoSQL – Know your joins.
- Software Developer
- What are two languages you worked with? What are their differences (Google “Java vs Python” for example).
- SQL/NoSQL – Know your joins.
- Know which stack you will be working with: iOS/Swift, Ruby on Rails, Python, MEAN, C#/.Net Core. Great visual of stacks. (no connection to this company, I just really like their stacks information)
- What is a technology that really interests you.
- DevOps – Jenkins and automation.
- Agile
Technical Interview Resources
- Sample Written Coding Exam – This is one that I used/created used previously.
- LeetCode – Very good website with practice questions.
- 21 Must Know Data Science Questions – Good review for data science interview.
- Web Development Questions
- Java Interview Questions – From 2014, but still very good.
- Internships with my company – I often have one or more summer internship openings at RGA (separate from Washington University).