DEV Community

Play Button Pause Button
lusen / they / them 🏳️‍🌈🥑
lusen / they / them 🏳️‍🌈🥑

Posted on • Updated on • Originally published at

Live Annotated Coding Interviews: SQL, Python and Javascript

This recording comes from a Youtube Live Stream in which I interview two amazing candidates on the spot, and explain what parts of their answers work, and what else they can do and say to impress interviewers and level up. For each candidate, we start by looking at the jobs they're applying for, and I guess what kings of interviews and questions they'll likely encounter. Then I ask them questions. We spend time digging into SQL, Python and Javascript questions from Leetcode.

Visit the Youtube replay to see the accompanying live stream chat:

Data Science

I start with Robert, a data scientist with one year of experience in SQL and Python Pandas who is applying to Data Quality Analyst positions.

We go through some introductory behavioral questions, and explain what the interviewer is really looking for:

  • Introduce yourself
  • Why this transition?
  • Why this company and role?

Then we move on to the technical questions:

  • How would you show certain data from this SQL database? How will the pulled data look different if you used JOIN instead of LEFT JOIN?

Graduating Software Engineer

Next up is Dami, a software engineering student who is graduating this year and looking for a SWE position at Facebook or similar.

After reviewing his awesome portfolio, we start with a coding question from a book called "The Overstory" by Richard Powers

  • Given cards representing people at a bar, in which one side gives the person's age and the other side gives the person's drink, how many cards would you have to turn over to ensure no one under-age was drinking? Write a function that takes a list of cards and returns how many would have to be "turned over."

After discussing the explanations and steps the interviewer is looking for BEFORE you write any code, I leave Dami to the implementation and ask Robert another coding questions:

  • Given a string, find the repeating characters in a string and return the number of times they appear - modified from this leetcode

Group Wrap Up

Lastly, the three of us work through the start of another leetcode problem: Merge K Sorted Lists

  • Write a function that takes two sorted lists and returns a single list containing all of the input elements in sorted order
[1, 3, 3, 6]
[2, 3, 4, 5, 8]
→ [1, 2, 3, 3, 3, 4, 5, 6, 8]
  • Now improve this function so that it takes a list of lists -- K lists -- and merges all of them into a single sorted return list.

We discuss some algorithms and complexity analysis, and leave the full implementation for homework.

When practicing solving coding questions, try to do at least one if not both of the following:

  • Have a friend ask you the question so that you practice asking clarifying questions, identifying edge cases, and explaining your approach and the complexity out loud
  • Solve the problem at least 2 different ways. Practice brainstorming and implementing different kinds of solutions, so that if you get stuck in an interview, you've got other tools in your toolbox ready to go.

Empowering candidates to ace interviews and negotiate offers. Leave a comment or email with questions you want me to answer.

One-on-one success-based coaching for technical and tech-adjacent candidates applying to tech companies. We specialize in interview preparation and offer negotiation.


☆ Youtube ☆
☆ Newsletter ☆

☆ LinkedIn ☆
☆ Website ☆
☆ Speaking Inquiries ☆
☆ Client Inquiries ☆

Top comments (2)

aminmansuri profile image

What once used to be a spontaneous test of skill, is now becoming a skill in of itself.

I fear the interview has become like the SAT. Those that prep the most do best?

(Maybe I'm wrong, I haven't really interviewed in over 2 decades)

candidateplanet profile image
lusen / they / them 🏳️‍🌈🥑

Indeed! Stepping back, different roles and companies hire in different ways, so it really depends on what you are looking for. Improving certain interviewing skills will open more opportunities, but so does networking and playing to your strengths with where and how you find your next job. Do as much as you can, and iterate based on what you learn.