Finding a Job

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.

  1. Social Media
    1. LinkedIn
    2. GitHub
  2. Resume
    1. Information for both HR and hiring managers.
    2. If you can, skip HR and attempt to send resume to hiring managers directly, do it.
    3. Create targeted resumes for different job positions.
    4. For HR: List your technologies first and bulleted/bolded.  Be clear about what job you are looking for.
    5. For Hiring Managers:  List a few projects you worked on, this will help build conversations/stories for the interview.
    6. For Both: Keep resume short.
  3. Initial Contact (E-Mail or Phone)
    1. You could be contacted by LinkedIn, email, or phone.
    2. Understand what the next step is.
    3. 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.
    4. Don’t bring up salary until they do.  Often this is handled by HR and not directly by the hiring manager.
  4. Phone Screen
    1. 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.
    2. 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.
    3. 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.
  5. Face to Face Interview
    1. Might be in person, might be Skype.
    2. Might require travel.  Usually the company will pay travel expenses, but not always.
    3. Companies have different levels of technical savvy in this area.  Some are very good at remote interviews and skills assessment.
    4. 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.
  6. Technical Evaluation
    1. There are many formats for skills evaluation: written exam, online, oral, whiteboard, etc.
    2. The purpose is to see if you can code or perform whatever technical task the company has in mind for you.
    3. Ask questions before, during, and after the technical evaluation.
    4. Perfection is rarely expected.  The best technical evaluations are a conversation where you are allowed to explain your approach.
  7. Human Resources
    1. If you have successfully made it through the interview process, you will complete the final phases with HR.
    2. 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
    1. Know unsupervised vs supervised.  Classification, regression and clustering.
    2. How do you validate your models.
    3. What is overfitting.
    4. What is regularization.
    5. How does model A compare to model B.
    6. What is a technology that really interests you.
    7. SQL/NoSQL – Know your joins.
  • Software Developer
    1. What are two languages you worked with?  What are their differences (Google “Java vs Python” for example).
    2. SQL/NoSQL – Know your joins.
    3. 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)
    4. What is a technology that really interests you.
    5. DevOps – Jenkins and automation.
    6. Agile

Technical Interview Resources