Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "algorithm interview"
-
Lads, I will be real with you: some of you show absolute contempt to the actual academic study of the field.
In a previous rant from another ranter it was thrown up and about the question for finding a binary search implementation.
Asking a senior in the field of software engineering and computer science such question should be a simple answer, specifically depending on the type of job application in question. Specially if you are applying as a SENIOR.
I am tired of this strange self-learner mentality that those that have a degree or a deep grasp of these fundamental concepts are somewhat beneath you because you learned to push out a website using the New Boston tutorials on youtube. FOR every field THAT MATTERS a license or degree is hold in high regards.
"Oh I didn't go to school, shit is for suckers, but I learned how to chop people up and kinda fix it from some tutorials on youtube" <---- try that for a medical position.
"Nah it's cool, I can fix your breaks, learned how to do it by reading blogs on the internet" <--- maintenance shop
"Sure can write the controller processing code for that boing plane! Just got done with a low level tutorial on some websites! what can go wrong!"
(The same goes for military devices which in the past have actually killed mfkers in the U.S)
Just recently a series of people were sent to jail because of a bug in software. Industries NEED to make sure a mfker has aaaall of the bells and whistles needed for running and creating software.
During my masters degree, it fucking FASCINATED me how many mfkers were absolutely completely NEW to the concept of testing code, some of them with years in the field.
And I know what you are thinking "fuck you, I am fucking awesome" <--- I AM SURE YOU BLOODY WELL ARE but we live in a planet with billions of people and millions of them have fallen through the cracks into software related positions as well as complete degrees, the degree at LEAST has a SPECTACULAR barrier of entry during that intro to Algos and DS that a lot of bitches fail.
NOTE: NOT knowing the ABSTRACTIONS over the tools that we use WILL eventually bite you in the ASS because you do not fucking KNOW how these are implemented internally.
Why do you think compiler designers, kernel designers and embedded developers make the BANK they made? Because they don't know memory efficient ways of deploying a product with minimal overhead without proper data structures and algorithmic thinking? NOT EVERYTHING IS SHITTY WEB DEVELOPMENT
SO, if a mfker talks shit about a so called SENIOR for not knowing that the first mamase mamasa bloody simple as shit algorithm THROWN at you in the first 10 pages of an algo and ds book, then y'all should be offended at the mkfer saying that he is a SENIOR, because these SENIORS are the same mfkers that try to at one point in time teach other people.
These SENIORS are the same mfkers that left me a FUCKING HORRIBLE AND USELESS MESS OF SPAGHETTI CODE
Specially to most PHP developers (my main area) y'all would have been well motherfucking served in learning how not to forLoop the fuck out of tables consisting of over 50k interconnected records, WHAT THE FUCK
"LeaRniNG tHiS iS noT neeDed!!" yes IT fucking IS
being able to code a binary search (in that example) from scratch lets me know fucking EXACTLY how well your thought process is when facing a hard challenge, knowing the basemotherfucking case of a LinkedList will damn well make you understand WHAT is going on with your abstractions as to not fucking violate memory constraints, this-shit-is-important.
So, will your royal majesties at least for the sake of completeness look into a couple of very well made youtube or book tutorials concerning the topic?
You can code an entire website, fine as shit, you will get tested by my ass in terms of security and best practices, run these questions now, and it very motherfucking well be as efficient as I think it should be(I HIRE, NOT YOU, or your fucking blog posts concerning how much MY degree was not needed, oh and btw, MY degree is what made sure I was able to make SUCH decissions)
This will make a loooooooot of mfkers salty, don't worry, I will still accept you as an interview candidate, but if you think you are good enough without a degree, or better than me (has happened, told that to my face by a candidate) then get fucking ready to receive a question concerning: BASIC FUCKING COMPUTER SCIENCE TOPICS
* gays away into the night53 -
They announce the results and that was where the fucking plot twist was.
I was *not* on the list. I was devastated, to the point of depression. I refused to get over it, sulked at home, fell sick, skipped college for next two weeks straight. It took a few more days for me to recover.
After several visits from my friends and a lot of convincing, I decided to go back to college. I felt hopeless and had pretty much resigned to my fate. Being the idiot that I am, I missed several other interview opportunities during that interim when I was despairing-away.
Semester exams were about to start and I get a call from my staff saying I had cleared the coding exam for one of the companies that was coming for recruitment the next day. I had written this exam like several months ago and didn’t even remember having written it. It was such a short notice and I had zero time to prepare and my psyche didn’t want to(remember how I had resigned to my fate?).
I did manage to make it to the interview. I was expecting a tough interview (this company had a reputation for having tough interview rounds) but all I got was a bunch of tree and linked list and search algorithm related questions (internship interview). I had two rounds. It did really go well but I had learnt to not get my hopes up. Then I noticed other interviewees being called for a third round and they asked me to go home. I was like “meh”. I was used to it at that point in time.
Very unexpected to me, (but i’m pretty sure y’all have guessed at this point) I get a call saying, they have recruited me as an intern! 6 months later, I was working as an employee!
When I look back today, I realize that my current job, in every way, is waay better than the one I had so desperately wanted! The pay, the timing, the location, my actual job description, all of it! As a bonus I have an awesome manager who trusts me! I work with remotely with a team with such high standards and I learn something new everyday.
In my two years here, I have built a couple automation systems from scratch, I have mentored an intern and got him a full time offer, I have had two free two-week trips to the US and I have been promoted once! I’m so glad I was rejected that day (:
Thank you for reading!17 -
I was interviewing this guy who's been a dev for 12 years. Apparently got laid off in his small town company because of covid.
So I asked him to write an algorithm that loops through a list and returns the largest number.
Not only could he not do that after trying for 15 minutes, but he also spent an entire minute ranting about how algorithmic questions were dumb and unnecessary in this day and age and you can google these things without having them memorized anyway.
The point of an algorithmic question in an interview is not to see if you can memorize the fucking thing. It's to see if you're methodical enough to reason through what you don't know and arrive at a decent solution all the same.
What do you guys think? Was I somehow the asshole here? It was a JavaScript job and the product was fairly complex, not just HTML bullshit.48 -
(Interview for sde-3 position)
(continuation of https://devrant.com/rants/2132431/... )
Interviewer - *opens laptop. Gives a question.* solve this.
Me - *a bit surprised that such questions were being asked on a sde-3 level*
this is the 4th or 5th question from geeksforgeeks, isn't it? I know the answer to this. Do u still want me to solve it?
Interviewer - *not believing me* Yes
Me - okay. Well this *writing down the original solution mentioned on the site* is the verbatim code mentioned on the website, with complexity O(n^2).
However I feel this is not the optimal solution. Let me write a better solution.
*I provide a better solution*
This has a complexity of O(n log n) . What do you think?
Interviewer - Nope. This could be a lot better.
Me - okay. Let me see. Did some minor changes, added some caching (obviously this will have no effect on the base algorithm) etc
How about now?
Interviewer - nope. Still not good.
Me - okay. Can you tell me how to improve it?
Interviewer - no we are not allowed to solve problems for you. It is not our interview, it is yours.
Me - that makes no sense. Interviews are a two way street. I'd very much like to know the optimal answer to this.
Interviewer - okay
*copies down the answer from geeksforgeeks*
This is good
Me - *at first I thought this was a prank or something. *
I just mentioned this answer here.
Then I spent the next 10 minutes providing a BETTER solution.
May I know how yours is better?
Interviewer - this solution has 2-3 loops. Yours has a function calling itself.
Me - that's called divide and conquer using recursion mf!
Anyways let's take an example and do a dry run.
Interviewer - okay
*we do dry run*
Interviewer - oh yes. Yours ran faster. But it will run fast only sometimes.
Me - yes. Each time the algorithm rolls a dice to decide if it should run fast or slow. You have one goddamn awesome weed dealer man.
I got to go. Thank you for meeting me.14 -
My second job. I've been hired as a research specialist, not a developer, but they found out I could code during the interview.
Boss: hey, so we have our main product line that shares the control panel for all the models, right?
Me: unh, yeah
B: well, we need to know how it works.
M: sorry?
B: yeah, I mean, we should have a manual with all the tech documentation so we know how everything works
M: ...and didn't you handle the tech docs to the developers?
B: uh...no, actually we requests feature to the devs (note: external company) with a phone call, or email...now we need the specs.
Me: omg
...
The other company (which is part of the same group) handles me the source code.
It is a huge, 25k lines of spaghetti written by at least 7 people, one at a time, uncommented.
After a month I produce a 50page doc with how everything works, after actually compiling my resignation letter 3 times.
M: boss, here the docs
B: fine, I'll take a look
15 mins later
B: this is not what we need! You cannot describe those algorithm like this!
( I described the algorithms with their block flow, with a punctual verbal description)
M: umh.. So how do you need it?
B: we need an excel table, with all the entering conditions on the rows and all the exit conditions in columns, and the description of the condition of work in the crossing cells!
M: are you even serious?7 -
when you screw up at a coding interview because you couldn't remember an algorithm you havent used in 7 years.4
-
Not having finished any education, and writing code during interviews.
I have a pretty nice resume with good references, and I think I'm a reasonably good & experienced dev.
But I'm absolutely unable to write code on paper, and really wonder how some devs can just write out algorithms using a pen and reason about it, without trying/failing/playing/fixing in an IDE.
Education I think.
I can transform the theory on a complex Wikipedia page about math/algorithm into code, I can translate a Haskell library into idiomatic python... but what I haven't done is write out sorting functions or fibonacci generators a million times during Java class.
I don't see the point either... but I still feel utterly worthless during an interview if they ask "So you haven't even finished highschool? Can you at least solve this prime number problem using a marker on this whiteboard? Could you explain in words which sorting algorithm is faster and why?"
"Uh... let me fetch a laptop with an IDE, stackoverflow and Wikipedia?"22 -
My Interview question was simple, just :
Create an algorithm using **JAVA** accepting row input which output corresponding diagram :
1.
*
**
***
****
2.
*
**
***
****
3.
54321
4321
321
21
1
I said, well this going to be easy. Turns out they give me one sheet of FUCKING PAPER. ARE YOU OUT OF YOUR MIND? THIS IS JAVA NOT A FUCKING PYTHON.
But in the end i complete the test except i don't write the :
public stupid static motherfucking main(String[] dick){}
in every single number. Got Zero in the test. Didn't get the job.
I win.13 -
I went on an interview was given an algorithm to solve, solved it in 30 mins and they had allocated 20 mins for it. So I guess I suck. I build shit, I don't do algos that often so I'm obviously rusty.
interviewer: so why should we hire you over a CS graduate.
me: cause I can get shit done.
... akward silence
interviewer: what do you mean by that? like html and CSS?
me: as you can see, I have built large scale real-time web apps with React/Redux (the stack they supposedly use and the position they're hiring for!) the knowledge I have is practical, it can't be learned from books, and it can't be learned from a course. Only building, breaking and rebuilding over time will teach you this knowledge. So essentially a CS grad, who hasn't committed the same amount of hours as I have, can't possibly match me. But they probably can better explain the real world applications of using linked lists...and won't have to Google what Pascal's triangle is like I had to....
interviewer: I see. we will be in touch.
lol well I guess they'll be in touch..9 -
During my first-ever technical interview, the interviewer asked me "Do you know the FizzBuzz problem?"
"Uhh, not really." (I was just thinking ok this problem has a name, must be some algorithm problem)
"So the problem is basically to give you the numbers 1 to 100, if the number is divisible by 3, print 'Fizz', if divisible by 5, print 'Buzz', if divisible by 3 and 5, print 'FizzBuzz'. For other numbers just print out the number itself."
After hearing the problem, I felt so many ideas popping out of my stressed brain.
I thought for a bit and said "ok, so if the digit sum of a number is a multiple of 3, then the number is divisible by 3, and if the last digit is either 0 or 5, it's divisible by 5."
Then I started to code out my solution until the interviewer said "there's an easier solution. Can you think of it?"
This stressed me out even more.
I thought for a bit and said "well, starting from 3, keep a counter that records how many iterations are done after 3. When the counter hits 3, that number would be divisible by 3 for sure. Should I try this solution?"
The interviewer said "Sure." So I started again.
However, I struggled for about another 3min until I realized this solution is a lot harder to implement. The interviewer probably saw my struggle too.
This was the point where he stepped in and asked me "Ummmm there's an easy way of solving this. Have you heard of the MODULO OPERATOR?"
In sheer embarrassment, I finished the code in 30s.
Of course, there was no further question after this, and I felt the need to seriously reevaluate my intelligence afterwards.15 -
An excerpt from the best rant about whiteboard interviews posted on the internet. Ever.
"Well, maybe your maximum subsequence problem is a truly shitty interview problem. You are putting your interview candidate in a situation where their employment hinges on a trivia question. — Kadane's algorithm! They know it, or they don't. If they do, then congratulations, you just met an engineer that recently studied Kadane's algorithm.
Which any other reasonably competent programmer could do by reading Wikipedia.
And if they don't, well, that just proves how smart the interviewer is. At which point the interviewer will be sure to tell you how many people couldn't answer his trivially simple interview question.
Find a spanning tree across a graph where the edges have minimal weight. Maybe one programmer in ten thousand — and I’m being generous — has ever implemented this algorithm in production code. There are only a few highly specific vertical fields in the industry that have a use for it. Despite the fact that next to no one uses it, the question must be asked during job interviews, and you must write production-quality code without looking it up, because surely you know Kruskal’s algorithm; it’s trivial.
Question: why are manhole covers round? Answer: they’re not just round, if you live in London; they're triangular and rectangular and a bunch of other shapes. Why is your interview question broken? Why did you just crib an interview question without researching whether its internal assumption was correct? Do you think that “round manhole covers are easier to roll" is a good answer? Have you ever tried to roll an iron coin that weighs up to 300 pounds? Did you survive? Do you think that “manhole covers are circular so that they don’t fall into manholes” is a good answer? Do you know what a curve of constant width is? Do you know what a Reuleaux triangle is? Have you ever even been to London?
If the purpose of interviewing was to play stump the candidate, I’d just ask you questions from my area of specialization. “What are the windowing conditions which, during the lapping operation on a modified discrete cosine transform, guarantee that the resynthesis achieves perfect reconstruction?” The answer of course is the Princen-Bradley condition! Everyone knows that’s when your windowing function satisfies the conditions h(k)2+h(k+N)2=1 (the lapping regions of the window, squared, should sum to one) and h(k)=h(2N−1−k) (the window should be symmetric). That’s fundamental computer science. So obvious, even a child should know the answer to that one. It’s trivial. You embarrass your entire extended family with your galactic stupidity, which is so vast that its value can only be stored in a double, because a float has insufficient range:"
Author: John Byrd
Src: https://quora.com/What-is-the-harde...3 -
I was asked to map a mathematical problem to an algorithm for first round of interview. I did it in 5 lines with O(n) and it worked. was told that was not the correct answer sent me an answer with O(n^2) and about 40 lines. in anger, I sent a five page mathematical proof along with analysis why mine was better. surprisingly, they took me in for second round. tanked it because I continually stuttered and froze. I was able to answer it once I got home. decided against sending it.1
-
- Get invited to apply to job
- Technical interview, guy shows up late starts small talk wasting time and gives me the exercise
- Start implementing the first algorithm, finish it passing min test cases then realize there's a solution that would make both algorithms a breeze
- I pitch my solution realizing there's no much time left, cuz we lost almost 20 min of my test hour talking about BS plus the almost 10 min he arrived late, and reassure the interviewer it can be developed faster
- Interviewer says it doesn't matter, we should finish edge cases
- Kay no problem, finish the first algorithm successfully and explain pitfalls on the second part with the current implementation
- I tell him there's a better solution but he doesn't seem to care, he says time's up
Now here's the funny part.
I get called by the recruiter today (2 weeks later) and she says "They are happy with your soft skills but feel there are some gaps with your coding, they would like to repeat the technical interview because they didn't feel there was much time to assess the 'gaps' ".
Interviewers, either I'm competent enough to work for you or not, your tests must be designed to assess that, if you see you can't fit the problem you want in the time you have left change the problem, reschedule or here's an idea...LEAVE THE BS CHITCHAT TILL THE END AND START THE INTERVIEW ON TIME. When I do interviews I always try to have one complete free hour and a one algorithm exercise because I expect the candidate to solve it, analyze it and offer alternatives or explain it, I've never had someone finishing more than 2 an hour.
You can keep your job I'll keep my time. I'll write a similar problem on the comments to pass on the knowledge for people who enjoy solving these kinds of problems, can't give you the exact same thing, also tip guys don't do NDA's for interviewing it makes no fucking sense trust me no one cares about your fizz buzz intellectual property.13 -
I was co-paneling an interview with my manager a while back. After the usual rounds of chitchat we decided to give the candidate a coding test. The problem was not challenging really and there candidate seemed quite confident to show off his coding skills.
This, however, was quickly interrupted by my manager who insisted to describe the actual algorithm for the answer verbally. The act of being helpful confused the hell out of the candidate who increasingly grew nervous.
Eventually my manager decided that there candidate was a failure on the grounds that he being too slow to formulate a solution.
When pressed that there candidate could have completed the test swiftly if he had been left alone, I was told that the company was looking for "drones who can carry out instructions" instead of "creative rebels like you (me)"3 -
Apply for a data engineer role.
Get invited for a data science interview.
HR says they're building AI and I were to supervise another person writing its algorithm.
It's a media company.
*Risitas intensifies*6 -
Alright. This is going to be long and incoherent, so buckle up. This is how I lost my motivation to program or to do anything really.
Japan is apparently experiencing a shortage of skilled IT workers. They are conducting standardized IT skill tests in 7 Asian countries including mine. Very few people apply and fewer actually pass the exam. There are exams of different levels that gives you better roles in the IT industry as you pass them. For example, the level 2 or IT Fundamental Engineering Exam makes you an IT worker, level 3 = capable of working on your own...so on.
I passed level 1 and came in 3rd in my country (there were only 78 examinees lol). Level 2 had 2 parts. The theoretical mcq type exam in the morning and the programming mcq in the afternoon. They questions describe a scenario/problem, gives you code that solves it with some parts blanked out.
I passed the morning exam and not the afternoon. As a programmer I thought I'd be good at the afternoon exam as it involves actual code. Anyway, they give you 2 more chances to pass the afternoon exam, failing that, you'll have to take both of them the next time. Someone who has passed 1 part is called a half-passer and I was one.
A local company funded by both JICA and my government does the selection and training for the Japanese companies. To get in you have to pass a written exam(write code/pseudocode on paper) and pass the final interview in which there are 2 parts - technical interview and general interview.
I went as far as the interview. Didn't do too good in the technical interview. They asked me how would I find the lightest ball from 8 identical balls using a balance only twice. You guys probably already know the solution. I don't have much theoritical knowledge. I know how to write code and solve problems but don't know formal name of the problem or the algorithm.
On to the next interview. I see 2 Japanese interviewers and immediately blurt out konichiwa! The find it funny. Asked me about my education. Say they are very impressed that self taught and working. The local HR guy is not impressed. Asks me why I left university and why never tried again. Goes on about how the dean is his friend and universites are cheap. foryou.jpg
The real part. So they tell me that Japanese companies pay 250000/month, I will have to pay 60% income tax, pay for my own accommodation, food, transportation cost etc. Hella sweet deal. Living in Japan! But I couldn't get in because the visa is only given to engineers. Btw I'm not looking to invade Japan spread my shitskin seed and white genocide the japs. Just wanted to live in another country for a while and learn stuff from them.
I'll admit I am a little salty and probably will remain salty forever. But this made me lose all interest in programming. It's like I don't belong. A dropout like me should be doing something lowly. Maybe I should sell drugs or be a pimp or something.
But sometimes I get this short lived urge to make something brilliant and show them that people like me are capable of doing good things. Fuck, do I have daddy issues?16 -
Android dev job question:
"Describe the activity lifecycle and write an application that does x,y,z in accordance with it"
Fullstack dev job question:
"Write some code that interacts with our API and does x,y,z, put the data into our database and build a web interface"
Java backend dev interview :
"BUILD AN ELEVATOR ALGORITHM WITH LESS THAN o(nlog(n)), FIND NEIGHBORS IN A BINARY TREE, WHAT IS THE DIFFERENCE BETWEEN AN INTERFACE AND ABSTRACT CLASS?"
Why?5 -
Over the past 2 months I have interviewed with several companies and 2 of them stood out at rejecting me. Let's call them Company A, and Company B!
> I know right? Developers are bad at naming!
I guess part of it is my fault too! I am old and slow. Doesn't like competitive programming and already forgot most of how to answer algorithm question. I can't even answer some of the algorithm question I've flawlessly answered back when I was fresh out of University.
## Company A
When I got chance to interview at Company A, they require me to answer HackerRank style interview. It's my first time in nearly a decade of working in the industry to feel like I'm in a classroom exam again. I hate it, and I deliberately voiced my distaste to the answers comment:
// Paraphrasing
// I'm sorry, I'm dumb!
// I never faced anything like this in real world work...
// ......
But guess what? My answer still pass the score, have a call with their VP, which proceed to have another call with their Lead Engineer.
Talked about my experience with Event Driven System and CQRS+ES and they decided that I am:
- Arrogant
- Too RND in my tech stack
- And overkill in CQRS+ES
And decided they don't need me.
They hate me for having a headstrong personality which translates as Arrogance to the perceiving end.
## Company B
Another HackerRank style interview. Guess I passed their score this time without me typing some strong comment and proceed to have another test with their Lead Engineer.
This time they want 5 question answered in google docs within 60 minutes.
Two of them stood out to me for being impossible to work on 12 minutes (60 / 5 if you're wondering). Or maybe I'm just old and dumb?!
The others are just questions copied word for word from Geeks For Geeks.
One of the question requires me to write a password brute force attack to an imaginary API.
The other requires me to find a combination of math `+` or `-` operation from `a strings of numbers` that results in `a number`.
My `Arrogance` kicks in and I start typing a comment
// Paraphrasing
// I am sorry but I feel this is impossible for me to think of in 12 minutes
// (60 / 5 if you're wondering)
// But I know you guys got this question from Rosseta Code!
// Here's the link, but I don't know the logic behind it
See? I've worked on this question back when I was still a University student and remember where to look at.
Unsurprisingly, I've heard the feedback that I was rejected although I've answered one of their question `FLAWLESSLY`. I know they are being sarcastic at this point. haha.
---
I was trying to be honest about what I can and can't do in the `N` minutes timeframe and the Industry hates me.
I guess The Industry love people who can grind `GFG` or other algorithm websites, remember the solutions out of their head, and quietly answer their `genuinely original question` without pointing the flaws back at them.9 -
Hmm. So have you ever argued in a job interview? Like really standing your ground? In a technical interview?
Today I had a live coding session with a company I'm interested in. The developer was giving me tasks to evolve the feature on and on.
Everything was TDD. Splendid!
However at one point I had to test if the outcome of the method call is random. What I did is basically:
```
Provider<String> provider = new SomeProvider("aaa", "bbb", "ccc", "ddd", "eee", "fff")
for(int i=0; i<100; i++) {
String str = provider.get();
map.put(str, incrementCount(str));
}
Set<Integer> occurences = new HashSet(map.values());
occurences.removeIf(o -> o.equals(occurences.get(0)));
assertFalse(occurences.empty());
```
and I called it good enough, since I cannot verify true randomness.
But the dev argued that this is not enough and I must verify whether the output is truly random or not, and the output (considering the provider only has a finite set of values to return) occurences are almost equal (i.e. the deviation from median is the median itself).
I argued this is not possible and it beats the core principle of randomness -- non-determinism. Since if you can reliably test whether the sequence is truly random you must have an algorithm which determines what value can or cannot be next in the sequence. Which means determinism. And that the (P)RNG is then flawed. The best you can do is to test whether randomness is "good enough" for your use case.
We were arguing and he eventually said "alright, let's call it a good enough solution, since we're short on time".
I wonder whether this will have adverse effect my evaluation . So have you ever argued with your interviewer? Did it turn out to the better or to the worse?
But more importantly, was I right? :D21 -
So technical interview today but woke up (6am) and started thinking about it and it led to this rant about algorithms. This is probably going into a Medium post if I ever get around to finishing it but sort of just wanted to share the rant that literally just went off in my mind.
*The problem with Algorithms Technical Interviews Is They don't test Real skills*
Real world problems are complex and often cross domain combining experience in multiple areas. Often the best way is not obvious unless you're a polymath and familiar with different areas, paradigms, designs. And intuitively can understand, reason, and combine them.
I don't think this is something a specific algorithm problem is designed to show. And the problem is the optimal solution to some of these and to algorithm design itself is that unless you train for it or are an algorithm designer (practice and experience), you can only brute force it in the amount of time given.
And quite frankly the algorithms I think we rely on daily weren't thought of in 30 minutes. The designers did this stuff for a living, thought about these problems for days and several iterations… at least. A lot were mathematicians. The matrix algorithm that had a Big O of 7N required a flash of insight that only someone constantly looking and thinking about the equations could see.
TBA
-system design
-clean readable coding practices
...
TLDR: I could probably go on and on about this stuff for hours jumping from item/example/area to the next and back again... But I don't think you can test these (~20) years of experience in a 1 hr technical interview focused on algorithms...8 -
When I interview a super cocky candidate:
"Write a merge sort algorithm that works in linear time complexity."5 -
There's nothing wrong with asking algorithm and data structure questions in an interview if the employer calls for it.
If you're hiring a junior and/or you desperately need workers, then you can lower the bar, but if you want to be picky, then asking them leetcode-tier coding questions is fine.
THERE'S NOTHING WRONG WITH ASKING A SOFTWARE ENGINEER CANDIDATE DATA STRUCTURES AND ALGORITHM QUESTIONS
If they complain that asking ds&a questions is unfair for a position where all they're going to do is shit-tier frontend work, then blacklist them for 10 years.
If people argue that Doctors don't get asked chemistry and biology questions for interviews, tell them it's because medicine is much more regulated than software and that doctors are vetted technically even before they're allowed to go job hunting. Since software doesn't have the same regulations medicine does, employers have to do the technical vetting themselves.
If you think it's unfair to ask software engineering questions to a candidate applying for a software engineering job, then find a different career.9 -
My first interview was the interview where I cheated and got the job, it was an on campus job interview. I did not have a good gpa, (to be honest it was really bad i was below the 25th percentile)
Anyway this was the only (developer) job interview I knew I could qualify for, I was pretty sure that if I couldn't nail this one then I could kiss my dream of programming professionally good bye.
We were about 25 kids sitting in a class room with a pencil and couple of sheets of paper and the the interview panel walked between the seats looking at what we wrote.
So, when I couldn't write an algorithm for the problem of square rooting a number n. I panicked (was literally shivering with tears rolling down my cheeks, thankfully nobody saw me as i was on the last bench) I gave up, wiped my tears and stared at the board, a panel member saw me and told me to leave after looking at my paper. This was the moment my mind decided (not me but someone else inside me) that I have to do whatever it took, so just when I was stepping out and grabbed my bag i quickly opened the browser of my phone inside the bag typed square root algorithm opened the first result and read the words arrive at the answer by binary search, ass soon as I read that my mind worked at a pace that it has never managed ever since that time, and i knew the solution in a matter of seconds, i dropped my bag when to one of the more sympathetic panel members and explained the whole thing to him on the spot, he was impressed, and he asked me how this algorithm can be extended for the nth root(which is really simple once you have the algorithm for square root) and i blurted it out instantly which impressed him even more and offered me the job on the spot and told me to attend the next 2 rounds as a formality.
Thus i saved myself for a world of hurt and now I am a developer who thinks back to that day every time I need a boost of morale1 -
Facebook don’t give a single fuck if you have a million years of experience, you’re going to fucking solve the “algorithm” shit —while they still admit you won’t remember much about it.
The HR guy was damn straight about it: you have to practice a lot.
Bitch, I’m out.10 -
I had a coding interview with Amazon. I had to implement a depth-first search algorithm with no prior experience while 2 devs watched me code on a collaborative IDE. To make it worse, the connection was terrible on the conference call and one of the interviewers had a very thick accent. I barely understood what they wanted me to do until I typed out:
Breadth-first search || Depth-first search?
// Sorry, phone keeps cutting off and I can barely hear you
Yeah, I didn't make it to the next round. :(2 -
During my first-ever technical interview, the interviewer asked me "Do you know the FizzBuzz problem?"
"Uhh, not really." (I was just thinking ok this problem has a name, must be some algorithm problem)
"So the problem is basically to give you the numbers 1 to 100, if the number is divisible by 3, print 'Fizz', if divisible by 5, print 'Buzz', if divisible by 3 and 5, print 'FizzBuzz'. For other numbers just print out the number itself."
After hearing the problem, I felt so many ideas popping out of my stressed brain.
I thought for a bit and said "ok, so if the digit sum of a number is a multiple of 3, then the number is divisible by 3, and if the last digit is either 0 or 5, it's divisible by 5."
Then I started to code out my solution until the interviewer said "there's an easier solution. Can you think of it?"
This stressed me out even more.
I thought for a bit and said "well, starting from 3, keep a counter that records how many iterations are done after 3. When the counter hits 3, that number would be divisible by 3 for sure. Should I try this solution?"
The interviewer said "Sure." So I started again.
However, I struggled for about another 3min until I realized this solution is a lot harder to implement. The interviewer probably saw my struggle too.
This was the point where he stepped in and asked me "Ummmm there's an easy way of solving this. Have you heard of the MODULO OPERATOR?"
In sheer embarrassment, I finished the code in 30s.
Of course, there was no further question after this, and I felt the need to seriously reevaluate my intelligence afterwards.11 -
I posted a rant... on Quora: Why-do-most-software-developers-suck-at-algorithm-type-interview-questions
https://quora.com/Why-do-most-softw...
Thoughts?9 -
I took a hakerRank challenge for an interview, I failed miserably.
All challenges included subsequences and I just kept reaching memory limit... My algorithm gets the answer, if just takes forever if the input is too large.
So fuck stupid me.
I am now googling about it but can not find something that explains it clear (in my opinion)
Would appreciate if you guys can recommend some resources.2 -
Question: How would you reimagine the dev interview process, trying to make it efficient to find ingenious freshers?
I'm gonna be hiring full MERN stack dev freshers soon. I hate coding interviews, and I just want to test their ingenuity and problem solving, not if they can code a textbook algorithm.
Plan so far was to ask them questions like: "What happens when you like a link in the browser" to gauge how deep they could track a request and understand the internet infrastructure.
And make them audit gpt generated react code, and optimize it.
What're your thoughts, folks?8 -
So technical interview time but whenever I look at algorithm, data structure questions now I feel demotivated... it sort of feels like boring pointless work.
But if i remove the context of preparing for an interview and say I have as much time as i need, it feels like a logical puzzle, challenge, something interesting I could use to kill some time, learn something new...
It feels like there's a divide like how I can go on and on about my personal projects but if you ask about work projects, I give you the boilerplate or have to really think about what to say...
And so now I'm feeling fucked for the phone screens and algo interviews that I'm supposed to be having soon... and let's just say one of them may be with a really really big tech company... -
Place your bets:
I recently did a take home coding test as part of an interview. In the end, I could only provide a partial solution but I recorded my thought process and came up with an ad hoc algorithm. I've seen a similar problem but didn't google anything and stayed active trying out test cases as I went. Towards the end as time ran out I noted what was wrong and how I could improve it...
Will I get a call back or am I done?2 -
In the year 2015 I graduated from a reputated university. Though I had a couple of offers from my campus Placements, I did not willing accepted those offer and tried updating my CV in job portals.
On the day June 25th 2015, I still remember I recieved a invitation to attend the interview with one of the reputated company and I was like very much excited to attend this interview.
Interview process,
1) I had coding round which lasted for an hour and half and the best part is I scored max marks 😉
2) next round was problem solving or algorithm round it was quite difficult, but somehow I managed to clear that too.
3) final round was managerial round which was very much tougher than these two, My manager was real technical guy who knew most difficult industrial problems. In fact I should thanks him because he thought me how to organise code while development and also he thought me corporate ethics as I was a fresher when I joined there.
4) so I cleared all the rounds and joined the company around 10 days after 25th.
5) my journey in this organisation was very good. I had learnt the tech stack and there I started working as a microservices developer.
Thanks to my previous organisation. -
Now that we have GitHub Copilot, what happens if during an interview, I am asked to implement a sorting algorithm, say merge sort. If I guide the AI to do it for me, does this count as cheating? How will you feel as an interviewer?1
-
Just started reading Cracking the Coding Interview and I just can't help but think this whole thing is a joke. The author can't even give a convincing argument why learning algorithm is important for interview. She simply states word for word: it is what it is.
I google her a bit and find that she started her venture Careercup.com and the website is such a joke. How can you even call yourself a software engineer with a website like that. I am pretty sure she using some kind of wordpress engine.
I can't imagine how many people that work at FANG companies that think like her..6 -
Do all devs know how to write these Goolgle/Amazonesq algorithms off the top of their heads? ex: build singly linked list from scratch / pre or post binary tree traversals etc..5