avatarJan Marcel Kezmann

Summary

The article discusses the potential impact of ChatGPT on the coding interview process for software engineering roles in Big Tech companies.

Abstract

The emergence of ChatGPT's advanced coding capabilities has prompted a reevaluation of the traditional coding interview process used by Silicon Valley's tech giants. The article demonstrates how ChatGPT can solve complex coding problems with ease, suggesting that the current practice of using difficult coding challenges to assess candidates may no longer be relevant. The author argues that the ability to leverage such AI tools to efficiently tackle real-world business problems should be the new criterion for hiring software engineers. This shift in focus could better predict a candidate's problem-solving skills and their potential to contribute to a company's success, rather than their ability to solve abstract coding puzzles.

Opinions

  • The author believes that ChatGPT's proficiency in solving coding interview questions undermines the traditional hiring process in tech companies.
  • There is skepticism about the practical value of solving coding interview problems in relation to the day-to-day tasks of software engineers and data scientists.
  • The article suggests that the coding interview should evolve to test candidates on their ability to integrate AI tools like ChatGPT into solving actual business challenges.
  • The author posits that the current coding interview questions do not adequately predict a candidate's future expertise or usefulness to a company.
  • Emphasis is placed on the importance of evaluating a candidate's proficiency in addressing real-world problems using their coding skills, rather than their performance on theoretical coding puzzles.
  • The author proposes that the coding interview process should be updated to reflect the collaborative potential between human expertise and AI capabilities for problem-solving.

Is ChatGPT making the Coding Interview Obsolete?

How Big Tech Companies Need To Rethink Their Hiring Process

Source: Created by Jan Marcel Kezmann

With the enormous coding capabilities of ChatGPT all over the internet people are testing its capabilities and limits.

One of these is program coding interview examples, which are commonly found on LeetCode, AlgoExpert, and other similar websites where one may practice fundamental programming principles.

Seeing creators on Reddit, YouTube, and LinkedIn solving coding interview questions entirely by ChatGPT made me reconsider the effectiveness of the Silicon Valley Big Tech software engineering hiring process.

Table of Contents

So, let’s dig into it.

ChatGPT Solves Difficult Coding Problems Easily

I’d want to begin by demonstrating how ChatGPT can handle a coding problem difficulty rated hard on LeetCode.com:

To begin, I intended to solve the problem outlined below.

Source: Screenshot from Leetcode.com

The purpose is to calculate the median of two sorted arrays of lengths m and n. In addition, a runtime limitation is provided.

First, I instructed ChatGPT on how to behave and what kind of task to anticipate. As a result, I concentrated on asking it to act as an expert on coding interviews while also taking into account performance, effectiveness, and edge cases.

Source: Screenshot from the conversation with ChatGPT

Second, I merely copy and paste the entire problem statement from LeetCode as well as the function definition into the chat terminal.

The following results were obtained:

Source: Screenshot from the Solution ChatGPT proposed

Pasting that again into LeetCode, showed that the problem has not only been correctly solved but that also edge cases have been considered as the screenshot displays.

Pasting that into LeetCode again revealed that the problem had not only been solved correctly but that edge cases had also been handled, as shown in the screenshot.

Source: Screenshot from Leetcode.com

Finally, I asked LeetCode to add comments and a full description to its code, which it did without trouble.

Overall, although I only gave one example, it clearly displays ChatGPT’s interview coding skills.

Questioning the Value of Solving Coding Interviews

Returning to the original issue, coding interview questions, particularly those asked during an online interview, can now be easily handled with ChatGPT.

As noted on Quora, coding interviews, or more precisely their pure practice, provide a lot of value in terms of learning technical skills as well as getting a grasp of the programming language used.

While I recognize this point, and while I understand that knowing the fundamentals of a programming language, its data structures, and standard algorithms is beneficial if not required, I have always wondered what value it provides in answering many of these questions, particularly during an interview.

I bring this up because, as a software engineer, data scientist, or someone with a similar profession, I have never directly dealt with such challenges throughout my young career.

And I believe that more than 99% of the time, others will not use it to accomplish their day-to-day activities as well.

One could argue that the ability to solve coding challenges, in general, is a sufficient basis to ask such questions during coding interviews.

Nonetheless, I don’t see how these issues can be used to predict if someone would become a programming expert, and of use to a company.

I and my experience have evidenced that the ability to solve real-world problems utilizing one’s coding expertise is far more valuable.

With this in mind, I’d want to go to the final section.

An Idea on How to Change the Coding Interview

Ultimately, I believe that most firms seek software engineers because of their potential to solve business challenges through the development of effective software.

If we now know that there are tools that can considerably improve our technical skills, wouldn’t it be better to see if people can use them to solve problems as well and as quickly as possible?

If that’s the case, I’m not sure the traditional coding interview is still adequate.

Switching over to real-world business problems might be the better way to go.

First, it demonstrates a candidate’s ability to rapidly integrate into a new domain.

Second, it reveals how the candidate combines his or her knowledge in combination with AI technologies such as ChatGPT to deliver a solution.

Third, it might prove that the candidate understands how to mix knowledge obtained from the interviewer, tools, and his own experiences to first develop and then offer a final output in the form of code.

If this minor modification of the coding interview is not more valuable than solving raw coding problems, then what is?

Final Notes

I hope that I could inspire you to rethink and reevaluate not only the coding part of the software engineer hiring process but also the benefit AI tools might have for us.

I would gladly hear your view on this and if you contradict with my opinion. If so, how would you solve it?

All in all, I hope you have enjoyed this article. If so, let me know by clapping and following me.

Also, join Medium if you haven’t yet:

Reach out to me via LinkedIn

Take a look at my other work on GitHub and other articles on Medium.

BECOME a WRITER at MLearning.ai

ChatGPT
Coding Interviews
Cracking Coding Interview
Machine Learning Tools
Ml So Good
Recommended from ReadMedium