Coding Interviews Are Broken

  Рет қаралды 75,248

Nick White

Nick White

4 жыл бұрын

The Best Place To Learn Anything Coding Related - bit.ly/3MFZLIZ
Join my free exclusive community built to empower programmers! - www.skool.com/software-develo...
Preparing For Your Coding Interviews? Use These Resources
--------------------
(My Course) Data Structures & Algorithms for Coding Interviews - thedailybyte.dev/courses/nick
AlgoCademy - algocademy.com/?referral=nick...
Daily Coding Interview Questions - bit.ly/3xw1Sqz
10% Off Of The Best Web Hosting! - hostinger.com/nickwhite
Follow My Twitter - / nicholaswwhite
Follow My Instagram - / nickwwhite
Other Social Media
----------------------------------------------
Discord - / discord
Twitch - / nickwhitettv
TikTok - / nickwhitetiktok
LinkedIn - / nicholas-w-white
Show Support
------------------------------------------------------------------------------
Patreon - / nick_white
PayPal - paypal.me/nickwwhite?locale.x...
Become A Member - / @nickwhite
#coding #programming #softwareengineering

Пікірлер: 271
@nexxogen
@nexxogen 3 жыл бұрын
As someone who's been a software engineer for 7 years now, I can tell you that Ben is 100% right. What you're doing here is exactly the problem - you're drawing vague correlations between DSA and high level programming by saying "this is the first thing you learn in college, so it's the foundation of everything else and it can be very helpful because xyz". Well, the first thing you learn in PE (at least in my country) is basic gymnastics, but when an NFL team tests a QB, they ask him to throw the ball and not to do front rolls. The truth is, you can understand DSA enough without being able to implement it yourself. Imagine if you couldn't pass a drivers test without knowing how to assemble a car engine. You can clearly be an excellent driver while having no idea how exactly the engine works. In reality, unless you want to be a low level programmer, you will never have to implement a data structure yourself and you can very easily understand their specifics without going deep below the surface.
@aquere
@aquere 2 жыл бұрын
Exactly what I was thinking
@BillClinton228
@BillClinton228 Жыл бұрын
He's also overlooking the long interview process some companies have. I was recently told by an interviewer that they had 6 steps in their interview process. 6 seperate INTERVIEWS for one job? That's completely unnecessary, I'm not applying for a CEO position. That tells me that the company is a complete nightmare to work for, probably has tons of red tape for everything they do and they have no respect for their interviewee's time.
@BillClinton228
@BillClinton228 4 жыл бұрын
Job: Manage an internal CMS written in PHP. Interview: Replicate the Mars rover software on a white board.
@TheCasanovaPugilist147
@TheCasanovaPugilist147 2 жыл бұрын
Job: Fast food cook Interview: Cook gourmet level meal for the interviewer
@supernintendo182
@supernintendo182 2 жыл бұрын
if (redSand) Rover.MoveForward();
@supernintendo182
@supernintendo182 2 жыл бұрын
@@TheCasanovaPugilist147 Also all you have is a steak knife and a tabletop induction stove.
@afternoontiger9319
@afternoontiger9319 4 жыл бұрын
Got my 2nd round oracle interview this Friday. Pray for me.
@HM-ih7ku
@HM-ih7ku 4 жыл бұрын
Best of luck!
@louiebee4345
@louiebee4345 4 жыл бұрын
Awesome. Pretty brutal job market out there. If they're hiring during this time, means you'll be safe for a while. Good luck!
@omisingh9677
@omisingh9677 4 жыл бұрын
I see your future.....u successful ma boi
@HPS_Gaptone
@HPS_Gaptone 4 жыл бұрын
You can do it!!
@afternoontiger9319
@afternoontiger9319 4 жыл бұрын
Thank you all!
@abhishekdutta6189
@abhishekdutta6189 4 жыл бұрын
I feel the main problem with these interviews is that, students are JUST preparing for data structures and algorithms. In my college there are seniors who have been placed in google but have never worked on a proper project.
@Garentei
@Garentei 4 жыл бұрын
I mean, honestly, who cares. Getting experience is much easier than mastering data structures and algorithms. Companies need people that know how to code, not people that went to some bootcamp and made a tic-tac-toe game by copy and pasting a bunch of Github code.
@akshayviswakumar8013
@akshayviswakumar8013 4 жыл бұрын
@@Garentei LMAO so many people copying repos and writing Medium articles. 😂
@jsdbhssbdbsjsj
@jsdbhssbdbsjsj 3 жыл бұрын
@@Garentei Lol yes, specially sites like Udemy offers these kind of "portfolio projects" for peanuts(somehow courses there are 90% off 24x7)
@HoangNguyen-jd2mr
@HoangNguyen-jd2mr Жыл бұрын
@@Garentei if they undersand it they wouldnt have to practice for it
@BillClinton228
@BillClinton228 Жыл бұрын
@@Garentei Real programmers code in binary... and I'm better than all of you
@nazimulhoque8535
@nazimulhoque8535 4 жыл бұрын
I will agree to the fact that many companies in INDIA mostly ask DS & Algo. I have seen people with crazy skills in ML or Blockchain or any dev field but DS & Algo 70% of the interview so they get rejected;
@MElixirDNB
@MElixirDNB 4 жыл бұрын
Hm, you seem to miss some of his bigger point. You can argue for sure that data structures etc are good fundamentals to most programming tasks, but in the day to day of most jobs you will not be reinventing the wheel, your knowledge of data structures etc will actually not come into play that much and your tasks will be much more focused on specific frameworks and codebases/technologies used. That is why a lot of companies instead of this traditional whiteboard question approach, do the take home assignment method, which is basically giving you a task ( build an API in django) that is very similar to what you would do on the job. I think you didnt address that main discrepancy enough in this video, but I do agree to an extent fundamentals will play a large role in everything you do. However its just not a practical way to judge someone's ability for those tasks in many areas
@prajwalr7976
@prajwalr7976 4 жыл бұрын
thank you finally someone with common sense
@jackfrost8969
@jackfrost8969 4 жыл бұрын
absolutely, it's more suitable for research purposes like np-complete, hard kinda problems which very few talented folks will only gonna make it
@ProjSHiNKiROU
@ProjSHiNKiROU 4 жыл бұрын
To me, the most annoying part of coding interviews in general: The need for preparation and repeated maintenance of interviewing skills, and scheduling interviews with less-preferred companies earlier in order to prepare for later, more important interviews.
@KevinNaughtonJr
@KevinNaughtonJr 4 жыл бұрын
Oof you and Ben are making me wanna give my 2 cents on this...
@TheChromeLegend
@TheChromeLegend 4 жыл бұрын
Kevin Naughton Jr. doooooo it!
@ziwer1
@ziwer1 4 жыл бұрын
go ahead man.
@BackToBackSWE
@BackToBackSWE 4 жыл бұрын
go for it!
@awarepenguin3376
@awarepenguin3376 4 жыл бұрын
There is a story by an ex google hiring committee. Allegedly the hiring committee was so stubborn that the managers submitted the packets of the the hc members (names shuffled obviously) and none of them were approved to be hired by google . It’s basically leetcode and luck at the end of the day.
@BillClinton228
@BillClinton228 4 жыл бұрын
@aware penguin Ive heard that story too. Im not sure how true it is but it perfectly represents hiring practices in modern IT. No one is good enough.
@junehanabi1756
@junehanabi1756 4 жыл бұрын
What is leetcode, I've seen it mentioned a lot lately just out of the blue
@ProjectAmoeba_
@ProjectAmoeba_ 4 жыл бұрын
@@junehanabi1756 Leet code is a website where you can practice your coding skills. Whether its in the Java or C++ or python etc language. The questions are ranked from easy, medium to hard. You can test your skills in areas like algorithms, data structure, shell or concurrency
@junehanabi1756
@junehanabi1756 4 жыл бұрын
@@ProjectAmoeba_ Thank you, that sounds very helpful.
@adityap8243
@adityap8243 4 жыл бұрын
More importantly I think companies tend to test you on really unrealistic measures. 1) In the age of Google, where I could do a quick search for things like syntax, and fix things on the go, the emphasis on writing error free code on a whiteboard is not doing justice to what you would normally do within the company. 2) Secondly, very few projects within the company are going to have a 45 minute deadline. Rather, if interviews actually took a real comprehensive subproblems that the company actually tackles and gives realistic timelines like 24-48 hours that would do justice to the actual experience. And the best part is you would be judged not only the solution but also readability, documentation, modularity etc. This would be a real measure of whether you are fit than to solve a DSA problem in 45 minutes using algorithms that you may never use on the job.
@mizutofu
@mizutofu 4 жыл бұрын
no way, i dont want to work for the company for free for 48 hours
@adityap8243
@adityap8243 4 жыл бұрын
Haha buddy! it's not going to be like that it's going to be a simulated problem not actual work, but the problem will highlight some of the work that you might end up doing within the company. To give you an example when I interviewed for this company which was a logistics based start up, they actually formulated a route planning problem with specifics that the company often deal with. I had a day to solve it, and I thought it was really smart and fun, because it actually went to the heart of contextual problem solving. Of course the problem was in no way as complex as the work you do there, but it assesses your problem solving within the context of what the company does.
@m00ny0z3
@m00ny0z3 4 жыл бұрын
To be fair, most coding interviews you can ask as many questions about syntax as you want
@adityap8243
@adityap8243 4 жыл бұрын
@@m00ny0z3 Fair enough, to be clear, I meant the general idea of writing bug free code on a whiteboard, most times you would be catching bugs in the editor on the go, a whiteboard is generally good for ideating and coming up with approaches and workflows, but I don't see any other advantage of using it post that, so what is the point of this process? Essentially, is there something terribly wrong with doing couple of runs of the program to see if you are going in the right path or to catch quick errors that come up, because you are going to be doing a whole lot of that on the job anyway.
@adityap8243
@adityap8243 4 жыл бұрын
Just to add , I agree with Kevin Naughton that you can't say the system is completely broken or shit, because the interview process has come a long way since the past and is definitely doing a better job at evaluation. But that does not preclude it from scrutiny and inevitable criticism because there are patent flaws for sure. Can it be better? Absolutely.
@losthighway4840
@losthighway4840 2 жыл бұрын
Something’s broken when you’re studying for solely the interview process. Someone could work at a FAANG for 10 years, apply to another FAANG and still need to go through this ridiculous process. Or waste some valuable personal time for maintaining these interviewing skills just for this purpose. They’re the same person at the end of the day, so what exactly is this for, other than a filtering tool for who will be compliant?
@alexleung842
@alexleung842 4 жыл бұрын
Pretty sure the only data structures I use at Amazon is List, Map, nested Map, and Json blob
@joshhardy5646
@joshhardy5646 4 жыл бұрын
Very very few companies have to use more or something homegrown. The language structures are typically highly optimized. See Java ArrayList as an example
@saidibrahim5931
@saidibrahim5931 Жыл бұрын
it's broken even senior software engineer with 20 years of experience admitted that and said you will never use in a real life what they asking in the interview
@charmdoesart9272
@charmdoesart9272 4 жыл бұрын
Awesome video :D I think another thing to remember is that they don't expect you to know everything in CS and it's okay to say you don't know or you are not familiar with a problem, most of the time if you have a solid foundation of data structures and algorithms you will be able to use that knowledge to find a solution, the key is to not panic and don't lie
@anirudhkumar9139
@anirudhkumar9139 4 жыл бұрын
One of the reasons work experience is not taken into account that much is also because most of the technology you will be working with in that company are proprietary. So, they are looking for people , who have the fundamental knowledge and can learn their proprietary tech easilly and quickly.
@daveg1159
@daveg1159 4 жыл бұрын
Truly said, the startups really focus on getting things done at speed, no Ds algo whatsoever. I realized this when I had started my career in them but as I switched onto a bigger company, I was being asked much on the algorithms, ds and a bit on the design patterns side.
@atift5465
@atift5465 4 жыл бұрын
This is a growing controversal topic. I deffinitely agree with most of your remarks on here. Understanding of ds&A is a great way to asses a candidate's computer science fundamentals as well as their problem solving and programming abilities, to a certain extent. The problem is that companies are using these as the ONLY assesment criteria to hire programmers. They may throw in behavioral and systems design but results from those interview sessions dont hold nearly as much weight to judge for a candidate as the DS&A portion does. A proper interview structure should asses these but also the candidate's experiences, show of passion through side projects, achievements, etc. These ds&a interviews can be a hit or a miss. Many times, people can get a question extremely tricky they may not be able to answer, ultimately deciding their fate. I would much rather want a well rounded engineer than a code monkey who knows ds&a really well.
@BillClinton228
@BillClinton228 Жыл бұрын
I don't agree, I've been a programmer for 9 years now and DS and A are a very small part of software engineering. Also alot of personality tests are not accurate in my opinion as anyone with an average IQ can taylor their answers to best suit the job requirements.
@namanonymus
@namanonymus 4 жыл бұрын
Colleges truly don't prepare you for coding interviews. If you don't have the right mentorship or don't do your research, you'll end up not being prepared for these interviews. It happened to me.
@Epidemeus
@Epidemeus 4 жыл бұрын
Did you end up at an internship?
@namanonymus
@namanonymus 4 жыл бұрын
@@Epidemeus I was referring to my experience when I came out of college 9 years ago. I did eventually land a decent job 3 months after college but the company was small and their interview was more behavior and job fit than focusing on coding skills.
@theguitargod12
@theguitargod12 4 жыл бұрын
I see your point with having a solid understanding of data structures and algorithms. And I think keeping it at a basic level is just fine. You want to see how the developer/engineer thinks live time and that is great. However, I have heard many stories, and have seen programmers never touch any code and just "memorize" the programming challenges. Hiring devs and engineers is expensive. You want to make sure you get the right person for the job. There are people who will blow you away in the interview. And then when push comes to shove, they have never programmed, never touched an ide, or have never done anything other than learning the DS and Algos. This is the problem that needs to be addressed in the industry. Studying is fine. Memorization is another topic. And there are a lot of people who just memorize the interviews and land the job over people who are talented and may not be as quick to solving as the others who have seen it 50 times before. That is the point. I can understand Google and the big tech companies doing it. You have to filter out people somehow because everyone is applying there. However, implementing a merge sort for your trip advisor interview is a bit ridiculous.
@briang3498
@briang3498 4 жыл бұрын
I was asked three LC mediums at Amazon for an L5 interview and then around 10 LC medium/hards at a mid size company....
@ariellyrycs
@ariellyrycs 4 жыл бұрын
Hey @nickwhite, Just in this last year, i have failed 1 Facebook, 1 Amazon, 2 apple, 1 Google, 1 Microsoft, and many other companies. I really appreciate your help, i have already done 600 leetcode questions, hackerank, pramp, etc. I still struggle a lot, i have no social life, and i have put all my bet on algorithms and data structures, I have been affected for some other companies that just ask for react and angular experience, and i have no portfolio, companies don't call me anymore, also i have an upcoming interview with fb, i hope it goes well.
@cloud5887
@cloud5887 4 жыл бұрын
dafuq i just read xD
@jackprot351
@jackprot351 4 жыл бұрын
You have to give more details. nobody knows why you failed more than you do...
@ohhimark8028
@ohhimark8028 4 жыл бұрын
How do you get all those interviews with no portfolio lmao
@holywoof6419
@holywoof6419 4 жыл бұрын
This is bs lool
@sqfzerzefsdf
@sqfzerzefsdf 4 жыл бұрын
ok so did you "do" 600 of those questions or did you look up solutions. anything that you can't do on your own doesn't count as actually solving it because you won't be allowed anything on an interview anyway. and how do you not have a portfolio? you got 0 projects to show?
@phouthasakinit
@phouthasakinit 4 жыл бұрын
Agreed, college itself DO NOT prepare you for those coding interviews. No even just the data structure and algo part of the interview. Coming out of college I did not feel ready to answer questions that the big tech interview were asking, let alone problems on leetcode.
@michaeldang8189
@michaeldang8189 4 жыл бұрын
Hey, even if you are a long time working engineer at the top companies, you are NOT prepared for those coding interviews. That puts everyone on the same ground, which could be good sometimes, bad sometimes, depending what situation you are in.
@sidhantsood5373
@sidhantsood5373 2 жыл бұрын
If you depend solely on your college for preparing for interviews, you’re gonna fail, big time. A good amount people are just there for that degree, and experience, and possible connections. That’s not to say however that they teach you nothing, but there are only a handful of college-related coding things that I’ve found useful.
@ll-sz9fl
@ll-sz9fl 4 жыл бұрын
Amazing how this channel became so much better with time. Like now is good. Now is worth it. Now I would join a Patreon.
@honprarules
@honprarules 4 жыл бұрын
There are people who have amazing skills but all of that goes out of the window because companies only care about someone who knows DSA. This costs a lot in terms of innovation and is the reason why some of the best talent ends up moving to a startup.
@dragonore2009
@dragonore2009 2 жыл бұрын
Perhaps my experience isn't typical, but I work for a fortune 500 company that develops software and I didn't get asked not one whiteboard question during the interview. They asked about agile, personal projects I worked on, general programming questions, such "What is an API", things like that, but no whiteboard questions. After the interview I got a call from the front desk saying they sent an offer to my email. I did expect some whiteboard questions, but alas there was none.
@JulioCesarjcfalcone
@JulioCesarjcfalcone 4 жыл бұрын
I work in the game industry and in there the questions are tricker and most of the time unrealistic in the sense of what the work actually is and it feels unfair, because most people would look on Stack overflow on how to use it properly and most of the time do normal work. So it's crazy to ask it for a entry level/junior position in a small to middle size company.
@AdarshMenon
@AdarshMenon 4 жыл бұрын
I completely agree with what you said. In my opinion data structures and algorithms are fine, and problem solving is also fine to some extent. But I do not like the type of question that check for some specific knowledge. For example some dynamic programming questions, the solution is based on some fact that may or may not "click" at that instant. Another example is some questions require you to know some math formula that you may know but can't remember. I think interviews should be testing for fundamental knowledge - like does this person know what data structure to use for a given problem ? Can this person come up with an algorithm and think of ways to optimize it ? Does this person think logically ? Can this person adapt to new technology easily ? And you are absolutely right about India. I have gone through interviews where the random question picked for me was hard at the same time my friend got a really easy question.
@ab0uts
@ab0uts 2 жыл бұрын
Facts about the randomization factor… thought about this countless times to myself
@kevincarr2334
@kevincarr2334 4 жыл бұрын
I can see why companies do it you should have learned this in college. The cost of a bad hire is so high companies are willing to accept false positives (not hire great qualified engineers), however it mainly just a preparation test. For me I Computer Science was not my college major, so I'm grinding and studying for my coding interviews right now to catch up. Great vid!
@losthighway4840
@losthighway4840 2 жыл бұрын
People keep repeating this, but is it really true? You can detect a person isn’t a good fit in a one hour artificial interview, but you can’t detect someone isn’t a good fit after several weeks on the actual live job? How is this expensive?
@sophiesparkle2464
@sophiesparkle2464 4 жыл бұрын
This is so true and make so so much sense and can relate a lot to it. Love your video
@Weaver_Games
@Weaver_Games 2 жыл бұрын
Testing only algorithms is like hiring a band for your wedding based on their ability to play any arbitrary scale on demand (let's say a D Minor Aeolian scale) in the octave you want but never checking if they can actually play any songs. I've been doing this for 12 years now. The bare reality most people don't want to face is 99% of software you're going to write in your job will be relatively straightforward. Even tricky stuff, once you get proficient and experienced, isn't really that hard anymore. The difficult part of making software is not programming. It's working together, it's schedule, it's planning, it's architecting, it's talking to the business or the PMs. Coding interviews test none of this. I don't care if you memorized A* and can dump it out on a whiteboard if you're a terrible person to work with.
@sebastianwardana1527
@sebastianwardana1527 4 жыл бұрын
In India i think, the job of the classic desk office programmer is still prevelant, the west outsources to india a lot, and they practice classical OOP I believe, plus, Indians who teach OOP and tech are really great at it, and I can really just implore anyone to check out theses videos...
@garrycotton7094
@garrycotton7094 4 жыл бұрын
I think my objections to these interviews are two-fold: - Understanding the methods - even understanding them deeply - is not the same as perfectly recalling every little piece of methodology and implementation detail to such a degree you can splurge it on a whiteboard perfectly. - Doing this in a situation where 2-3 complete strangers are intensely judging you while writing it up completely unassisted. In particular, the latter just evaluates based on the wrong personality traits/qualities for the job in my opinion. You're evaluating a person's ability to work in a pressured presentation role, a situation that will almost never arise on the actual job. If this were a job that required that kind of skill or quality, such as jobs in salesmanship, then it would make sense. But here, it makes no sense in my opinion.
@aghavvikas
@aghavvikas 4 жыл бұрын
I am from India. You're right ds and algorithms is big part here in interviews
@palashbehra9303
@palashbehra9303 4 жыл бұрын
They should be and will be!
@pha1994
@pha1994 4 жыл бұрын
Palash Behra They shouldn’t be and will be.
@TanayPrabhuDesai
@TanayPrabhuDesai 4 жыл бұрын
They shouldn't and will eventually not be
@sharathnair1702
@sharathnair1702 4 жыл бұрын
For freshers, they definitely will be because noone has actual industry experience other than maybe internships. Also such questions test the candidates logical/problem solving skill along with data structure and debugging skill
@abenaantwi9659
@abenaantwi9659 4 жыл бұрын
I love you nick. I'm 15 and you along with other youtubers have given me motivation
@nathanh3316
@nathanh3316 4 жыл бұрын
I am 15 too.
@shivrajnag12
@shivrajnag12 3 жыл бұрын
I have been using React and building stuffs for over a year now I have never came across using ds and algos in my project . Do you know how I optimize the performance of my react app by just replacing arrays with object to have O(1) access. Again those who made react are using BFS to implement Reconciliation and diffing algorithm for optimizing React and React Fiber uses Linked List.
@MrBranh0913
@MrBranh0913 4 жыл бұрын
The issue with DS&A questions is it leads to complex code. Many time the solutions to these problems are very sloppy and the code is complicated. It also makes you overthink problems. Some of the largest issues with code based today are over designed solutions. And complex code for simple things. Leading to code bases to be hard to maintain. I think to to a large extent an over focus on DS&A questions somewhat encourage complex designs. Or people think they need to build binary trees from scratch, because the interview put such a huge emphasis on them. I've seen some really messy code basis where people are actually writing thousands of lines of code to create graphs from scratch. And most of it is unoptimized and throw away code. Because DS&A questions are so geared towards beginners getting their first jobs. I don't feel there is enough counter balance on youtube and social media of the actual end result of these sort of interview questions. Yes its fine to understand this stuff. But often when you're writing code that impacts people, there are far more valuable things you should have. Meaning making simple solutions for complex things. That's great engineering.
@dawne2780
@dawne2780 2 жыл бұрын
I notice a lot of people saying stuff like “all they use to make decisions is these interviews” which is simply not true. The value in higher education is largely in networking. Companies consider who you know and how you know them, past experiences, etc to make these decisions. Part of coding interviews are, “if we ask this candidate to do an annoying task that needs to be done, will they be easy to work with and helpful or whiny and above it?” Your character is evaluated by them in interviews and by recommendations they receive from your former mentors and bosses.
@janphillipjuntado
@janphillipjuntado 4 жыл бұрын
Nick no offense but what shade do you use in your eye shadow? asking for a colleague.
@patrasuman
@patrasuman 4 жыл бұрын
Give me one real world example , where you would apply dynamic programming kind of algo in your web application.
@atilacorreia
@atilacorreia 3 жыл бұрын
I think the biggest problem with these types of technical interviews is that, at least for me, I need to be "in the zone" while I'm trying to solve something challenging. It's already hard to concentrate due to what is at stake and you add the fact you need to explain your thought process and the well-known tight time limit. The counter-argument is that they want you to collaborate with the interviewer (and avoid awkward silence), but if you bring that to real-life experience, you would most likely collaborate AFTER seeing their code in the code review platform (assuming pair programming doesn't exist anymore) or maybe in a meeting to discuss some complex system design together. Some medium and most of the hard challenges have the CS algorithms base but there is always a very tricky "gotcha". This "gotcha" was most likely found by a CS researcher or a CS genius and now really high and above-average IQ people can practice over and over and pretend they are geniuses as well.
@hechuan5075
@hechuan5075 2 жыл бұрын
Just wanted to reply to this. I very much agree on the rebuttal of the counter argument: treat the interviewer as a teammate and walks thru the problem together while talking out loud. First the assumption is that the interviewer is acting as a collaborative teammate. I have gotten so many silent interviewers Second, you are "collaborating" with someone that gets to determine if you get to double or triple your current salary. This puts oneself under huge pressure, even if you try to ignore that, personally i have not done enough leetcode and interviews to get past This point, and it's probably going to take me a few decades to get past this.
@cinguilherme
@cinguilherme 4 жыл бұрын
I'll like to add that data structures miss usage is very often the main source of bad design in programs. It is important to know them well. o/
@YasserSinjab
@YasserSinjab 4 жыл бұрын
I just start reading "The Algorithms Design Manual" after I failed amazon interview. Man, I am coder since a very long time, but I was way far from thinking like an "algorist". Even my code got better when I understood difference between data structures, time complexities, algorithms and when to use them. In those companies they are looking for an algorist: someone who design an efficient algorithm no matter what the language is.
@pranatis2314
@pranatis2314 4 жыл бұрын
Is it a good book for beginner's freshers?
@Yarrler
@Yarrler 4 жыл бұрын
@@pranatis2314 I used this book for my intro algorithms course back in college (my professor was the author of that book). The book assumes you have a basic understanding of coding and some familiarity with data structures (as typically taught in the first few semesters of a CS program). So the book is beginner friendly if you have the right prerequisites. The bigger issue with the book is it has a lot of errors. Not just typos, but incorrect explanations and diagrams, and nonsensical exercises. if you are going to use this book, I recommend supplementing it with other material and keep the errata near by. With that said, I do recommend this book.
@YasserSinjab
@YasserSinjab 4 жыл бұрын
@@pranatis2314 I agree with @Yarrler you need to have a little understanding of coding and what are data structures in general. I almost finished half of the book. IMHO some parts are hard to digest. Others are super easy. I like war stories and take-home lessons: the way he approach the problem is amazing. My way of thinking to solve any problem has changed: that doesn't mean I am expert now because I have to leetcode to become better. Exercises are the only thing I do not like about this book: some of them I don't even understand (like what do you want me to do? is the issue in my brain or really the questions are not written in an easy way to understand). But there are others which their answers are solved in amazing way and you will learn a lot.
@isaac80745
@isaac80745 2 жыл бұрын
I see that it's now common with many companies and it's a problem
@ankushgupta630
@ankushgupta630 4 жыл бұрын
True about INDIA stuff , leetcode and codeforces have become really big here almost all companies have an online round including DS-algo and then depending on the level of firm it varies !
@developandplay
@developandplay 4 жыл бұрын
To be honest I think preparation for the interview shouldn't matter. Just because you study up on a subject for some amount of hours doesn't mean you are an expert on it.
@developandplay
@developandplay 4 жыл бұрын
@@killaken2000 If there was an agreed bar then I would agree with you. For example I got asked medium level questions while some of my friends where even asked difficult ones.
@developandplay
@developandplay 2 жыл бұрын
@Real Napster Yea that was my point. You should be able to pass them from your experience.
@sortof3337
@sortof3337 4 жыл бұрын
Literally got ad for algoexpert.
@swastiksingh8452
@swastiksingh8452 3 жыл бұрын
First time huh..
@whit3rose
@whit3rose 2 жыл бұрын
I have an interview in 15 mins and is a leetcode interview and is a startup and I have like 0 idea on DSA. I'm feeling bad and came here to cope.
@dadiramya278
@dadiramya278 4 жыл бұрын
Nick interview prep playlist??
@smonkey001
@smonkey001 4 жыл бұрын
Hey, it's cool to remember the implementation of algorithms and data structures. I wanna ask what happen if I just completely quit leetcoding for 3 years. Do I still have them in my brain, like riding a bicycle? Can I still go in an interview and the complete code gonna come out of my brain with no edge cases missing?
@paulgarcia2887
@paulgarcia2887 4 жыл бұрын
No... you would have likely forgotten. To know for sure just start doing leetcode problems again and see if you struggle or if it's easy making merge sort, bubble sort etc...
@TokyoXtreme
@TokyoXtreme 2 жыл бұрын
If you study properly in the beginning, you can retain the strategies permanently and apply them when needed in the future. Randomly doing leetcode problems in no particular order probably won’t be of any help though. So instead, learn which strategies are most common for which data structures, and they should be easier to remember. For example, questions based on strings generally have solutions based upon two pointers and shifting pointers, using hash maps to store previously visited characters and so forth.
@neocephalon
@neocephalon 4 жыл бұрын
Sets are just classes with prototyping as a means to connect each one to any other class
@ShubhamChhimpa
@ShubhamChhimpa 4 жыл бұрын
Very informative thanks 👍
@mthetree
@mthetree 4 жыл бұрын
In India the number of applicants to each and every job is very very high, so to eliminate 95% of applicants, they use competitive programming.
@jss9371
@jss9371 3 жыл бұрын
With his having a million views and yours having 55k, it is pretty clear what most experience people actually think.
@venivecivedi
@venivecivedi 4 жыл бұрын
It's a necessary evil. If we didn't have coding challenges / white boarding, then companies might have to go back to relying on what school you went to and what your gpa is, asking brain teasers etc etc. I say this as someone who has failed a bunch of coding challenges haha...
@lukasberk9303
@lukasberk9303 4 жыл бұрын
Why not give them a assigment and let them build that with all the tools they need. like ben explained in his video.
@MrBranh0913
@MrBranh0913 4 жыл бұрын
Its not a necessary evil. Before this DS&A fad. It was rare to ask this in interviews. And there are still companies that don't bother. I think there were less bad hires, because people actually knew how to interview. Today no one knows how to interview. They just give some random algorithm and judge solely on that. If someone crams right they get the job. Leading to pretty bad hires, because all this showed is someone crammed the interview and weren't hired based on their experience.
@danavram8437
@danavram8437 4 жыл бұрын
@@lukasberk9303 Because they would lose more time to analyze it.
@lukasberk9303
@lukasberk9303 4 жыл бұрын
@@danavram8437 you can just watch along someones proces of thinking half a hour and know enough I think
@hatrick3117
@hatrick3117 4 жыл бұрын
shots are fired
@jackprot351
@jackprot351 4 жыл бұрын
Hi Nick. I am going to be a junior in college next semester, and I switched to CS my first semester of sophomore year. So, I am a little behind. Could you make a video talking about what students in the beginning of their CS career should be spending their time on? I already took OOP, Discrete math, and data structures. My school teaches DS and Algorithms in Java exclusively. I know nothing about frameworks, APIs, libraries, and don't even know what those words mean. I can't get a cs internship this summer because I just switched to a CS major and also because of covid... I have an idea for a project I want to make in java this summer, but after watching your video on a good developer portfolio, it seems like I need to be exploring other areas, and soon, because right now I only have knowledge in java and that's it. I only have 4 semesters left, one of which is probably going to be online (because of covid). Could you make a video talking about the most useful things to start self-teaching, for students that might be in a situation similar to me, with not a lot of diversity in what they know?
@tinanguyen8068
@tinanguyen8068 4 жыл бұрын
i'm in the same position as you! upcoming junior just switched to cs as well as the DSA only in Java at my college. let me know what you come up with!
@CHE6yp
@CHE6yp 4 жыл бұрын
I was asked 1 question on my current job tech interview. Write a function that returns 2 when it gets 1, and returns 1 when it gets 2, without using if statement.
@oscarwang7920
@oscarwang7920 4 жыл бұрын
Make a global array 1 ,2 and remove whatever it’s passed in from that array then return the remaining.?
@CHE6yp
@CHE6yp 4 жыл бұрын
@@oscarwang7920 nah then you'd be returning an array. Or maybe you'd return array[0], then I guess it might work. But there is another answer
@TheBullet0070
@TheBullet0070 4 жыл бұрын
@@CHE6yp I would swap the lowest two bits. So if number ends with 0001(=1), i will make it 0010(=2). The other way around, i get 0010, i swap two bits, i get 0001.
@TheBullet0070
@TheBullet0070 4 жыл бұрын
@@CHE6yp I mean not "swap", but "reverse", sorry. But swapping will work too )
@CHE6yp
@CHE6yp 4 жыл бұрын
@@TheBullet0070 yeah that would work. But the expected answer is much simpler still. Much much simpler, that's the catch.
@thalibmuhammad9519
@thalibmuhammad9519 2 жыл бұрын
my question is those algorithm and data structure, how often we gona implement those knowledge to our daily job basis?
@jackvial5591
@jackvial5591 4 жыл бұрын
The FANG companies want engineers that can build a framework like React not just use it. Startups don’t have the time or resources to experiment with building new tools and frameworks.
@MrBranh0913
@MrBranh0913 4 жыл бұрын
You don't need knowledge of algorithms to build frameworks
@therealjezzyc6209
@therealjezzyc6209 4 жыл бұрын
@@MrBranh0913 How do you think code works? Ultimately everything is a data structure processed by the machine using an algorithm. If you don't know which algorithms are most efficient for the data your framework will handle, then you'll end up writing crappy, bloated frameworks.
@ChamplooMusashi
@ChamplooMusashi 4 жыл бұрын
Asking to implement merge sort isn't really going to show that someone is intelligent just that they have prepared for that specific question. Doing well on an interview is more of just getting lucky with having studied the exact thing relating to what the interviewer is asking you to do.
@colto2312
@colto2312 4 жыл бұрын
@@therealjezzyc6209 Pretty sure you can just google what would be best XD
@toubeelo1979
@toubeelo1979 4 жыл бұрын
For the small to mid-size companies, I think it's better to do pair programming for interviews because you get a better feel of how the person works. Someone can be good at solving DS and algorithm problems be a horrible worker, like one of your videos where you're eating Doritos (forgot the name of the video). Lol.
@Cyberfoxxy
@Cyberfoxxy 4 жыл бұрын
problem is when startups starts pulling extremely difficult tests from Codility, wont spare any ear to a failing dev and instead hires incompetent programmers. Which incentivize specializing in algorithms and not actual programming. Which hurts the entire industry in the long run.
@jinxscript
@jinxscript 4 жыл бұрын
Where is the source of that information ?
@DRplatano219
@DRplatano219 4 жыл бұрын
I'm just learning python with a different IT background...so....am I in over my head?
@sunclaude
@sunclaude 2 жыл бұрын
I agree with Ben. If You plan to be hired as a miner, they won't ask You to dig a hole with a spoon. In fact that's exactly what the coding interviews are. Most of the interviewers think that if you can put one brick on the top of another, you can build the Twin Towers and you're hired. That's not exactly true. I saw people perfectly able to put together two datastructures but sucking when they had to build and advanced multithreaded system with no documentation of ouf libraries old decades, in COBOL or whatever. I once I got a so ignorant interviewer that once I gave him a non common (undocumented) solution based on my experience looked at my like I was a witch of the middleages and he the pope of Rome.
@abhyudaypurohit226
@abhyudaypurohit226 Жыл бұрын
Tell me one instance when u have used tress in industry ?
@abdelrahmanadel8998
@abdelrahmanadel8998 4 жыл бұрын
Actually I see your solution on the channel and your explanation is very good ,I hope u teach ds and algo on your channel,it will be very good
@chitranshsaxena59
@chitranshsaxena59 4 жыл бұрын
In India, for a good company, with a decent package, I personally found that they start with an enterprise issue or anything related to Job profile, and logically relate to Algorithm or Data Structure. For a very Basic example how Stack frames and Heap memories work, how we can optimize our code once we know more about whats happening on memory level. It's kinda cool to relate everything.....Good channel btw, has helped me a lot
@teesharp5737
@teesharp5737 4 жыл бұрын
Great video! We absolutely need these interviews because there are thousands of people applying to these mid-size to big positions, and it's a good way to weed out people who don't go the extra mile / are not as dedicated.
@ziwer1
@ziwer1 4 жыл бұрын
so kids should just skip college because it's all useless and do leetcode instead.
@danavram8437
@danavram8437 4 жыл бұрын
They use them because they can filter out a large amount of candidates in a short amount of time (for the company, as the candidate has to prepare for weeks and/or months). And their data shows that those few who pass do well for the most part on the regular job. Nothing more, nothing less.
@PatternShift
@PatternShift 7 ай бұрын
“When you’re working for the company and you have to implement these data structures” 😆 😆
@videogamesare1
@videogamesare1 4 жыл бұрын
Good stuff man
@officialnizam
@officialnizam 4 жыл бұрын
In India everyone's obsessed with competitive programming, which are basically harder math problems, very few of them actually need a specific data structure or an algorithm.
@kolyxix
@kolyxix 2 жыл бұрын
I see your point. As computer science grads, you are required to know algoritms and Data structures. Coding interview is about whiteboarding or writing algorithm and data structures. So, each time we go for job interview we spend more time preparing for the coding interview than the actual job itself. But there are manys ways of writing algorithms, and expecting people to know how implement each algoritm is a challenges, especially when it has nothing to do with actual job. Agree or disagree? Again, you would have to ask yourself if that is what you want to continue to put yourself through for rest of career. Going to multiple rounds of interview just to implement advance algorithm. Do you think most people would enjoy having to memorize tons of algorithm and data structures, up top of 3rd round 4th round of interview. Is really worth it?
@ddmozz
@ddmozz 4 жыл бұрын
The only thing I don't get it's why it's FAANG when Microsoft is so much bigger than Netflix.
@TheRealSaintNickNorthside
@TheRealSaintNickNorthside 3 жыл бұрын
Its a finance/wallstreet perspective of tech because Microsoft was already a large company by around 2010. The FAANG companies grew a shitload from 2010-now, so they're lumped together as the FAANG stocks.
@GyaneshISHU
@GyaneshISHU 4 жыл бұрын
Startups and midsize companies cannot afford to hire people without actual skills for a particular position, such as Frontend Engineer, so they need only to consider the coding experience for the candidate. Big Tech companies can train people, who although don't know Web dev but are solid in their fundamental DS/Algo skills, which work as metric for learning ability of a ay given tech stack or role.
@hellowill
@hellowill 4 жыл бұрын
agree with you, University/College dont tell you shit about leetcode its all word of mouth between students.
@Scarsofevil
@Scarsofevil 4 жыл бұрын
I agree with the points but algos should be used to test how the engineer goes about solving a problem instead of whether or not a problem is right or wrong. It is crazy how the standard question asked back then would be fizzbuzz. Now they are just asking all sorts of crazy
@pujakarmakar7462
@pujakarmakar7462 2 жыл бұрын
I got asked medium/hard level algo questions for a content writer position 😆
@ziwer1
@ziwer1 4 жыл бұрын
I don't think Ben suggested DSAs are useless. He said they have their place and maybe justified at FAANG + other top companies. The problem is the bandwagoning or the copy + paste approach lazy approach in the industry. DSAs are very important but should be the only measure of wether one qualifies for a job or not. If a company uses react, more emphasis should be placed on your react knowledge + experience in order to hire engineers who will hit the ground running. The industry as is requires constant & quick learning. I still love your channel & kevin Naughton's and will continue using them to polish my DSAs knowledge.
@soham7226
@soham7226 3 жыл бұрын
Why these big companies don't use sorting algorithms to sort applicants 🙄🤣
@damilareemmanuel
@damilareemmanuel 4 жыл бұрын
I have got a coding test at FANNG in the next few days, my data structure and algorithm is almost trash. I would just do it for fun
@cloud5887
@cloud5887 4 жыл бұрын
what you mean by "challenge"? Is that something everyone can attend?
@damilareemmanuel
@damilareemmanuel 4 жыл бұрын
@@cloud5887 wrong choice of words, it's an actual coding interview test
@cloud5887
@cloud5887 4 жыл бұрын
damilare emmanuel alright cool. Good luck
@louiebee4345
@louiebee4345 4 жыл бұрын
Man, imagine getting in. "Yo, Im a FAANG engineer for the heck of it" lol
@PeterAllen09
@PeterAllen09 2 жыл бұрын
I don't think anyone has a problem with Google having difficult interviews and very high employment standards. Google is involved in nearly every domain in software engineering and thus needs a highly competent, flexible staff. It becomes a problem when companies like Home Depot, or Etsy, or Petco think they need to have the same hiring standards as Google. Those companies don't need the same quality in their engineering staff because they don't have nearly the same requirements. This would be like the University of Wisconsin-Madison deciding it's going to raise its admission standards to the level of MIT and Oxford. If that happened, UW-Madison wouldn't have any students.
@thatgameguy4929
@thatgameguy4929 3 жыл бұрын
Netflix is doing the best of three matches in COD to make it to the onsite.
@DriveandThrive
@DriveandThrive Жыл бұрын
“A few weeks to a month…” 😂 try like 3-6 months for me
@frankjin7086
@frankjin7086 2 жыл бұрын
your channel is awesome buddy.
@jamesedwards9054
@jamesedwards9054 4 жыл бұрын
I am not really a big fan of algorithms on interview but that is only because I am not good at them (LOL). I feel like I am pretty good when it comes to just doing the development part (android developer). So when I am asked to do algorithms and I don't get the job it sucks. But who is to say that the chances of you getting a job would be any different because if the standards are lowered then they are lowered for everyone not just you. It might even be harder to get a job so why complain, just struggle through it an hopefully one day you get it. Man I sure hope that day comes soon because sometimes I feel like I am at the end of the rope.
@islammurtazaev4891
@islammurtazaev4891 4 жыл бұрын
Should have a question mark at end of the title
@TahsinAhmed-yj9ns
@TahsinAhmed-yj9ns 4 жыл бұрын
In current situation there is no better existing way to test a candidate, those who are good at competitive coding are supposed to be good learners so they are believed to master those development related skills in short period of time after joining. Some people here are telling that competitive coding is a shortcut way to enter a big company, lol no man it is so freaking hard comparing with development work so it is considered that if u r good at contest like coding u r smart and big companies dont always run on existing technologies they want to innovate new things too that's when those smart people would be a great help with their problem solving experience which is not even that much needed in a day to day job
@Alfram
@Alfram 4 жыл бұрын
Honestly I think it’s a fair process. Their an equalizer that will give you a fairly objective and unbiased overview of a candidates problem solving. Doesn’t matter if you come from an Ivy League, a state school or a random liberal arts college in the middle of nowhere. It gives everybody a shot. They are hard though don’t get it twisted, some of these questions can be difficult to wrap your head around but it’s not impossible. And hey nothing ever worth achieving was easy right?
@kusayfarhan9943
@kusayfarhan9943 4 жыл бұрын
There are other countless industries where you don't have to go through a ridiculous interview process just to get a job. Most of these companies are doing this simply because the industry is saturated. Doctors don't have to go through a process like this when applying to hospitals. These companies think they're doing critical work. I think the world would be just fine if a Software Engineer messed up a button on Facebook vs a doctor botching a surgery. The filtering in the medical field happens before medical school, in software eng it happens every time you apply to a job.
@Alfram
@Alfram 4 жыл бұрын
@@kusayfarhan9943 have you ever read a book on basic economics man? that's not how supply and demand works. You really think FB engineers get paid for how they place a button lol, you need to understand their core business and why they are one of the most valuable companies ever. Whether or not you think something is essential or not is irrelevant. There's obviously a market for it otherwise the company would seize to exist. Besides a lot of companies dont even ask that hard of questions
@optimizedpran1247
@optimizedpran1247 4 жыл бұрын
Kusay Farhan are you saying you want our industry to be like medicine, law or banking? In these industries pedigree gives you a much better boost. I’d rather have a ridiculous interview process that can equalize pedigree than have massive barriers.
@anastasias9053
@anastasias9053 4 жыл бұрын
A system design question is about your experience. They don't ask junior level engineers about it, but they expect more senior level engineers be able to build systems. As I see it, an interview process in FANG companies is fair. Yes, you need to practice but this is applicable for all big Tech companies, you don't have to practice for every single company out there. You spend one month practicing and you can get many offers, isn't it cool?
@thatgameguy4929
@thatgameguy4929 3 жыл бұрын
If you want to compete to get into FANG, sure, filter out a large pool with a high bar. If you just want a job, why do they waste your time with this stuff? Simply asking you questions about how you would solve problems will show if you are genuine or fake. A casual conversation is all it takes.
@techbarikcom
@techbarikcom 4 жыл бұрын
I'm following you for a year!
@eyesopen6110
@eyesopen6110 2 жыл бұрын
Puzzles require you to spend time on .. puzzles, instead of useful things like AI, threading, system design, and application design... Its entirely a waste of time.
@derekw6811
@derekw6811 4 жыл бұрын
I know for a fact there’s some luck involved in the Google interview
@Yvefutura
@Yvefutura 4 жыл бұрын
Leetcode battle with bets?
@crisag.2698
@crisag.2698 4 жыл бұрын
Nick you hit the nail on the head! It's a way for big companies who have their pick of the cream of the crop to filter out candidates. Furthermore, it's very beneficial to understand fundamentals of DS and Algos. Even if you won't be implementing the algorithm yourself, you will know what options are available to you for a specific task, and will be able to analyze the trade offs between them.
@BrendenBishop
@BrendenBishop 4 жыл бұрын
I look at this as testing for smarts rather than development skills. I think most of your job is learning on the fly and having the mental discipline and aptitude to be able to do that. And I think, doing these DS and Algo problems are a good way of testing that. It's not testing your ability to do the tasks required, its testing your ability to apply knowledge that you've worked hard to learn, there's a big difference. If you work for a company, your immediate job can change, companies shift priorities, goals, and even product segments all the time. You may have been grinding angular and now you pivot to writing some kind of processing app in Java. If they just interviewed you on your ability to write angular components, there's no way of knowing how you will do in the new job. At least, so far, with the DS and Algo approach, they can test that you can learn on your own, discipline yourself to put the time in, and then apply it successfully. This same pattern is what anyone working will use when they are trying to solve problems the company needs to solve, NOT just coding problems. “It doesn’t make sense to hire smart people and tell them what to do; we hire smart people so they can tell us what to do.” - Steve Jobs At e end of the day, it depends on what the company wants. For some smaller companies or startups they mostly just want doers to pump out work asap, however most of these FANG tech companies want smart people who can also grow and lead, not people just super good at carrying out coding tasks. These interviews really favor your mental aptitude more so than your skills (skills are needed for the job, aptitude is needed to do more than just the job). While yes, of things in coding day to day can be googled and then implemented, it would be incredibly difficult to differentiate candidates in those types of interviews. Interviews are not meant to necessarily hire the perfect candidate, they are meant to achieve the most consistent and measurable way in hiring the right people at scale. These people may not necessarily be the perfect candidate and that's fine, if the end result is producing OVERALL at scale better talent than other methods. If DS and Algo interviews were not producing good talent and employees in the workplace, I'm sure it would have been changed.
@imshafay
@imshafay 4 жыл бұрын
I have my AWS 2nd SDE interview, Any tipssss ????
@ethanyoung8703
@ethanyoung8703 4 жыл бұрын
prepare LP questions...
@numseidizer
@numseidizer 4 жыл бұрын
@@ethanyoung8703 lp?
@oxanda7687
@oxanda7687 4 жыл бұрын
I think anyone who’s ever interviewed people or had to review resumes can attest to the fact that you need to filter people out *somehow*. There’s a lot of people who have a 4 year degree who can’t solve a fizz buzz 🐝
@MrBranh0913
@MrBranh0913 4 жыл бұрын
There are better filters. Algo questions are just lazy
@pcgamer881
@pcgamer881 4 жыл бұрын
Obviously people should be filtered out; the problem is that the whole interview process with ds/algo is ridiculous now, way beyond the scope of a simple fizzbuzz problem.
Why Coding Interviews Are STILL Broken
8:49
Melkey
Рет қаралды 7 М.
Facebook Coding Interview Question - findLongestSubarrayBySum
13:47
Khóa ly biệt
01:00
Đào Nguyễn Ánh - Hữu Hưng
Рет қаралды 20 МЛН
Which one is the best? #katebrush #shorts
00:12
Kate Brush
Рет қаралды 27 МЛН
World’s Deadliest Obstacle Course!
28:25
MrBeast
Рет қаралды 129 МЛН
Self Taught Programmers... Listen Up.
11:21
Nick White
Рет қаралды 1 МЛН
How to use Cracking The Coding Interview Effectively
9:42
Nick White
Рет қаралды 255 М.
Why Good Programmers FAIL Coding Interviews
8:15
Sahil & Sarra
Рет қаралды 337 М.
Google Coding Interview Question - Sum Of Two
11:46
Nick White
Рет қаралды 196 М.
Reacting to Controversial Opinions of Software Engineers
9:18
Fireship
Рет қаралды 2 МЛН
If Coding Interviews Kept It Real
4:16
Keep On Coding
Рет қаралды 635 М.
I Solved 1583 Leetcode Questions  Here's What I Learned
20:37
ThePrimeTime
Рет қаралды 539 М.
Amazon Coding Interview Question - Rotate Image
17:26
Nick White
Рет қаралды 244 М.
Gizli Apple Watch Özelliği😱
0:14
Safak Novruz
Рет қаралды 3,7 МЛН
Lid hologram 3d
0:32
LEDG
Рет қаралды 7 МЛН
сюрприз
1:00
Capex0
Рет қаралды 1,7 МЛН
После ввода кода - протирайте панель
0:18
Купил этот ваш VR.
37:21
Ремонтяш
Рет қаралды 299 М.