Live data from Hacker News

I Am a Bad Developer

eewz0z.pen.io

141–150 of 223 posts

Re: I Am a Bad Developer

#141
post #128
post #118

Earlier quoted context omitted.

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.

What does "poor queries" mean other than queries with poor asymptotic complexity based on the query plan?

Doing something like the following would classify as a poor query in my book with a very simple query plan,

select * from table;

Re: I Am a Bad Developer

#143

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. Hey, that's one of my favorite questions as well! Great way to gauge depth of knowledge, and you can take it so many places afterwards (HTTPS / SSL, REST, etc). The best answer I heard started with "well, the enter key press triggers an interrupt...., followed by…

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.

Re: I Am a Bad Developer

#144

Being a good programmer is not the same thing as being a good engineer or developer. Also, there are the true and corporate varieties of each. True Developer: builds technical assets (apps, scripts) based on business needs, often by self-initiated awareness of what the company's needs are. Corporate Developer: turns managerial ideas (with no audit of whether those are good ideas) into apps that sorta work, very quick…

In half a year the Corporate Developer will still have a job because he knows how to build "apps that sorta work, very quickly" while the True Developer spent most of that time developing his own dialect of Lisp and his team never shipped a product.

Re: I Am a Bad Developer

#145
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...

I don't even know what a tree parser is, but how can anyone not be able to write a binary search algorithm?

Re: I Am a Bad Developer

#146
post #77

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…

I find this amusing because I went through this same ordeal last week. The problem was to code up a small interpreter. The interviewer seemed to be suffering from either a cold or allergy based upon the constant sniffling. Anyway, here I am explaining how I would go about it and there seemed to be a sense of irritability from the interviewer. As I try to figure it out, he somewhat guides me to the solution. In the en…

"My goal when interviewing people is to have a conversation to discuss how they think, how passionate they are in their work, get an idea of their personality, and, most of all, do they know enough to do take on the job they will fulfill." Thumbs up. I follow similar principles when taking interviews and always believed that to be correct

Re: I Am a Bad Developer

#147
Maybe it's me, or my non CS background, but I feel that many positions could be filled by a "normal" programmer that doesn't spend nights coding esoteric algorithms. On the other hand, the esoteric algos guy might get bored in a job that seems requires routines (bug fixes, testing, coding boring interfaces, etc.) and might not play that well in a team.

I know teamworking is a buz word, such as "passion" and "drive" also, I know esoteric algorithms are fun, but one has to face the reality that sometimes complexity hides somewhere else, not in the programming craft by itself.

Actually, if you are a start up, I think the real complexity hides in the business itself (ie: getting customers to pay you) and I am pretty sure the difference between a passionate normal programmer and one that makes lisp interpreters during breakfast is slim to the end goal of said start up (which is, let's remember, to make more money than what is spent).

Re: I Am a Bad Developer

#148

Isn't the author just experiencing imposter syndrome? http://en.wikipedia.org/wiki/Impostor_syndrome Despite all his colleagues, friends, and coworkers telling him he is proficient, keeping current in the industry, coding for fun, contributing to open source, proactively bettering his coding style and knowledge, and knowing a lot of theory, his mediocre interviews are enough to convince him that he's a bad developer.…

When I hit the "I allowed one month for interviewing and one month for buffer", I already knew what the outcome would be and my brain was screaming "WRONG!"

Job applications are very stop-start affairs. Post a job ad. Wait a couple of weeks for it to finish. Then leave the collated resumes on the hiring manager's desk for a while, then someone prods the manager "why don't we have a -foo- yet?". Manager starts the callaround, does the first round of interviews, makes a shortlist, then they sit on the desk again. Maybe discuss potentials with other staff, but it peters out. There's so much other stuff to do! Then someone says "Why don't we have a -foo- yet?". Rinse, repeat. It certainly doesn't always happen, but it's common enough.

At one place I worked, I was basically the sole applicant - my friend worked the other support role and recommended me. The HR officer (CEO's wife...) called me in. That went well, so I had a second 'confirm this guy isn't an idiot' interview with the CEO. A couple of polite proddings received no response. I asked my friend and he said "I thought we did agree to hire you, that's what I heard". A couple more proddings and the CEO said 'Yes'. But the HR officer wasn't responding. At this stage it was six weeks from first interview to CEO 'Yes'. We hadn't even discussed salary yet. I was so desperate for a job at the time, that I just rolled up and started working, because fuck it, the worst that can happen is that it's abysmally low and I go elsewhere - it's not like my days were productive otherwise. A panicked call from the HR officer the next day did a hurried salary negotiation.

Now sure, the last part of this story isn't typical (though I find it funny), but it took 6 weeks for me to get a job with a small, busy company who had staff with prior positive experience with me as a colleague and no competition. One month is nothing when it comes to applying for skilled work.

Re: I Am a Bad Developer

#149

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…

Those "stupid programming puzzles" are about evaluating problem-solving abilities. Asking about architecting a system from a higher level also does this. Asking how a browser works is in the memorization category, and I just don't understand how that can give you useful information. Now you didn't give a lot of details - maybe you're upset about being asked to implement mergesort. That would also be an exercise in me…

To answer how to get an URL in detail would need understanding of the 7 layers of OSI, sockets, http/ftp/etc, SSL, html layout, keepalive, etc etc. The answer should be a really informative about how much someone understand (and check architecture grokking). [Edit: I might try this, thanks!]

Cons are: It is specific to web people, of course. And not really a programming question.

Re: I Am a Bad Developer

#150

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…

Did interviews for 5+ years at Google... the real problem is that there's no uniformity to the hiring process. I was allowed to just make up my own questions and judge candidates based on those. And I did so. And admittedly, the questions I asked were so difficult that I seriously doubt I myself could've answered them when I first got hired. But I didn't give a crap, because hiring is something you're kind of coerced…

> And admittedly, the questions I asked were so difficult that I seriously doubt I myself could've answered them when I first got hired

Sometimes I have to stop myself doing this before conducting interviews. I think it's an ego thing, or perhaps an insecurity. When I worked at Amazon the culture drove this kind of rubbish and skewed our hiring process immensely.

There was something perverse about being in an interview loop, all 8 of us "not inclined" to hire a single candidate because they missed an recursion terminator in a solution to something properly complex and scratched out on a whiteboard in 15 minutes. All of us nodding like "that's so stupid" and I was sitting there 100% certain of the 8 people in the room the 7 of us who hadn't conducted the same interview 50 times would drop a bollock somewhere along the way. Yet there was no way this "otherwise competent, and quite nice guy" was as technically astute as all of us gathered here today indulging in our nice cup of ego massage while other people got actual work done.

Now when I interview candidates I want to see some code you have written you are proud of. Above all, I'm looking for pragmatism, effective reasoning and discipline in execution.

I love the idea of a paid working trial of some length, followed by a permanent hire but I've yet to convince the powers that be that it's an effective strategy.

Post reply on HN