Live data from Hacker News

I Am a Bad Developer

eewz0z.pen.io

191–200 of 223 posts

Re: I Am a Bad Developer

#191

I could have written this piece. It hit that close to home. I'm 15 years into my IT career and I can honestly say it's not getting easier. I don't believe it's an ageism thing, but just a symtom of something I still cannot put my finger on. I put myself on sabbatical after realizing that my needs were not being met on a regular basis by my job. While I'll allow short-term ROI to be negative, I will never allow my lon…

As far as the integer intersection question goes, I wonder if the interviewer didn't think too hard before before saying that he never uses it. At least where I work it comes up from time-to-time.

For instance, say we have a list of Users and a list of UserIds that we want to filter on (but for one reason or another don't want to do the filtering in the database.) The problem of getting the filtered list of Users based on their unique integer UserId has nearly the exact same solution as finding the intersection of the two integer lists, one being the requested UserIds filter, and the other being the list of UserIds from our list of Users.

Re: I Am a Bad Developer

#192
post #68

I could have written this piece. It hit that close to home. I'm 15 years into my IT career and I can honestly say it's not getting easier. I don't believe it's an ageism thing, but just a symtom of something I still cannot put my finger on. I put myself on sabbatical after realizing that my needs were not being met on a regular basis by my job. While I'll allow short-term ROI to be negative, I will never allow my lon…

100% agree. For a web position I have no idea why you would ask them to write a tree parser or binary search algorithm which I experienced not that long ago. Asking about what happens at a low level when entering a URL however is a good question. Or perhaps asking how to do cross domain JSON requests etc...

Asking about what happens at a low level when entering a URL however is a good question. Or perhaps asking how to do cross domain JSON requests etc...

The former is a question about fundamentals, whereas the latter is a question about specific implementations. I agree that as a Web developer you should probably need to know what JSONP is, but it's also something that could be learned in about 5 minutes from Google.

I like it when a phone interview is basically a conversation. I don't like Spanish Inquisition-style interviews, so I like to start with something and watch it lead to other things. Of course, if the conversation drops dead I can refer to my notes and ask another question. With regard to the URL question, in the past I have allowed the interviewee to answer the URL question as best they can, and the ask questions to cover some of the gaps, and these questions can lead into JSONP handling and its ilk.

As an aside and a , interviewing like this ensures that there is a natural flow and I'm keeping my interviewee's brain jumping between similar contexts. I hate it when I've been interviewed and I'm expected to context switch between algorithms (mergesort) to best practises (SOLID) to programming (implement REST with Jersey+Servlets). And this is all in a 30-60 minute "conversation".

Re: I Am a Bad Developer

#193
post #94

Earlier quoted context omitted.

Tend to agree (though it's impossible to say about any particular person.) Mentioning TAOCP and SICP at an interview (as he did in the post) would raise some alarms with me. They're not useful books in most jobs, and bringing them up just makes you look like the kind of person who doesn't understand that.

Steve Yegge calls it "The Awful Place Where People Make Money With Software" http://steve-yegge.blogspot.com/2007/06/rich-programmer-food...

Wow, I forgot how horrible he was. How can someone spend that many words just to cough up a few awful strawmen, and then not even bother to knock them down?

Re: I Am a Bad Developer

#194
>> If you were to judge me just by my reading list you'd think I was university-trained but I'm not.

Outside of the valley a non-degree is a non-starter for many employers. Does the author even consider this?

>>And only twice have I made it past the first technical interview.

Maybe there is C-S theory the author never picked up from school and is lacking. He talks about practising programming; however, maybe his problem is not the code he knows how to write, but the code he doesn't.

Re: I Am a Bad Developer

#195
post #118

Earlier quoted context omitted.

You're right that it matters very little if you can deduce the exact complexity right off the bat. But it DOES matter is if you can tell if an algorithm is closer to n^2 than log n. OR identify that n is low enough that it doesn't matter. > Besides a O(N log N) algorithm over 10 or 100 items is not going to cause any issues. In the case of your standard CRUD application that's what you are going to be dealing with. I…

Going to have to ask for an example. I am yet to have seen a basic CRUD app that had performance issues due to a bad coding algorithm. Certainly from poor queries but never from an bad algorithm. Keep in mind I would say that a simple CRUD app with millions of entries is no longer a simple CRUD app.

A very easy, common example: given two lists of objects (from a database most likely), find the set of objects contained in both lists. The naive solution is a double for loop over each collection.

Re: I Am a Bad Developer

#196
Have you considered putting yourself out there. What I mean is that have some project that you can show as your own work. With your name on it. Work hard towards making that successful. Be it an app, a website, an open-source project, it has to be recognized as primarily your development work.

This could some day become a business or a side project as a hobby but for now it will give you a load of credibility when you go for interviews and will also give you the confidence that you need.

Good Luck!

Re: I Am a Bad Developer

#197

Earlier quoted context omitted.

Shouldn't it be OK to have a knowledge of programming that doesn't derive from the theoretical canon? You can learn programming concepts in the context of "not killing the whatever-is-relying-on-it." To be sure, not being able to reason outside of the canon is a long-standing occupational hazard and trait of the humanities, so there could be something a little more pathological in perpetuating these interviewing tech…

Big-O notation takes five minutes to comprehend. I don't see the problem.

I'll take that as a "no."

Re: I Am a Bad Developer

#198

Earlier quoted context omitted.

>when I type in a URL in my browser's address bar, press Enter, and then the page appears, tell me what happened technically in as low level as possible I hope you word it much better than that. You certainly do not want to hear what happens in as low level detail as possible. You would be there for hours if I were to actually answer that. As posed, that question is demanding an answer that explains how pressing a ke…

Heh. Yeah I do ask it in that way and I've had a couple interviewees be cheeky and go right down to electrical signals. That's when I can see they have a bit of a sense of humour and aren't nervous. It also breaks the ice. However, I typically interrupt them and go as low as DNS routing packets and its ilk. The reason I interrupt them when talk about electrical signals starts (or, as you mentioned, typing a key), is…

The problem is that the question is so vague as to put an interviewee on the defensive, requiring that they go down to as deep a level as possible and adding to the stress of the situation. Not to mention that the last time I saw that question in an interview it was on a written quiz that appeared to be xeroxed from a daisy-wheel printed page.

As we've seen repeatedly here on HN, interviewers often ask about things that do not pertain to the job itself. Therefore it's actually a pretty aggressive phrasing of a question meant to elicit the information you require, so I don't think you can necessarily chalk it up to a sense of humor.

Re: I Am a Bad Developer

#199
post #143

Earlier quoted context omitted.

I used to like this question, until I interviewed a few people who hadn't worked with HTTP. Then it's unclear how to rate them. Since I'm not interviewing specifically for a web programmer I had to pick problems someone could work on without that kind of experience.

Could you maybe explain what it does at a high level and get them to maybe explain how they think it might work? It would probably be just as informative.

Objection, your honor: relevance.

Re: I Am a Bad Developer

#200

Earlier quoted context omitted.

> Or is the hiring practice of reducing someone's technical competence to a handful of esoteric questions arbitrary and broken? Certainly the hiring practices of Google et al, generally the worst perpetrators of cs bingo in my experience. Started a startup, you say? Rebuilt a non-trivial webapp? Won a hackathon? That's great, but we're going to need you to implement red-black trees and variations of fizzbuzz until yo…

People really need to stop lumping fizzbuzz into their hatred of "trivia" questions. You don't do variations of fizzbuzz. Fizzbuzz is not a challenge, it is not trivia, it is not a trick question or a brain teaser. It is the simplest, most inane function you can ask someone to write. It exists purely to filter out people who simply can not write any code at all. It is a test of "does this person understand the concep…

I agree that Fizzbuzz isn't a trick question or a brain teaser. If I disagree with you about "trivia", I think it's because I disagree what the word "trivia" means, not because I disagree about Fizzbuzz. Whatever.

However, I do meaningfully disagree about "variations of Fizzbuzz". It does make sense to vary fizzbuzz, if you suspect that your candidate will have literally memorized the solution, character for character. If that's a concern, though, trivial variations are sufficient: replace the 5 with a 7, or change the ELSE case from "print the number" to "print nothing", or something.

I agree that if your "variation" makes it "interesting", you're not doing Fizzbuzz.

Whether or not interesting programming puzzles are a good element of interviewing, well, there continues to be a wide range of opinions on that.

Post reply on HN