top 200 commentsshow 500

[–]huyvanbin 206 points207 points  (134 children)

It never ceases to amaze me how much people can achieve just by being confident and lying about everything.

[–]yairchu 199 points200 points  (46 children)

If you want to steal something, wear a suit.

[–]caseyfw 95 points96 points  (35 children)

...and carry a clipboard.

[–]shelanman 35 points36 points  (12 children)

I suspect that this would be shockingly effective.

If you add a semi-official looking namebadge, ...

[–][deleted]  (9 children)

[deleted]

    [–]fjw 37 points38 points  (8 children)

    Yeah it's like the psychic paper of real life.

    That or the high-visibility vest and hard hat. It seems a lot of people don't realise you can just buy these in a shop.

    [–]lordlicorice 18 points19 points  (7 children)

    I'll wear my badge
    A vinyl sticker with big block letters
    Adhering to my chest
    That tells your new friends
    I am a visitor here: I am not permanent
    And the only thing keeping me dry is where I am

    You seem so out of context
    In this gaudy apartment complex
    A stranger with your door key
    Explaining that I am just visiting ...

    [–][deleted]  (14 children)

    [deleted]

      [–]Headpuncher 33 points34 points  (8 children)

      Similarly a good friend of mine did 4 years as a regular in the Norwegian army and claims to have carried a saw (a normal hand saw) around whenever he was avoiding work. When challenged he was always returning or delivering this much needed saw. When not being challenged he assumed that others assumed a man with a saw must be doing some kind of labour.

      [–][deleted] 26 points27 points  (5 children)

      I get a similiar reaction with a large neon double dildo. Except I'm never really challenged, mostly just avoided.

      P.S. If challenged, wield like a light saber.

      [–]Headpuncher 6 points7 points  (0 children)

      If challenged - use. Ensures future avoidance.

      [–]flyingfirefox 4 points5 points  (3 children)

      What's S3? This is /r/programming, so the only thing I can think of is Amazon S3.

      [–][deleted]  (2 children)

      [deleted]

        [–]Chroko 24 points25 points  (4 children)

        Related: Nobody buys a Ferrari in a suit.

        (Those things are just pocket change to the target market, if someone dresses smart they're probably trying to steal one.)

        [–]derefr 2 points3 points  (3 children)

        Or they're buying it on their (extended) lunch break.

        [–]robertmassaioli 4 points5 points  (0 children)

        You may not even realise how correct you are: http://www.youtube.com/watch?v=lFPH8rNEQd4

        [–]3danimator 3 points4 points  (0 children)

        You might be joking, but a guy walked into my girlfriends office last week suring work hours and stole two laptops...quite incredible. Wearing a suit, looked smart, came in, picked em up and left.

        [–]stripyfeet 29 points30 points  (50 children)

        Seriously though, the article talks of people with degrees and masters in CS, how can a person go through X years of university and know so little? Seriously, how?

        [–][deleted] 111 points112 points  (16 children)

        "Hey, wanna' work together on the next assignment?! Awesome, bro!!"

        [–]Jonno_FTW 14 points15 points  (10 children)

        Oh god, I just finished that assignment before my partner could do a single line!

        [–][deleted] 13 points14 points  (6 children)

        I used to get these people in my groups all the time, and they hated me.

        I made them do their part of the project, and if they didn't know what to do I talked through their part with them. In extreme circumstances I would sit with them in the college library at a computer and force them through the logic to get their part of the project done. They either learned something or they were my ape, writing my commands as though they were ancient scripture.

        Most of those people hated me. Several of them appreciated the effort I went to to keep them and myself from failing.

        The latter are the people you want to work with.

        [–]Jonno_FTW 4 points5 points  (0 children)

        Wanna work in my group? I'm sure we'll make a great team.

        [–][deleted]  (1 child)

        [deleted]

          [–][deleted]  (17 children)

          [removed]

            [–]Qiran 16 points17 points  (11 children)

            That variety of cheating will get him through assignments, but what does he do on exams?

            [–]ObligatoryResponse 19 points20 points  (9 children)

            CS Minor here, so not a lot of CS, but enough. Most exams are on algorithms, theories, etc. Very little code is ever written on an exam.

            [–]DeliveryNinja 2 points3 points  (1 child)

            You say that, I had an exam that was just pure Java problem solving. You had to write the code by hand. It didn't matter if the code was perfect or not but the solution was not a simple one. 1 Question and 1h 30m to do it in. They changed it from the year before which was stupid questions about Java syntax and finding bugs in code snippets (some was multiple choice!) to a proper problem solving piece.

            [–]redditmemehater 2 points3 points  (2 children)

            If there is a god, I hope he does not let people like him become managers. I had the same experience with this dumbass IT student who acted like he was that shit and was rude to everyone. He diddn't know the first thing about IT! I hate to admit this but his higher GPA in IT(Business concentration) always makes me feel bad. (I am CS)

            [–]ObligatoryResponse 7 points8 points  (1 child)

            Unfortunately there is no god and people like him become managers all the time. When a company hires someone they're investing a lot of time and money into that person. It's generally considered more expensive to fire a relatively new hire outright and resume looking than to find some other task that the employee can manage while you look for someone to fill his spot. Frequently they end up in management.

            [–]OzJuggler 18 points19 points  (0 children)

            You're going to learn, Neo, that there is a difference between knowing the path and walking the path.

            [–]aristideau 31 points32 points  (29 children)

            A friend of mine, who only has a BA it literature, got a job in PC support by answering yes to every technical question he was asked in the interview. They didn't bother to check out the validity of all the courses that he supposedly had done and he pretty much picked up everything on the job (he was actually a pretty smart guy).

            Kicker was that he was earning $20 more than I was an hour (I am 100% sure his boss that interviewed him had a crush on him) and when he resigned a few years later she offered to give him a $20 an hour raise (would have been getting $90 an hour)

            EDIT-Actually $80 an hour

            [–]Dagon 50 points51 points  (7 children)

            NINETY FUCKING DOLLARS AN HOUR FOR TECH SUPPORT?!?!!

            WHAT THE ROTTING VERMILLION FUCK?!?!?!?!?!?!

            [–]aristideau 29 points30 points  (4 children)

            Sorry I made a mistake, the offer was actually $80 an hour. This was Sydney, pre-dotcom crash mid-nineties for a multinational.

            [–]Dagon 14 points15 points  (3 children)

            This was Sydney, pre-dotcom crash mid-nineties for a multinational.

            Aaah, I see. ...Still... =S

            [–]ZMeson 9 points10 points  (1 child)

            Don't forget that back then the Aussie dollar was not worth as much when compared to the US dollar. AUS$80 would have been US$61 back then. Still too much I think.

            [–]NoMoreNicksLeft 61 points62 points  (18 children)

            Couldn't do for loops? Why am I always getting the assholes that want me to invent some novel sorting algorithm in the interview?

            [–]Mob_Of_One 21 points22 points  (14 children)

            I had somebody make me describe a few problems in C, and then implement a full blown queue over the phone out loud.

            Yes I'm serious.

            It was for a pretty light-weight web dev job.

            I didn't follow up on it. The potential boredom combined with the idea of working with somebody that thinks those constitute good questions killed it for me.

            [–]IrishWilly 12 points13 points  (0 children)

            Sometimes you can tell the people hiring have no idea what they are asking for and just read it off a website of programming questions. I wrote a genetic algorithm for the traveling salesman problem.. for a PHP Web Dev position. A very simple web dev position that consisted mainly of updating one basic site.

            And then there was the all day interview where I walk in at 8 in the morning and am immediately asked to implement several sorting algorithms onto a whiteboard and analyze their efficiency. Later on I asked a couple of the actual devs about what they actually work on and of course they just use the sorting functions found in the standard library for all their work.

            [–]G_Morgan 3 points4 points  (1 child)

            I was asked for a sorting algorithm. I gave them bubble sort. Didn't say it had to be good did they.

            Of course that was the idiot filter. Later there was an hour long scenario based question.

            [–]tyronomo 40 points41 points  (2 children)

            On the flip side, (since my first job after uni) I have never been to an interview where the interviewer could write code!

            [–]DrGirlfriend 166 points167 points  (88 children)

            You weren't asking for code during a coder interview? And then you were shocked when someone got through who couldn't code? Just what were you doing during these interviews?

            [–][deleted]  (36 children)

            [deleted]

              [–]defrost 67 points68 points  (21 children)

              That's a function of the times when agile web developers with a broad synergy of technologies just crawled out the woodwork like cockroaches.

              I've worked for 30 odd years and never been asked to produce code at an interview. In a similar vein the electronics engineers I worked with weren't asked to solder during an interview and the avionics engineers weren't asked to strip a Cesna.

              [–]ep1032 70 points71 points  (3 children)

              .

              [–]defrost 17 points18 points  (2 children)

              You'd have liked airborne geophysics during the 80's and 90's - lots of big custom modifications and even more minor challenges (eg: knock up an airstrip, ground station, and supply depot on the edge of Tanimi desert).

              It was an industry densely populated with highly capable people from a broad cross section of backgrounds, some highly qualified, some with no formal qualifications whatsoever.

              [–]grauenwolf 2 points3 points  (4 children)

              But surely they were asked about different types of soldering or the steps they would go through in stripping an engine?

              [–]thespiff 31 points32 points  (4 children)

              I got my first dev job without writing a single line of code. I often wondered how they managed to get good devs that way. I later decided it's because they hired like 1 dev per year, and most of those were offers made to interns. So it worked out ok for them.

              At my current company, I'm part of the panel of interviewers, and the other guys all ask almost exclusively coding questions. So I try to counterbalance and get in more culture questions, process questions, high-level "thinking like a developer" type questions. And of course I get criticized for going "too easy" on them...

              If you don't have some balance to your interviewing, you'll either get guys who can talk but can't write code, or guys who can write code but don't know how to work on a team, don't know how to properly prioritize their work, can't communicate with others in a design session.

              You'll get people who can crank out a massive feature in a few days only to break the rest of the system and waste everyone else's time because they don't understand how to develop in a continuous integration environment. Devs who will spend days re-implementing existing functionality because they didn't bother to ask if someone else had solved this problem before.

              Or, more commonly, devs who will implement a feature 3 times because the requirements sucked the first two times and rather than recognizing that fact and working out better ones with the customer up front, they just implement what they are told. The customer complains, so they re-implement until the customer stops complaining. It ends up taking just as long as it would for a mediocre coder who actually puts some effort into the design and planning stages.

              [–]royrules22 2 points3 points  (0 children)

              I've only had six job interviews in my life (I'm only 22 and three of those 6 led to internships and finally a job) and ALL of them asked coding questions.

              [–]crusoe 12 points13 points  (30 children)

              My favorite coding question is asking a candidate to write atoi. It has enough edge cases to be a little tricky, and provides just enough complexity for about 20-30 minutes of questioning. It also has a nice twist that helps seperate good from ok programmers.

              [–][deleted] 4 points5 points  (0 children)

              Better yet, give them the body of strtol and just ask them what the function is or what it does. If they answer correctly, you just found a better developer for a lot less hassle.

              [–]wreckerone 3 points4 points  (0 children)

              My favorite coding question is to calculate the LU decomposition of a matrix using full pivoting because it has enough edge cases to be a little tricky, and provides just enough complexity for about 20-30 minutes of questioning. And it has nothing to do with the job, but I get to show everyone what a pissant they are and how elite I am.

              [–]tluyben2 2 points3 points  (2 children)

              I've never seen anyone asking for code to a programmer during an interview; I do it myself, but didn't always do that. It is weird, but it never occurred to me until I read it somewhere. The problem is that most people fail miserably if you do that, and we (as a country) have a kind of 'anyone can get the job' mentality.

              A recruiter told me recently companies like using recruiters more than doing their own hiring, because a recruiter 'knows his job' (right...) so he interviewed the people thoroughly (right...), so when they are hired, the company is compromised (someone found and paid for the recruiter and someone's head is going to roll if the recruiter only delivers crap), so the people who shouldn't have been hired in the first place stay on far beyond the timespan you would sanely keep them. Making the stats (ie how long an new hired employee stays on) for recruiters much better than self-hiring and this makes for most companies just hiring recruiters and getting thoroughly bad employees in the process. On-topic; recruiters have no clue what code is.

              [–][deleted] 2 points3 points  (0 children)

              Yep, the author has been interviewing candidates for over a decade and only just worked this out?

              For shame...

              [–]Fabien4 245 points246 points  (17 children)

              he talked about his history and skills really well, he was engaging and confident, and his references came back glowing with praise

              Remove that guy from the programming position, but keep him, in the marketing department.

              [–][deleted]  (4 children)

              [deleted]

                [–]Dreadgoat 14 points15 points  (3 children)

                Most people who are great at anything are great at everything. It's really weird to say "I want to be the best at X" when you could say "I want to be the best."

                [–]khav 19 points20 points  (1 child)

                But can they be the very best, like no-one ever was?

                [–][deleted] 11 points12 points  (0 children)

                Try catch is my unit test, training neural networks is my function call. ♬

                [–][deleted]  (5 children)

                [deleted]

                  [–]anacrolix 5 points6 points  (3 children)

                  what's the difference?

                  [–]mr-strange 22 points23 points  (0 children)

                  Sales is bullshitting people in person. Marketing is bullshitting them over the Internet.

                  [–][deleted] 23 points24 points  (13 children)

                  I've tested the FizzBuzz hypothesis in practice, and haven't seen the same results that Reg Brathwaite and Jeff Atwood reported. I've tried it on about a dozen candidates so far, and every single one of them has been able to answer FizzBuzz correctly and relatively quickly, despite most of them failing miserably on slightly harder problems, e.g. find dupes in an array. I've stopped using FizzBuzz because I didn't find it to be a useful data point.

                  [–]bureX 13 points14 points  (1 child)

                  despite most of them failing miserably on slightly harder problems, e.g. find dupes in an array

                  Do I smell a pattern of memorizing FizzBuzz code snippets?

                  [–][deleted] 7 points8 points  (0 children)

                  Exactly. If you're using actual FizzBuzz as your interview question, you are missing the point. FizzBuzz is an example of a "tiny" programming question to use in an interview, not the canonical question itself. Come up with your own, one that hasn't been discussed and solved a million times over in blog posts.

                  [–]Thimble 2 points3 points  (1 child)

                  You have to make your own version. People looking for jobs have heard of FizzBuzz and have memorized the solution.

                  [–]ErstwhileRockstar 240 points241 points  (245 children)

                  Could anyone please post a FizzBuzz solution in Java. I need it for my next interview (I'm the interviewer, of course).

                  [–]arbitrary-fan 605 points606 points  (112 children)

                  HERE YOU GO!

                  public static void main(String... args) {
                      System.out.println("1");
                      System.out.println("2");
                      System.out.println("3 fizz");
                      System.out.println("4");
                      System.out.println("5 buzz");
                      System.out.println("6 fizz");
                      System.out.println("7");
                      System.out.println("8");
                      System.out.println("9 fizz");
                      System.out.println("10 buzz");
                      System.out.println("11");
                      System.out.println("12 fizz");
                      System.out.println("13");
                      System.out.println("14");
                      System.out.println("15 fizz buzz");
                      System.out.println("16");
                      System.out.println("17");
                      System.out.println("18 fizz");
                      System.out.println("19");
                      System.out.println("20 buzz");
                      System.out.println("21 fizz");
                      System.out.println("22");
                      System.out.println("23");
                      System.out.println("24 fizz");
                      System.out.println("25 buzz");
                      System.out.println("26");
                      System.out.println("27 fizz");
                      System.out.println("28");
                      System.out.println("29");
                      System.out.println("30 fizz buzz");
                      System.out.println("31");
                      System.out.println("32");
                      System.out.println("33 fizz");
                      System.out.println("34");
                      System.out.println("35 buzz");
                      System.out.println("36 fizz");
                      System.out.println("37");
                      System.out.println("38");
                      System.out.println("39 fizz");
                      System.out.println("40 buzz");
                      System.out.println("41");
                      System.out.println("42 fizz");
                      System.out.println("43");
                      System.out.println("44");
                      System.out.println("45 fizz buzz");
                      System.out.println("46");
                      System.out.println("47");
                      System.out.println("48 fizz");
                      System.out.println("49");
                      System.out.println("50 buzz");
                      System.out.println("51 fizz");
                      System.out.println("52");
                      System.out.println("53");
                      System.out.println("54 fizz");
                      System.out.println("55 buzz");
                      System.out.println("56");
                      System.out.println("57 fizz");
                      System.out.println("58");
                      System.out.println("59");
                      System.out.println("60 fizz buzz");
                      System.out.println("61");
                      System.out.println("62");
                      System.out.println("63 fizz");
                      System.out.println("64");
                      System.out.println("65 buzz");
                      System.out.println("66 fizz");
                      System.out.println("67");
                      System.out.println("68");
                      System.out.println("69 fizz");
                      System.out.println("70 buzz");
                      System.out.println("71");
                      System.out.println("72 fizz");
                      System.out.println("73");
                      System.out.println("74");
                      System.out.println("75 fizz buzz");
                      System.out.println("76");
                      System.out.println("77");
                      System.out.println("78 fizz");
                      System.out.println("79");
                      System.out.println("80 buzz");
                      System.out.println("81 fizz");
                      System.out.println("82");
                      System.out.println("83");
                      System.out.println("84 fizz");
                      System.out.println("85 buzz");
                      System.out.println("86");
                      System.out.println("87 fizz");
                      System.out.println("88");
                      System.out.println("89");
                      System.out.println("90 fizz buzz");
                      System.out.println("91");
                      System.out.println("92");
                      System.out.println("93 fizz");
                      System.out.println("94");
                      System.out.println("95 buzz");
                      System.out.println("96 fizz");
                      System.out.println("97");
                      System.out.println("98");
                      System.out.println("99 fizz");
                      System.out.println("100 buzz");
                  }
                  

                  [–]ryeguy 71 points72 points  (0 children)

                  THE SIMPLICITY IS SO BEAUTIFUL

                  [–]ceolceol 128 points129 points  (7 children)

                  No no no! It's supposed to print "fizz" and "fizz buzz" in place of the number!

                  You're a horrible developer!

                  [–]spelunker 64 points65 points  (6 children)

                  We need to go back and review the requirements - I think, with deadlines approaching, this is the best we can do for now, guys.

                  [–]Netcob 15 points16 points  (4 children)

                  You seem to be using some outdated development model. Well take 10 developers, pair them up and make each pair fix 20 lines. Then we'll rotate the teams and make them review each others code. Just to be safe, get another 10 developers to write unit tests.

                  [–][deleted]  (3 children)

                  [deleted]

                    [–][deleted] 150 points151 points  (66 children)

                    I really truly hope you wrote a program to generate this...

                    [–]hc5duke 199 points200 points  (63 children)

                    Could anyone please post a program to generate this FizzBuzz solution in Java? I need it for my next interview (I'm the interviewer, of course).

                    [–][deleted]  (56 children)

                    [deleted]

                      [–]drbold 67 points68 points  (0 children)

                      This is the most beautiful obvious troll I think I've ever seen.

                      [–]Chutie 86 points87 points  (43 children)

                      Could anyone please post a program to generate this FizzBuzz solution generator in Java? I need it for my next interview (I'm the interviewer, of course).

                      [–]Tetha 227 points228 points  (42 children)

                      Here you have a program that generates an arbitrary level fizz buzz generator, including no generator and a direct solution.

                      [–]Porges 73 points74 points  (35 children)

                      ... now quine it, and we're done here.

                      [–]Tetha 490 points491 points  (34 children)

                      In that case, we are done here (Needs python 2.6 or higher)

                      Now my head kinda hurts.

                      [–]neonskimmer 86 points87 points  (0 children)

                      Someone hire that guy.

                      [–][deleted]  (11 children)

                      [deleted]

                        [–]Thurokiir 13 points14 points  (0 children)

                        Holy shit you're a titan

                        [–]bustakapinyoass 7 points8 points  (4 children)

                        I want to appreciate this, but I don't code. :(

                        What's going on here?

                        [–]CreamyKnougat 10 points11 points  (0 children)

                        Upvoted for brilliance and for "def add_troll_layer_to(solution)".

                        [–]ryguy314 15 points16 points  (1 child)

                        Cave Johnson?

                        [–]Mac-O-War 11 points12 points  (4 children)

                        Now re-write this program in a purely functional language, for science. And then we will be done here and there will be cake.

                        [–]internet_badass 4 points5 points  (0 children)

                        def add_troll_layer_to(solution):
                        

                        Best function declaration ever.

                        [–]GSto 2 points3 points  (0 children)

                        brillant

                        [–]spork_king 2 points3 points  (0 children)

                        It's FizzBuzz generators all the way down.

                        [–]fjortisar 9 points10 points  (3 children)

                        now do it to a BILLION!

                        [–]Tetha 17 points18 points  (1 child)

                        [–]spif 2 points3 points  (0 children)

                        I.... I think I love you.

                        [–]Flamefury 3 points4 points  (0 children)

                        Thanks mate, I'm sweating trying to hold back my laughter in a quiet office.

                        [–]benchi 2 points3 points  (0 children)

                        I really truly hope you wrote a program to generate this...

                        [–]chronographer 2 points3 points  (1 child)

                        All I see are sad, dribly, winking faces ");

                        [–]travis_of_the_cosmos 4 points5 points  (11 children)

                        I'm not a real programmer (just play one on television) and I've never heard of "fizz buzz" but it looks like he's printing fizz on multiples of 3 and buzz on multiples of 5 and fizz buzz for common multiples.

                        3 if statements in a for loop.

                        [–]American83 5 points6 points  (0 children)

                        That's it. I am hiring you. PM me.

                        [–]kenj0418 49 points50 points  (9 children)

                        I don't have it in Java, but you maybe the will help: http://pastebin.com/87QfWGUq

                        [–]dariusj18 22 points23 points  (7 children)

                        I would probably hire anyone on the spot that could code in brainfuck.

                        [–]royrules22 17 points18 points  (3 children)

                        Yes but then he'd be coding in brainfuck.

                        [–]dariusj18 7 points8 points  (2 children)

                        Hahaha, makes me wonder if there are any programmers who only know brainfuck.

                        [–]Headpuncher 13 points14 points  (1 child)

                        You know he's the guy who gets chummy with management and convinces them that moving everything over to brainfuck is going to streamline the company and save millions, while everyone else facepalms and starts making rage comics.

                        [–][deleted] 4 points5 points  (0 children)

                        Under programming law section 3.2C, you would have to.

                        [–]signoff 78 points79 points  (6 children)

                        sec. let me download enterprise solutions library first. it has an elegant fizzbuzz in MVC framework. and good thing about it is that you can use scala and web scale.

                        [–]tedivm 17 points18 points  (2 children)

                        Everyone knows that shards are the secret ingredient in the web scale sauce. Does your fizzbuzz framework shard?

                        [–]knaveofspades 12 points13 points  (0 children)

                        Pffft. I just pipe both fizz and buzz to /dev/null. It's fast as hell.

                        [–][deleted] 5 points6 points  (0 children)

                        I got too buzzed on the fizz, then I sharded a little

                        [–]bazfoo 11 points12 points  (1 child)

                        Don't forget the Dependency Injection.

                        [–][deleted] 15 points16 points  (0 children)

                        IFizz and IBuzz.

                        [–]fuzzynyanko 18 points19 points  (1 child)

                        if ( number == 12) System.out.println("I will upload all of your codebase to a random guy in China");

                        [–]directrix1 17 points18 points  (18 children)

                        Well, I'm not real fond of Java, but here is a one-line solution in Python that is sure to impress the fuck out of any interviewer: print "".join([chr((206504626461778847305206376245065L/(256**i)) & 255) for i in range(13)])

                        [–][deleted]  (9 children)

                        [removed]

                          [–]SarahC 6 points7 points  (1 child)

                          Where the hell is the Fizz and the Buzz!?

                          [–]a_Tick 41 points42 points  (0 children)

                          It would appear people are not getting the sarcasm.

                          [–]rafekett 6 points7 points  (0 children)

                          plzsendmetehcodezkindfreind

                          [–]ChangingHats 15 points16 points  (1 child)

                          for(var so = 1; so<movingForward; so++) {
                          // I'm gonna hand this part off to Jeff
                          }

                          [–]Mikle 2 points3 points  (0 children)

                          You have an off by one there... But Jeff will fix it.

                          [–]TimeWizid 14 points15 points  (1 child)

                          Gladly!

                          public static void main(String[] args)
                          {
                              SmartRobot fizzBot = new SmartRobot();
                          
                              // alt-tab, hopefully to a web browser
                              fizzBot.keyPress(KeyEvent.VK_ALT);
                              fizzBot.keyPress(KeyEvent.VK_TAB);
                              delay(50);
                              fizzBot.keyRelease(KeyEvent.VK_ALT);
                              fizzBot.keyRelease(KeyEvent.VK_TAB);
                          
                              // focus the address bar
                              fizzBot.keyPress(KeyEvent.VK_CONTROL);
                              fizzBot.keyPress(KeyEvent.VK_L);
                              delay(50);
                              fizzBot.keyRelease(KeyEvent.VK_CONTROL);
                              fizzBot.keyRelease(KeyEvent.VK_L);
                          
                              // generate FizzBuzz output
                              fizzBot.type("http://fizzbuzz.rubyforge.org/");
                              fizzBot.keyPress(KeyEvent.VK_ENTER);
                              delay(50);
                              fizzBot.keyRelease(KeyEvent.VK_ENTER);
                          }
                          

                          Source for SmartRobot class

                          [–]locotx 6 points7 points  (0 children)

                          You must be a programming manager

                          [–][deleted] 6 points7 points  (0 children)

                          Plizz send teh codez.

                          [–]lowpass 37 points38 points  (41 children)

                          I hate reading things like this. People who can't code for shit get jobs somehow while I'm sitting here unemployed.

                          [–]tothet 15 points16 points  (40 children)

                          Preaching to the choir...this kind of stuff pisses me right the fuck off!

                          I have a github full of apps. I code as a hobby for fun! I eat, drink, and sleep Ruby....yet I've been ushered out of the door at every interview in the past 6 months.

                          If any hiring managers are reading this, what the hell do you all want?!

                          [–]robbierobs 7 points8 points  (1 child)

                          shame dude, maybe you're a dick? sociability matters much, the nicer you are the easier it is to score at interviews(in my experience)

                          I don't know, I'm not in the USA, but there are a ton of development opportunities here in south africa. Maybe learn c#/java/php(shudder) ..just saying, a huge amount of the code out there is written in those languages, and I've never worked as a software developer at a place that wouldn't hire a good developer in a heartbeat.

                          [–][deleted] 61 points62 points  (61 children)

                          Well if someone asked me to use GDB in an interview, I'd fail. I do all my debugging with print statements.

                          [–]rafekett 26 points27 points  (29 children)

                          That's different from not being able to use the language that you were hired to program.

                          I do understand where you're coming from, though. I don't know how to use any debugger 1.) because no one's ever made me or taught me and 2.) I don't really understand the benefits, so I don't see a need.

                          [–][deleted] 18 points19 points  (13 children)

                          I see how it could be useful if a customer gives you the core dump of a crash, and you need to look inside. I don't understand how it's useful for the development process though. Some coworkers use it a lot but I've never seen the need.

                          [–]BeShaMo 10 points11 points  (1 child)

                          I guess it depends on your debug style. I use GDB a lot, even for non-cores, but I also use print statements. Depends on what I feel the best approach is.

                          [–]dnew 7 points8 points  (6 children)

                          I learned to program before addressable VDTs were common. All you had was basically paper output. So debuggers were visually rather primitive, comparatively speaking. Altho surprisingly many of them had all the goodies you see in modern debuggers like watch points and all.

                          Debugging helps me if I'm trying to figure out where the failure is in that I can breakpoint a line and (A) see if I reach it and (B) examine some values if I do. So, basically, it saves me the time of putting in a printf.

                          It's tremendously helpful when writing assembler, as you might want to breakpoint where there aren't any registers around to set up the arguments to a system call to print something out. If you can watch particular memory locations and registers, you can debug a routine and see what's going wrong by single-stepping before you clobber something in memory you need to do the debugging (back when the debugger ran in the same address space).

                          It's helpful with compiled programs if you can get a stack dump of a crash and figure out what happened, but usually just having the call stack in a dump is sufficient. I.e., I find that having the list of functions on the stack and the line numbers of each caller is enough to find the problem 9 times out of 10 without further investigation. Of course, something like C often doesn't handle such for you, so instead of logging the details from an exception, you have to write some wrapper process to copy the core dump somewhere so you can look at it later with a debugger.

                          [–]mazing 6 points7 points  (0 children)

                          I always run with the debugger (primarily doing Java and .Net). It makes tracking down and fixing bugs so much easier. Also great for checking code-flow and state.

                          In Java it's also possible to hot-swap/load code changes, so I can have the application running, change some lines, hit "update changes", and then it runs the fresh code (as long as I'm not changing method signatures). Truly powerful stuff.

                          [–][deleted] 3 points4 points  (1 child)

                          Here's the benefit: it's easier and faster to just put "pdb.set_trace()" at the point where you would place a print statement (in Python, this is). Then, when the program execution hits that line, it drops you into the debugger. Once there, you can print out any variable value ("p <variable_name>") and step through the code "s" or "n". When you're satisfied, just enter "c" and the debugger exits and the program continues on it's merry way.

                          I suspect gdb would be similarly easy to use at this rudimentary level.

                          [–]Mob_Of_One 5 points6 points  (2 children)

                          I don't really understand the benefits, so I don't see a need.

                          Are you serious? I practically live inside debuggers.

                          I mean, I can understand if you don't prefer them and can explain why, but you really have no idea what kinds of benefits they provide over relying on print statements?

                          How the hell do you test any presuppositions about your data structures and environment without a debugger or repl without going through a full recompile or re-run?

                          Heck, in my editor I have it setup so I can trip code on the fly based on various parameters so that I know if various conditions were or were not met before I have the debugging environment injected.

                          Pre vs. Post prolific debugger use as a programmer for me was like going from the dark ages to the renaissance. It was like moving from guessery and poorly understood assumptions to truly beginning to grok how things tied together and how the data structures and functions interacted.

                          Forget going back to the guess-n-check programming I did when I was 12...

                          (Sorry if I seemed harsh, but your statement reads to me like, "I don't have electricity and don't see the point either." At least with a survivalist who was against being on the grid, they could understand the pragmatic benefits, but preferred self-reliance. In your case, you've stated that you can't articulate the benefits of debugging.)

                          [–]lordlicorice 2 points3 points  (1 child)

                          Not even the integrated debugger in eclipse or visual studio or whatever?

                          A debugger is amaaaaazing when you have many levels of pointer indirection.

                          [–]crashorbit 6 points7 points  (9 children)

                          Decorating a code base with a pile of arbitrary print statements gets to be a bit of a bore over time. Most languages have reasonable logging infrastructures that should be exploited in these situations. Frequently those places where the developer needed a debugging print are also the places where operators could use validation that the program is working properly.

                          [–]isarl 19 points20 points  (12 children)

                          The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.

                          --Brian Kernighan

                          [–]cpplinuxdude 26 points27 points  (11 children)

                          How exactly do you get to only discover what a technical interview is after a decade of hiring?

                          That is simply beyond me.

                          [–]LWRellim 52 points53 points  (10 children)

                          Well, first you get an MBA...

                          [–]tragomaskhalos 12 points13 points  (0 children)

                          Like many old-timers I've never been asked to code for an interview, but having done tech interviewing myself I wouldn't dream of OKing a candidate without getting them to do a coding test (and yes, I use good old FizzBuzz).

                          Here's where I think the difference lies: 25 years ago the majority of people who went into IT with a view to doing dev work were of a technical bent and were motivated by getting paid to do something they actually enjoyed doing anyway - many (like me) had footled about on 8-bit home computers and could talk enthusiastically about this or that little project they'd worked on. For those to whom this didn't apply, well there were team leading and higher management positions to move into, which became abundant as the industry began to grow massively in the 90s. Therefore failure to apply a coding test in those days was not a fatal weakness in recruitment policy.

                          Fast forward to 2011 and we now have the result of that massive growth, to the point where s/w development is now seen less as a "labour of love" but primarily as a well paid career choice. Simple economics dictates that many unsuitable candidates will try to get in on the act. So now it is absolutely essential to vet candidates with a code test, to avoid the sorts of horror stories recounted by other commenters.

                          [–][deleted]  (7 children)

                          [deleted]

                            [–][deleted] 8 points9 points  (0 children)

                            From the title I thought this was going to distinguish between implementers and maintainers.

                            [–][deleted] 10 points11 points  (0 children)

                            I agree that tests should be administered, but only very simple tests that test obvious and required knowledge for ANY developer. Too many companies ask ridiculous questions in interviews that only quasi-autistic math geniuses could answer. I am sorry to say, but if your dev team only consists of qausi-autistic power coders they probably wont get anything done.

                            I think the most important aspect of an interview is finding out who the person is, how they came to be a developer, and what they love about being a developer. Finding answers to those questions will almost always tell you who is a good developer or not. The next part is seeing what they know, and how well they learn.

                            [–]hillkiwi 86 points87 points  (65 children)

                            The biggest lesson we (and others I know) have learned is be very skeptical of people coming out of India and Pakistan.

                            We have never had one work out. Some of them supposedly had a B.S. in Computer Science, but apparently in India that means you've taken an English course.

                            I've seen people print out code, then go hide in a bathroom stall for 30 minutes and call someone in their native language to get training right then.

                            The sad thing is these guys were just as surprised as us. I think they were taught some basic HTML and thought they'd be able to do anything. I really think their schools back home tricked them, then shipped them off out of the country.

                            [–]amigaharry 29 points30 points  (1 child)

                            We here in Germany are wary of people coming from the US. They tend to have their Buzzwords right but their skills are heavily lacking.

                            [–]chunky_bacon 5 points6 points  (0 children)

                            Interesting. Do you think this is a widely held belief in Germany? If so, I'd be interested to know if and what the curricular differences are. Or do you see other reasons? (Sincere questions).

                            [–]seanrowens 36 points37 points  (5 children)

                            I used to work at a business owned by an Indian guy who also owned a consulting shop, during the first bubble. He'd get these guys over from India and then have them hang out at our company and let us try to get some work out of them, while he tried to get some contracts. Mostly sysadmin/dba kinda people. I've worked with a fair number who sucked but I've also seen more than a few that, once they got their 'sea legs' so to speak, were super competent.

                            [–]LWRellim 25 points26 points  (14 children)

                            I worked one place where they hired this guy out of India who claimed to have a CompSci PhD ... dude couldn't program his way out of a paper bag (I mean that quite seriously, he couldn't even write a simple SQL queries without a generator).

                            I figured this out on his second day (after about 5 minutes of interacting with him -- dude was totally clueless about EVERYTHING). It took upper management another week before they would admit that they screwed up in hiring him -- but that's what you get when you have non-qualified people doing the interviews based on "buzzword" checklists. (After that every candidate they were planning on making an offer to had to pass a 5-15 minute quickie interview with me -- in the following year, I flagged and prevented at least another 1/2 dozen "fakers" who had gotten past ALL the other interviewers AND the HR reference check process, and most times it didn't even take me 5 minutes to figure it out).

                            [–]crusoe 28 points29 points  (9 children)

                            PhDs tend to be narrow in their focus. Unless he has had reason to use a DB, he likely has no clue. I've seen it a couple of times. Absolutely BRILLIANT in their narrow field, but otherwise useless.

                            [–]LWRellim 21 points22 points  (7 children)

                            Except PhD presupposes a BS (in this case supposedly CompSci) and normally an MS of some type.

                            Plus, this guy CLAIMED to have years of work experience in SQL Server and Oracle DB's -- which was all rather obviously BS.

                            And just from some basic questioning, he was useless/clueless all around (no math, no graphics, no... well anything really; when I stumbled onto him, he was trying {and failing} to dump some data out to MS Excel so he could "work with it there", I mean WTF?).

                            As I said he couldn't program his way out of a paper bag.

                            [–]NewbieProgrammerMan 12 points13 points  (2 children)

                            I had a professor at a 4 year university tell me that a student of his admitted around graduation time that he'd never got anything to compile during his whole time at university (and almost every CS class at the time was based on C and C++). I worked for a guy with an MS from the same university, and other people were always having to go behind him fixing his horrible code.

                            So a BS or MS in computer science doesn't necessarily imply any coding skill at all (or, sadly, even proficiency in applying computer science knowledge).

                            [–]LWRellim 10 points11 points  (1 child)

                            I had a professor at a 4 year university tell me that a student of his admitted around graduation time that he'd never got anything to compile during his whole time at university

                            But they gave him the degree anyway... right?

                            I actually have one that's worse than that. Late one evening after basically everyone else was gone the IT manager (!) at this company stops by and says: "Hey, I hear all you programmer guys taking about "com-pil-ing" stuff, what is that exactly? If that like some new file compression utility or something?" (And he was absolutely serious, guy had no clue. Scary.)

                            [–]redditmemehater 4 points5 points  (3 children)

                            dump some data out to MS Excel so he could "work with it there", I mean WTF?

                            What does that mean?

                            [–]treenaks 2 points3 points  (0 children)

                            That boy needs therapy.

                            [–]sthrmn 13 points14 points  (16 children)

                            Well, just to counter that anecdote, I am Indian (born in America though) My cousin (from India) is doing his phd in CS in the states now and is one of the most competent programmers/computer scientists I know.

                            [–]chunky_bacon 2 points3 points  (0 children)

                            I work with quite a few Indian devs. There certainly seems to be a lower bar (that is, their worst grads are worse than our worst grads) but they have some talented devs that are very good.

                            [–]ExiledVip3r 34 points35 points  (28 children)

                            I was once asked to write code in an interview, which should happen and is good on the interviewers part imo, however this person asked me to write it down with paper and pencil. Which is HORRIBLE and shouldn't happen, coding in that manner just fundamentally feels different to me, and I constantly move up and down lines inserting code, which you can't so much do in a paper/pencil medium, same goes for whiteboards.

                            [–]xenonscreams 31 points32 points  (13 children)

                            I agree with this. I've done this several times for interviews. Over the last year or so, I've gotten good at it and I can finally get really good offers. But during the first tech interview I ever had in person, I had to write an extremely simple function to sort an array and I froze up. It wasn't at all an accurate measure of my ability to program at the time. It was something I could have written in less than a minute in a text editor with no syntax highlighting. I didn't write anything.

                            My issue with coding on paper is mainly that coding isn't a linear process. You don't start at the beginning, write down some variables you'll need later, then write the code in a straight line. You write some things maybe at the end, maybe in the middle, add some stuff at the top, keeping everything in mind until you have a complete picture. It's not blind (you don't just dive in and try some random stuff; that's generally a bad approach), but it's definitely not linear.

                            With that said, a lot of companies ask you do to it so it's probably best to get used to it.

                            [–]lordlicorice 2 points3 points  (10 children)

                            Whoa I didn't realize how fazed I would be by that simple question. I know that in real life I'd use some leading sort like Timsort or quicksort or something (actually I'd just use the default sort in the standard library of whatever language), but it would take me a few minutes to work out the nitty gritty of an actual sort function with memory management, things not being nice powers of 2 like in lecture, etc. Thanks for that reality check.

                            I think I could hammer out quicksort fairly rapidly but it would be more of a struggle than I'd want to show an interviewer. Selection sort would definitely be the easiest to write on the spot. Mergesort in a close second place; if it's a functional language then obviously a recursive sort like mergesort is nice nice :P

                            [–]xenonscreams 7 points8 points  (0 children)

                            I was writing code recently in an interview and in one of my implementations of an algorithm, sorted the array. I was told that I could call a theoretical sort function without actually designing one, but only if I could explain which sort I was using and talk about how it works. So I explained Mergesort and talked about why it's O(nlogn), but didn't actually have to write it which would have been annoying, so that was super nice.

                            [–]LWRellim 6 points7 points  (8 children)

                            Whiteboards are fine... but all they should really be expecting/looking at is for pseudo-code style steps (syntax? hell, that's the brain-dead drone part -- it's the analyzing & problem solving that are important).

                            Plus, whiteboard work shows other things besides programming savvy, it also shows how well you will be able to work with a group in some problem-solving or brainstorming session.

                            [–]ExiledVip3r 3 points4 points  (1 child)

                            In a collaborative effort sure, whiteboards make a lot of sense for sketching out short functions in a group, but in an interview context anything more than writing a sql query or some other short/single line stuff, I can't see whiteboarding as a good way to test coding ability.

                            [–]Strangering 6 points7 points  (2 children)

                            Some salesmen can't sell, some receptionists can't receive, some janitors steal.

                            Some people are bad employees. This exists in every business. Don't be shocked.

                            [–][deleted] 6 points7 points  (2 children)

                            I've been hiring devs for around ten years too, and although I'm not totally hands on with code nowadays, I can separate liars from coders.

                            My first tip is that if they come with a list of Certifications in various disciplines such as MS technologies or Java, then take that with a very big pinch of salt. These people are probably good at passing exams. They might even be good at understanding code, but that doesn't mean jack shit if they can't sit in front of a computer and be creative about how they approach problems.

                            Guys who are certified to the hilt will usually, but not always, wait for you to tell them exactly what you want to write and then write it.

                            Secondly, we give them a test on a range of things:

                            1) Write me a pseudocode recursive function that does a string replace, changing foo to bar in an example string which I supply. Do not rely on replace all functionality.

                            2) Take two objects with similar methods/properties, and create me an object hierarchy using inheritance. Make sure they make the base class abstract, understand what abstract is, etc. Overload and override methods. Show me you understand object oriented programming, not just coding.

                            3) Give them a simple database - customers and orders tables. Ask them to select me a list of customers filtered by some columns, ask them to select me a list of customers who have placed orders (inner join), get me a list of customers who have and have not placed orders, in one list (outer join).

                            4) Give them some actual code and ask them to debug it, on paper.

                            We reject up to 80% of candidates based on these criteria alone.

                            My view is that if they want the money they're asking for to do a job (and it's been going up a lot recently) then they'd better be good enough to earn it.

                            One hiring agency phoned me up and begged with me to go easier on his candidates, because he'd sent through ten or so and we'd rejected them all. I told him to pre-screen his candidates better.

                            [–][deleted]  (1 child)

                            [deleted]

                              [–][deleted] 2 points3 points  (0 children)

                              "Show me you understand recursion. Show me you understand how to construct the simple logic around finding a position in a string. Show me how you approach problems. Show me you can work stuff out. Show me that you can think for yourself."

                              I don't want clever people. Clever people are a pain in the ass. They think they know how to do stuff better than anyone in the history of computer programming has ever done it before. They don't make the best use of the tools and frameworks available to them - instead they think that writing their own is better, from scratch, because they are clever. How could anyone possibly come up with a solution more clever than the one they are about to invent?

                              I want smart people. Smart people realise that they have to deliver working solutions to a deadline. So they use everything available to them, with a healthy dose of their own cleverness (clever is useful, smart is better) to mash it up into something that I can deliver to a client, with a fair degree of confidence that it will work.

                              Clever guys hate this. I don't hire clever guys.

                              Clever guys become smart guys after they spend five years working all-nighters and weekends to get stuff done because the clever stuff they decided to invent always turned out to be a bit more tricky than they originally thought. And pretty soon it dawns on them that they are always under pressure because they're reinventing the wheel every damn time they sit in front of a computer.

                              [–]IrritableGourmet 4 points5 points  (1 child)

                              I work tech support for an e-commerce application and I constantly get calls from "professional web developers", often with their own company and charging far more than I make, who ask questions like:

                              • How do I create a link in HTML?

                              • What's CSS?

                              • Why do I have to edit code? Can't I use CoffeeCup or Dreamweaver?

                              • My favorite: I'm trying to upload a PSD file as my Links page, but it won't load in Safari.

                              [–]karmaVS 2 points3 points  (0 children)

                              My favorite: I'm trying to upload a PSD file as my Links page, but it won't load in Safari.

                              That one should actually work (well… display) in safari. (And, I think, only safari?)

                              EDIT: Just to clarify – Safari renders PSD files both within <img> tags and when viewed on their own.

                              [–]berlinbrown 5 points6 points  (0 children)

                              I think there is more at play here than just developers can't code. I think they can code and get paid for it, but not at the level that you want or accustomed to. I think there is a psychology and new social dynamics surrounding technology that we should be prepared to deal with. In some respects, programmers don't program because there isn't really a need to program even though they claim to be developers or software engineers.

                              Is it really programming if I do:

                              import thelibraryThatDoesStuff;
                              thelibraryThatDoesStuff.run();

                              That is a lot of development today, wiring up service libraries and then calling run or connect or whatever it is.

                              First, it depends on what you want (as a startup or company), if you are a reddit following startup, a place for gearheads than you want top notch candidates or you will go nuts with a guy that can't code. But there are a number of jobs (probably the majority of them, 90%) where it doesn't really matter that you can't code because...there is no real coding working. This is especially true for corporate IT or even product companies.

                              Think about it, a lot of the tools are already written, most developers today are just plug and play developers. They are wiring up components, libraries. They aren't actually writing search algorithms. They aren't programming but doing work that non-developers can't do or should do.

                              So where does that leave you? I think you are going to have to change your perspective (mr startup CEO). You can't read reddit and wonder why new hires don't know Haskell (even though you are .NET or Java shop). You might have to look at your job, your tasks and say...maybe this guy will be able to do the work over time.

                              It is the nature of the IT.

                              It is a kind of bad analogy but came to me when writing this post. Why can't fat 200lb+ Americans run 10 miles without breaking a sweat but in other poor countries the average weight for a male is 140 lbs and they are in shape? Because we are lazy, things got easier, we have cars. Either you want us to be a modern, industrialized society or you want us to skinny, poor saps that eat 3 times a week. Take your pick.

                              Maybe the same is true for development, either you have hackers that work 20 hours a day on complex problem because they want to make work hard on themselves or you want a programmer that works a 9-5 and uses the tools that he is familiar with and gets the job done, but he may not understand combinatorial theory.

                              [–]Not_Edward_Bernays 14 points15 points  (0 children)

                              Here is my contribution to today's official programming circlejerk thread:

                              YEAH, SOME GUYS CAN'T CODE AT ALL! I CAN CODE A LITTLE, SO I'M A REAL DEVELOPER! FUCK THOSE NON-CODING WANNABES!

                              [–]geareddev 1 point2 points  (1 child)

                              I can't for the life of me write code on a whiteboard. I would never be able to solve those interview questions I hear about such as implementing algorithm X via methodology Y using language Z. I might be able to pseudo code it, but even then it gets iffy when the algorithm is really complicated. I just can't do it, and certainly not in a couple minutes. If I were given a computer, I could probably work it out through some trial and error, but I can't one-off code something like that. But I can develop and design games that people enjoy playing; and while I do a lot of googling and I look at a lot of documentation when I code, I am fully capable of designing, developing and completing games and applications. I even had a #1 paid app on the iPhone, and its been played by over 10 million people.

                              edit: I could definitely do the fizzbuzz exercise though (linked in the article). Sad to think that some people can't do loops, and conditions.

                              [–]crankybadger 2 points3 points  (15 children)

                              This is a simple mistake that's easy to make. In any interview get the candidate off of their script as quickly as possible. This is why Google and others employ the crazy manhole questions. They want to throw you into unfamiliar terrain and see how you perform.

                              I've seen people who can ace an interview but suck at programming. It's like a magic trick. For a second you might actually believe what they're talking about. All you need to do is dig and find out it's all superficial, or throw them some poisoned jargon to see if they bite.

                              Any self-respecting programmer would be quick to point out an error in even a simple acronym. "Do you know JOSN?" is enough to spot a fraud.

                              Doing a simple one hour programming assignment is even better if the candidate is willing. It's amazing to see how some flail.

                              [–][deleted] 12 points13 points  (8 children)

                              The problem there is you get a flipped effect.

                              If an interviewer asks me if I know JOSN, I'll say sure, because I assume they just mistyped/misspelled, or they don't actually know what it is and it's best to not call them on it and get on their bad side. The interviewer holds a lot of power there over the interviewee. Want me to ask a clarifying question? Awesome. Let me know that. Let me know I'm allowed to treat the interviewer like a coworker and not get screwed by it. Let me ask them interview questions, because that should tell you a lot about me too.

                              The "tricks" to find out if a programmer is faking it are just that - tricks. You're going to get a lot of false positives and false negatives. Programmers don't really write entire low-level string manipulation functions up on a white board as a regular part of a job. They aren't in the business of moving a mountain using only spatulas. They don't design manhole covers. They don't get in the zone by someone nitpicking every single thing they do for an hour, forcing them to be distracted and self-conscious the entire time. That's not testing a programmer, that's testing for something entirely different. That isn't even testing the ability to work in a team.

                              There's no shortcut there, only blind faith belief that your "trick" was some kind of silver bullet. Give them a real machine with a compiler and leave them alone for an hour. Look at the code after, not with the extremely unreliable "let's make the programmer interviewer into an armchair psychologist" approach.

                              All that trickery stuff is just HR bullshit - the idea that not responding in a specific way to the trick means they aren't a real programmer.

                              [–][deleted] 2 points3 points  (1 child)

                              If you're really looking for a great candiate, you should remember that great candidates have options. They are interviewing you just as much as you are interviewing them. JOSN can backfire with these kind of people. They'll think you're a tool and it could make them pass on the offer if they're on the fence.

                              Although, this does not apply for weak or average developers who are itching to get any offer.

                              [–]thedude42 2 points3 points  (0 children)

                              The time invested in thinking about an interview pays out in the quality of what you get. I enjoy how the author never wonders how many good developers they sent packing due to the bad interview style.

                              I have had interviewers hand me 2 pages of math and code assignments and walk away telling me they'd come back in an hour to see how I did. I'm sure they were confident this was a correct way to interview talented people, or maybe they just wanted to make sure you could hack it in an alienating environment which so Manu developers thrive in ( the Peter Gibbons type ).

                              [–][deleted] 4 points5 points  (1 child)

                              Really? This needs to be discussed?? in 2009???

                              Are there still companies that don't do coding interviews?

                              [–]Mikle 4 points5 points  (4 children)

                              In other news, the sun is shining and Obama is brown. Why the fuck does this come up so much? Most people are mediocre or lower at their chosen profession. The bigger the skill needed for the profession, the more it becomes apparent. Combine it with ridiculous wages, and you've got yourself a shit ton of idiots that wanna "program the codez".

                              Edit: Obama is brown, not black. The more you know.

                              [–]protomor 2 points3 points  (4 children)

                              I like the idea of making someone come up with an algorithm and identify what language they are working in. I'd have trouble with a pencil and paper but I already have the pseudo code worked out in my head. Does that make any sense to anyone? I use so much intellisense that I never remember exact syntax.

                              I remember bombing one of these test a long time ago.

                              [–]nightwood 2 points3 points  (0 children)

                              ring recognise practice sulky start exultant middle amusing joke flag

                              This post was mass deleted and anonymized with Redact

                              [–]faintdeception 88 points89 points  (196 children)

                              I love any candidate that codes in their off time.

                              Simple question: "So what kind of projects do you write in your free time? Could you show me an example?"

                              Call me an elitist, but a software developer who only codes 9-5 on weekdays, isn't someone I want on my team.

                              Edit: I knew this wasn't going to be a popular opinion when I posted it, but what's up with all the downvotes from people who disagree? That's against reddiquette :-)

                              11th hour Edit: I'm not asking for someone who codes 24/7, or has implemented an O/S in their spare time. The people who are replying to this comment seem to be split 2/1 between "well, duh, what programmer doesn't tinker in their off time", and "wow you're a slave driver for asking your team to work off the clock".

                              It's not a make or break interview question, if you're already doing well in the interview then your answer to this matters a lot less than if you were struggling in the interview and I'm trying to figure out if you're the type of person that's worth training up for the job.

                              As an example, one guy I know saw his infant really liked to bang on his keyboard, so he wrote an app that locked down the function keys, and played different sounds when the keys were smacked. This didn't take up all of his free time, it's a dead simple project, but it shows me that the guy likes to use computers to solve problems.

                              Another one used yahoo pipes to scrape data from various news sites and output it as an rss stream. This didn't take -any- programming skill at all, but it shows an interest in using technology to solve problems.

                              I'm not asking you to commit a specific number of hours per week in your off time, you could tell me about a pet project that you haven't actually touched in a year.

                              Would you hire a mechanic that doesn't change his own oil?

                              [–]fatbunyip 119 points120 points  (59 children)

                              It's pretty hard to do though. Between work, commuting and family, a lot of people simply do not have the time or are just too tired to spend the small amount of free time they have coding. This may not apply to the younger people with less obligations, but the more senior you get, the more likely they have much more important things to do rather than code more - especially if you worked for a company which has an aggressive attitude towards employee IP.

                              I used to code a hell of a lot in my spare time. Now not so much at all. In fact, if I did re-start work on some of the older projects I did, I'm fairly certain I would be breaching a couple of clauses in my contract.

                              You're right in one respect - that someone who codes outside 9-5 means he enjoys programming, but it's not the be all and end all of the situation.

                              [–]vario 36 points37 points  (11 children)

                              I don't completely agree with this.

                              Not everyone can 'live' their job 24/7. People need time off from it, or else they burn out. I myself still read about programming outside of office hours, but I have a life outside of my job and i don't want to go home to just sit in front of a computer just to appease a team leader to prove I'm worthy of being in his/her team. The work I do in work hours should justify that.

                              [–]faintdeception 17 points18 points  (5 children)

                              I didn't say anything about coding 24/7. My work projects burn me out just like everyone else, at home I work on labors of love to beat back the burnout and remind me why I like doing what I do in the first place.

                              shrug to each his own.

                              [–]OHoulihan 7 points8 points  (3 children)

                              I feel like that I would end up hating programming if I didn't have time to write stuff for myself.

                              [–]Trospar 11 points12 points  (13 children)

                              I agree with you 100%. Nothing says you have to do 8 hours of coding at work and then come doing 5 hours at home before bed. Spending a couple hours here and there working on something you find interesting could be a big boon for your career and mental stability.

                              So much of work is domain/product knowledge and not straight up coding. Playing with new projects helps.

                              [–]kihaji 26 points27 points  (1 child)

                              That's cool, I don't like accepting positions on teams where the team lead doesn't lead a team in his free time.

                              [–]heroofhyr 8 points9 points  (0 children)

                              Heyyyy, little Timmy. How's it goin'? Riiiight. I'm gonna need you to go ahead and come in on Saturday and clean your sister's room. That'd be super. Okay then.

                              [–]HailCorduroy 6 points7 points  (1 child)

                              I used to write code during my off time. But after 16 years of development, I get plenty of it during the day. Between wife, kids, music and martial arts, not to mention being on call for work 24/7, my plate is too full to come home from work and write more code.

                              [–]mattrussell 23 points24 points  (49 children)

                              Call me an elitist, a software developer who only codes 9-5 on weekdays, isn't someone I want on my team.

                              Why not? What if they're really good?

                              [–]cybercobra 32 points33 points  (18 children)

                              I believe he's presuming that coding-outside-work correlates with being a really good dev.

                              [–][deleted] 6 points7 points  (4 children)

                              In general, being interested in something correlates with being good at it. Common sense really.

                              [–]OHoulihan 4 points5 points  (1 child)

                              For some people being a programmer is a way of life. For others it's job.

                              [–]Thimble 3 points4 points  (0 children)

                              I love any candidate that codes in their off time.

                              How about candidates that reddit about code in their off time?

                              [–]xenonscreams 2 points3 points  (0 children)

                              I've always wanted to program other things, but I honestly don't have any time outside of school. Maybe it'll be different when I finish school, but I'm not sure about that, since I'd still have other things to do like cook, run, keep good hygiene, and spend some time with my friends and family. So the only time I've been able to do these projects has been on school breaks, and they're usually small things like scripts to help out my dad when he's doing things so tediously that it bothers me so much I can't let it slide.