3 ms·
I'm truly sick of this rubbish that has been brewing lately. If you can't do interview questions, your ability is questionable. The bar has been lowered enoug
by segmondy 10y ago
I'm truly sick of this rubbish that has been brewing lately. If you can't do interview questions, your ability is questionable. The bar has been lowered enough with the push of "everyone can code and should code" mentality. If we want quality, we must raise the bar. Everyone can code, everyone should be able to code if they want to. But everyone can't qualify for as a professional software programmer. If the company has a standardized interview process and everyone else gets asked the same set of questions, then it's fair. If you can't answer or whiteboard it and other candidates could, Don't cry! Those candidates obviously know more than you in regards to what the company is looking for. Take the case of Google or Amazon, most of us can agree that they have very smart folks working for them. If the filter these smart folks had to go through was puzzles, math problems, algorithms, white boarding, then why should anyone get an exception to join them?
Interviews are broken in most environment, and that doesn't mean we should do away with them or make them easier. Rather, we should fix them, make them better, and have them test what the candidate will be doing on the job. I see people say, "you don't need to understand algorithm complexity to build a website, or to know C or assembly" Sure! But you don't know what you don't know! If you know and understand algorithm complexity, you will use it even when building websites! You will think about scale. If you understand lower level languages and you are using PHP, you might understand how your code turns to C and how choices at a higher level turns to lower level. If you never studied computer architecture, you wouldn't understand the magnitude involved in fetching something from a register, processor cache, ram, drive, over the network. Yet such things do rear their ugly heads when developing these so called simple CRUD apps.
So if you are interviewing for a PHP programming position, and you get asked about algorithm complexity or C or TCP/IP or other questions. Don't frown, those are important questions, if you don't know it, you don't know it. It doesn't mean you are a "bad programmer" but it does reveal that you are a programmer without a wide breadth of knowledge. A one trick pony for the most part. Get over it and widen your knowledge.
The other day I was using an external API that was crapping out. After hitting a dead end, I informed the vendor and they said nothing was wrong. I did a system call trace and noticed a lot of error was being returned on poll(), I fired up tcpdump and noticed an abrupt and random FIN ending the connection. With this I was able to convince the vendor to test their API from outside their network, and once they did, they agreed that the issue was on their end and they fixed it. This was a basic PHP app. Without a wide breath of knowledge, I would have been stuck, no google or stackoverflow would have solved this.
Great developers have knowledge that are wide and deep. If you fail an interview, Don't get mad, get glad that you found your weakness and brush up your skills.