Interview Questions SRE

This is a library of questions that I typically ask during an interview process.

Intro Questions

  • Why are you interested in this company?
  • What things are you looking for in your next opportunity?
  • What part of the job excites you most? The least?
  • What do you know about this company?
  • Can you explain in your own words what this company does?
  • Whats the reason you are leaving your current/previous company?
  • What are the most important things you expect from the company you work for?

Hiring SRE Youtube

Define the Criteria you Care About

  • Software Skills
    • Coding difference between SRE | SWE
  • Systems & Networks
    • General Linux Skills - basics of AWS, don’t need to be super deep but good fundamentals
  • Low Level Systems Knowledge
    • Ability to talk in detail about how technology works, constraints within systems that may be underlying software or 3rd party solutions
  • Do you know how stuff is put together?
    • Important to explain constraints to engineering, have to do this before things are built.
  • Architecture
    • Tradeoffs, and why you made those.. Saying you are going to do something isn’t good enough. **Note this is more real world knowledge.
  • Troubleshooting
    • Logical Thinking (A -> B -> C) lots of ways to test this.
  • Depth of Knowledge
    • Troubleshooting question to see where they are strong
  • Soft Skills
    • Customer Service (you have the ability to talk and communicate with other people/teams)
  • Prioritization
    • Ability to take a list of items that need to get done, and decide what’s the most important to do first and so forth

Typical Hiring Life-Cycle Funnel

Build the funnel from Meetups, Conferences, LinkedIn, Social Media, Communities, Team Member Referrals, Emailing people

  • Sourced
  • Pre-Screen
  • Phone Screen
  • Evaluation
  • Offer Out
  • Offer Accepted
  • Any decisions made through this cycle should be Metrics Driven
  • How many candidates are getting in the door to an interview?
  • % of offers accepted

Tips on Sourcing

  • Take notes about people
  • Keep track of what people are motivated by ($, title, role, values)?
  • Make a real human connection

Tips on Evaluating

The interview process should consist of evaluating for the below areas.

Coding

Build a script that can aggregate status codes over 1 minute interval for an apache log file in common_log format

You can take this a step further and get to networking/systems by stating the log files are on NFS system, and you have limited memory..

You can go even deeper Logic Questions — Is the candidate asking these questions?

  • Did they ask how big is the log file?
  • Is the log file still being written to?
  • Is the log file complete?
  • Should the program output anything?

Adapting under pressure.

Communication Skills, can the candidate explain deep concepts to the team clearly.

Architecture

Request: Design a Video Site for me.

  • 1 class - will come in add load balancer, web server, database, video files to disk – this is what we did at my last company, maybe a CDN. (not best approach)
  • 2 class - people ask, what type of website are we building, how big is it, who is the customer, are we sharing videos? How many users are expected. Everything public are ACLs needed? Youtube or Netflix?
  • Pro Tip - Average Engineers will over design…. Caching layers / streaming layers / etc…. keeping it simple show more seniority
Troubleshooting

How would you diagnose a slow SQL server How would you diagnose a slow web server Or Chaos Day Question/Answer suggestions

Linux Performance Observability Tools

Behavioral (hopefully this has already been assessed a good bit through manager interview)

Deciding to Hire

Write down your thoughts during the interview on the candidate candidates and review shortly…

If splitting up interviews, make sure the interviewees have the same questions to ask each candidate.

  • Don’t try and fit someone in a role you didn’t evaluate for

Ensure there is consensus…

  • What’s the candidates curve?

Long high ramp, Quick Ramp, or fast short?

Collaborative/Handle Disagreements

  • Tell me about a time when you strongly disagreed with a teammate. How did you handle it? How did it go?
  • Tell me about a time where you disagreed with your boss or team lead. How did you handle that? What happened?
  • When did you most recently collaborate with a software engineer? What was that like?
  • When did you most recently collaborate with another tester/QA? What was that like?
  • Have you ever had to get your team to change something, but weren’t in charge? How did you go about that?

Autonomous/Initiative

  • Tell me about initiatives you have taken to improve procedures at work? Were you successful? Would you do anything different now?
  • When deciding how to organize your work, how do you assess what tasks need to be given priority?
  • What steps do you take when there is an immediate decision to be made, but without having all the data available?

Communication Skills

  • How often do you communicate with other teams?
  • Tell me about a time you diffused a situation with another team and what was the outcome?
  • Do you have to juggle demands from different teams?
  • How do you deal with difficult personalities?
  • Can you tell me a time when you gave direction to others in which you were not the manager? How did they react?
  • Do you think people on your team respect you? Why?

Willingness to Learn

  • What is the last thing you learned on your own?
  • Have you learned anything on your own in the past that you’re especially proud of?
  • What is your preferred way to learn new concepts?
  • Can you give an example of something you learned quickly at your last job?
  • Explain a recent mistake. What did you learn from it and in what areas can you utilize that knowledge in the future?

Problem Solving/Critical Thinking

  • When presented with a problem, what process do you use to find a solution? (we are looking for processes, do you look for facts and data versus intuition, etc.)
  • Give an example of a problem you faced on a job and describe how you solved it.
  • Tell me about a task that really tested your analytical abilities. (Listen for reason and logic to resolve a problem)
  • Tell me about an assignment you worked on in which you had a mass amount of data to analyze. (See if they walk you through how they did it. They should explain how they compiled facts/figures and derived relevant facts/info from it)

Passion/Care why they build software (Software Engineering)

  • What are your favorite industry sites or blogs?
  • How did you get started with computers? Software? [find out what excites them/motivates them about software]
  • What was your last project/current project? [seek the architectural overview; see if they talk about the value to the end-user/customer or not]
  • Tell me about side or open-source projects are you working on/you have worked on?
  • When was the last time that you volunteered to expand your knowledge at work, as opposed to being directed to do so?

Ownership - Takes responsibility personally

  • Share examples of projects that you have owned and that have been successful. What was the outcome?
  • How would you describe your contributions to your current company? What projects have you owned outside of your daily responsibilities?

Teamwork - Ability to work together towards a common goal

  • Tell me about the structure of the team you’re on and how you work together.
  • What do you do to convince a reluctant developer to listen to your advice?
  • Would you prefer to work on something by yourself or with a team? Why?

Integrity - Treats people with fairness, honesty & respect

  • Tell me about a time when you were put in an uncomfortable situation at work.
  • Give me a specific example of a time when you had to conform to a policy with which you did not agree.
  • How would you handle a situation in which a teammate was not performing to an appropriate standard?

Innovation - Introduces new ideas & makes valuable changes

  • How do you stay current on the changes in technology?
  • Give me an example where you found a new solution to an old problem.
  • Describe the most innovative way you have solved a problem.
  • Tell me about a time when you identified a need and developed a solution. What was the result? What did you learn?

Drive - Continually press toward a goal

  • What motivates you the most?
  • What are two or three examples of tasks that you do not particularly enjoy doing? Tell me how you remain motivated to complete those tasks.
  • How do you measure your own success?
  • What areas of your professional skill-set are you working to improve right now?

Execution - Relentless focus & taking effective action to attain desired result

  • When is the last time you went above and beyond for a project?
  • Describe the most challenging project that you have worked on. What made it the most challenging?
  • Tell me about a time when you failed to complete a project on time.

Questions For Them

  • Do you have any questions for me?

Salary Expectations: (TEAM LEAD ASKS THIS)

  • What is your long term career path?
  • What are your salary expectations?