Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Interview questions?

Interview questions?

Scheduled Pinned Locked Moved The Lounge
c++questioncareer
56 Posts 25 Posters 3 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Tomasz Sowinski

    Roger Allen wrote: So how would you solve this then total = n * (n + 1) / 2; Of course, you can use template metaprogramming as well, but IMHO it would be overkill ;) Tomasz Sowinski -- http://www.shooltz.com

    To some its a six-pack, to me it's a support group

    A Offline
    A Offline
    Alvaro Mendez
    wrote on last edited by
    #22

    OK, so how often in your programs have you needed the sum of a bunch of integers from 1 to n? I personally don't recall ever having to do this in any of the programs I've written in the past 10 years. And much less do I remember when (or if) I learned this algorithm in any of my math courses. So my point: I would never torture a programmer with this sort of (you're-probably-not-as-brilliant-as-me) question. Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein

    T 1 Reply Last reply
    0
    • A Alvaro Mendez

      OK, so how often in your programs have you needed the sum of a bunch of integers from 1 to n? I personally don't recall ever having to do this in any of the programs I've written in the past 10 years. And much less do I remember when (or if) I learned this algorithm in any of my math courses. So my point: I would never torture a programmer with this sort of (you're-probably-not-as-brilliant-as-me) question. Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein

      T Offline
      T Offline
      Tomasz Sowinski
      wrote on last edited by
      #23

      This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Tomasz Sowinski -- http://www.shooltz.com

      To some its a six-pack, to me it's a support group

      A C 2 Replies Last reply
      0
      • T Tomasz Sowinski

        Chris Losinger wrote: copy/paste. i don't understand it, at all It's very easy. With copy/paste you can select a word, sentence or more and move/copy it to different location. No more retyping ;P Tomasz Sowinski -- http://www.shooltz.com

        To some its a six-pack, to me it's a support group

        C Offline
        C Offline
        Chris Losinger
        wrote on last edited by
        #24

        ok ok . yes, i understand copy/paste. ;P


        "Kate said / The flowers of intolerance and hatred / Are blooimg kind of early this year / Someone's been watering them. -- Robyn Hitchcock, Devil's Radio

        1 Reply Last reply
        0
        • P Paul Watson

          Tim Smith wrote: There are many people, including myself who feel that a math background goes a long way towards being a good programmer. You get analytical thinking, problem solving, and logic. I failed math at school, failed it utterly and miserably. Failed it so badly my future son can feel my math teachers pain. Yet I consider my problem solving to be rather good. I am logical (no really I am logical when it comes to doing programming, the rest of me is not, as you have seen :-D) and being partly a systems analyst consider my analytical thinking to be good. I don't think it has much to do with math, just clear, logical, good thinking, which are helpful attributes if you want to do well at math (I assume.) Though as someone awhile back pointed out I probably could have done well at math, I just honestly did not care about school math. It was pointless to me. Also what do you consider to be "good at math" to mean? Algebra? Geometry? Adding? Are all math skills condusive to good programming? It seems to me more like the type of person who is good at math (logical, analytical etc.) is suited for programming, not because they can do complex algebraic equations (which I can't because why is the x important? and what does the y represent? and will this make the world better?) but because of those traits you mentioned. Is math maybe your way of developing those traits?

          Paul Watson
          Bluegrass
          Cape Town, South Africa

          P Offline
          P Offline
          Paul Ingles
          wrote on last edited by
          #25

          I'm pretty appalling at maths too. However, I am pretty good at algebra, I always enjoyed simultaneous equations and re-arranging equations. However, my mental arithmetic is pretty appalling and I've never had much time for statistics a la regression etc. Despite my mathematical deficiency I consider myself pretty good at logic, and find that I can produce the flow structure for programs easily whereas other students on my course have had trouble. My overall design/analysis is also pretty strong, having done pretty well in the previous systems analysis modules (basically doing UML diagrams of real-life systems etc.). I also was bored during maths lessons at school, and instead preferred to waste my time working out useless facts. The other day when I was on the train home I was trying to work out how many horses it would take to pull my train and its passengers for the journey and how long such a journey may take (not taking into account acceleration, deceleration or friction :). That kind of thing always fascinated me ;) Freakish. Actually my maths ability is something that does concern me when going for proper graduate employment, I'm a little worried about doing any of these entrance exams the biggies dish out to you. Maybe I'll have to brush up a little first. -- Paul "I need the secure packaging of Jockeys. My boys need a house!" - Kramer, in "The Chinese Woman" episode of Seinfeld MS Messenger: paul@oobaloo.co.uk Sonork: 100.22446

          1 Reply Last reply
          0
          • V Vivek Rajan

            Chris - Make sure you do not ask the candidate to *write* any code. I know, I was surprised too when I heard it from our HR. There is some legal mumbo-jumbo to back it up. Our company, as a policy discourages this practice. The candidate has the right to sue your company if he writes the code and you do not hire him for any reason. I work in a large telecom company and we had training for interviewees. One of the first things the HR dept told us was not to ask candidates to write any sample code. Another gotcha is dont probe too much on his assignments in his current company. As far as C++ questions go, ask him what a vtable is. I also like the idea of asking him about public, protected, private and static attributes and methods. Thanks Vivek

            P Offline
            P Offline
            Paul Ingles
            wrote on last edited by
            #26

            Really you're not allowed to ask for code? I've been to interviews before and had to write some, admittedly it was VB (no flame follow-ups please :) but I still wrote it. What's the reasoning behind it? Some kind of copyright thing? What about asking for flow-chart type stuff? -- Paul "I need the secure packaging of Jockeys. My boys need a house!" - Kramer, in "The Chinese Woman" episode of Seinfeld MS Messenger: paul@oobaloo.co.uk Sonork: 100.22446

            V 1 Reply Last reply
            0
            • C Chris Hambleton

              Hi, I'm giving an interview (2nd round) to a potential VC/C/C++ software engineer (4 years experience) later this afternoon. What sort of questions should I ask? Do you have some good sample technical questions you can share? I'd kind of like to test this guy's technical knowledge and see how he handles both easy and difficult questions... Thanks! Chris

              J Offline
              J Offline
              Joe Woodbury
              wrote on last edited by
              #27

              Don't ask those stupid riddles and "write the algorithm" questions. (At one group interview years ago, one guy asked me to show how I would reverse a string. I wrote strrev(pStr); on the board and he got really ticked.) I've seen no evidence that there are certain questions you can ask that will tell you if this engineer is the right one. I know engineers than can explain to you, in detail, the peformance of a btree versus a trie, but can't write practical code that works. How about this: Explain to me a recent serious programming problem you encountered and how you solved it. When you go over his resume, look at the products he has worked on. Do a little research. Find out what the downfalls of these products are and ask questions pertaining specifically to that; As in, "How did you solve the problem of ....?" The point here isn't that there are right answers. I strongly suggest asking a few questions about how familiar the developer is with the tools, especially the debugger. Don't ask trick questions--I'm a very good debugger but I don't remember what key strokes do what, I just do it. (My daughter asked me the other day to teach her how to tie a tie; I do it so automatically, that I found it very difficult to explain it.) Afterward, call up his references and ask them pointed questions using the interview as a guideline (that is, if you are in a state, like Utah, that idemnifies you and the references from an court action. If not DON'T do this this step, you'll have to trust your instincts as to whether the person is on the level.) Of course, you need to be clear in you own mind what you want. Do you want a yes man? Or do you want someone who questions your proposals [with valid reasons]? (I suggest the latter but many "managers" can't handle it, certainly many of mine couldn't.) Oh yeah, and ask him/her what developer books and/or articles they've read recently. Ask him/her from what web site they "borrow" code. (Okay, this last is a trick question; anyone who assures me they always write their own code for everything won't be hired by me.)

              1 Reply Last reply
              0
              • P Paul Watson

                Tim Smith wrote: There are many people, including myself who feel that a math background goes a long way towards being a good programmer. You get analytical thinking, problem solving, and logic. I failed math at school, failed it utterly and miserably. Failed it so badly my future son can feel my math teachers pain. Yet I consider my problem solving to be rather good. I am logical (no really I am logical when it comes to doing programming, the rest of me is not, as you have seen :-D) and being partly a systems analyst consider my analytical thinking to be good. I don't think it has much to do with math, just clear, logical, good thinking, which are helpful attributes if you want to do well at math (I assume.) Though as someone awhile back pointed out I probably could have done well at math, I just honestly did not care about school math. It was pointless to me. Also what do you consider to be "good at math" to mean? Algebra? Geometry? Adding? Are all math skills condusive to good programming? It seems to me more like the type of person who is good at math (logical, analytical etc.) is suited for programming, not because they can do complex algebraic equations (which I can't because why is the x important? and what does the y represent? and will this make the world better?) but because of those traits you mentioned. Is math maybe your way of developing those traits?

                Paul Watson
                Bluegrass
                Cape Town, South Africa

                T Offline
                T Offline
                Tim Smith
                wrote on last edited by
                #28

                Well, actually you hit on what I really wanted to say. It isn't the "can you compute the area of X" math, but the analytical part of math. What would be years 3-4 for someone getting their math degree. Calculus doesn't help me to program. But the logical training I got trying to prove math from the ground up in analysis class was invaluable. Tim Smith "Programmers are always surrounded by complexity; we can not avoid it... If our basic tool, the language in which we design and code our programs, is also complicated, the language itself becomes part of the problem rather that part of the solution." Hoare - 1980 ACM Turing Award Lecture

                1 Reply Last reply
                0
                • C Chris Hambleton

                  Hi, I'm giving an interview (2nd round) to a potential VC/C/C++ software engineer (4 years experience) later this afternoon. What sort of questions should I ask? Do you have some good sample technical questions you can share? I'd kind of like to test this guy's technical knowledge and see how he handles both easy and difficult questions... Thanks! Chris

                  D Offline
                  D Offline
                  Daniel Turini
                  wrote on last edited by
                  #29

                  Besides tests previously spotted on former posts, we give potential programmers some code snippets (4 to 6) in a piece of paper and ask them to analyze the code. Written analysis. Kind of a "peer review" task. The code have tons of good/bad programming habits and he has to spot them. We usually use this test to assess: 1. How well does he write? He'll write documentation this way! 2. What's his maturity level (as a programmer)? 3. What are his strengths: optimize, correct or organize code? 4. How well he'd mantain someone else's code? Concussus surgo. When struck I rise.

                  1 Reply Last reply
                  0
                  • C Chris Hambleton

                    Hi, I'm giving an interview (2nd round) to a potential VC/C/C++ software engineer (4 years experience) later this afternoon. What sort of questions should I ask? Do you have some good sample technical questions you can share? I'd kind of like to test this guy's technical knowledge and see how he handles both easy and difficult questions... Thanks! Chris

                    L Offline
                    L Offline
                    Lost User
                    wrote on last edited by
                    #30

                    Here are a few questions I use in interviews: What has been the most satisfying experience at work ? The most frustrating ? The most obscure problem you have encountered ? Did you solve it and how ? And a VC++ question: What bugs/limitations have you found in MFC ? Hope this is of help. Elaine (fluffy tigress emoticon) Would you like to meet my teddy bear ?

                    1 Reply Last reply
                    0
                    • T Tomasz Sowinski

                      My favorite one is: calculate the sum of all integers from 1 to n. If guy writes a loop for that, you know his math background is lacking ;) Tomasz Sowinski -- http://www.shooltz.com

                      To some its a six-pack, to me it's a support group

                      G Offline
                      G Offline
                      George
                      wrote on last edited by
                      #31

                      Tomasz Sowinski wrote: My favorite one is: calculate the sum of all integers from 1 to n. Classic! ;)

                      1 Reply Last reply
                      0
                      • P Paul Watson

                        Tomasz Sowinski wrote: you know his math background is lacking Just curious but what on earth has math got to do with everyday programming?

                        Paul Watson
                        Bluegrass
                        Cape Town, South Africa

                        M Offline
                        M Offline
                        Michael P Butler
                        wrote on last edited by
                        #32

                        Paul Watson wrote: Just curious but what on earth has math got to do with everyday programming? I've often wondered about this. My math's skills are very ropey (partly down to bad teaching - I sort of got left behind because my geometry drawing was bad and from then on I was kind of ignored). I wonder if I would be a better programmer if I was better/enjoyed maths. I've been programming for a long time now and never really felt that maths was essential. Maths has very little relevence to my work with MIS and telephony systems. If I need a specialised routine, thats what libraries are for. Michael Programming is great. First they pay you to introduce bugs into software. Then they pay you to remove them again.

                        1 Reply Last reply
                        0
                        • T Tomasz Sowinski

                          This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Tomasz Sowinski -- http://www.shooltz.com

                          To some its a six-pack, to me it's a support group

                          A Offline
                          A Offline
                          Alvaro Mendez
                          wrote on last edited by
                          #33

                          Tomasz Sowinski wrote: This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Yes, I agree that it's important to hire someone that can get started right away. But why not do it with a practical question? As I implied, unless the candidate has had recent exposure to "cool" math algorithms, he just isn't going to know the answer to this one. (I didn't know it before and heck, I've already forgotten it. :-)) But something like, "How do you make a copy of an array?", is IMHO a better way to measure a candidate's readiness for the job. And by the way, spending an extra 30 seconds (or minutes) thinking about how to solve a problem is usually OK if it yields maintainable code that does the job well, IMHO. Plus, if you're getting payed by the hour, even better ;). Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein

                          C T 2 Replies Last reply
                          0
                          • P Paul Ingles

                            Really you're not allowed to ask for code? I've been to interviews before and had to write some, admittedly it was VB (no flame follow-ups please :) but I still wrote it. What's the reasoning behind it? Some kind of copyright thing? What about asking for flow-chart type stuff? -- Paul "I need the secure packaging of Jockeys. My boys need a house!" - Kramer, in "The Chinese Woman" episode of Seinfeld MS Messenger: paul@oobaloo.co.uk Sonork: 100.22446

                            V Offline
                            V Offline
                            Vivek Rajan
                            wrote on last edited by
                            #34

                            Yes - It is surprising, but it turns out that unless your tests can be defended in court, avoid it altogether. For more detail : read up on (Supreme Court Griggs Vs Duke Power) http://www.employeeselect.com/testLegal.htm[^] Some more rules (if u wanna stay out of trouble) 1. Avoid problem solving questions that are not standardized.(not asked to every potential candidate ) (eg. "What is the command in CVS to create a branch ?" to one candidate and "What is CVS ?" to another one). This is a clear example of aribitrary testing. The employee has the right to sue the company under these circumstances. 2. No role-playing questions (eg. Sell me that chair) 3. No questions at all about personal stuff, hobbies, lifestyle, general attitudes. 4. Situational questions : (What would u do if you were at a customer site and the product refused to print ) Of course,most interviewees wont bother, but only takes one pissed off employee to really get ur company in a legal mess :omg: I am frankly surprised so many in CP are encouraging tests in interviews. Any comments ? I would like to hear your views.. Vivek

                            1 Reply Last reply
                            0
                            • T Tomasz Sowinski

                              This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Tomasz Sowinski -- http://www.shooltz.com

                              To some its a six-pack, to me it's a support group

                              C Offline
                              C Offline
                              ColinDavies
                              wrote on last edited by
                              #35

                              Just for the record, I think it is an excellent question !! It took me more than 30secs to realise the solution though :-( as it appeared way too easy. Regardz Colin J Davies

                              Sonork ID 100.9197:Colin

                              You are the intrepid one, always willing to leap into the fray! A serious character flaw, I might add, but entertaining. Said by Roger Wright about me.

                              1 Reply Last reply
                              0
                              • C Chris Hambleton

                                Hi, I'm giving an interview (2nd round) to a potential VC/C/C++ software engineer (4 years experience) later this afternoon. What sort of questions should I ask? Do you have some good sample technical questions you can share? I'd kind of like to test this guy's technical knowledge and see how he handles both easy and difficult questions... Thanks! Chris

                                M Offline
                                M Offline
                                Michael P Butler
                                wrote on last edited by
                                #36

                                Aside from the technical questions (which I often find misleading, I much prefer to get him to write some actual code). I find the best way to judge a person's technical knowledge is to get him to talk about the projects he has worked on in the past. Find out what he's done and ask about the reasons he did things the way he did. Michael Programming is great. First they pay you to introduce bugs into software. Then they pay you to remove them again.

                                V 1 Reply Last reply
                                0
                                • A Andy Cowenhoven

                                  Maximilien wrote: Remember, your job is to hire someone, not break him! Agreed. Also, if you are going to be working with the guy, the most important thing is to decide if you and your co-workers will like him. Andy Cowenhoven

                                  V Offline
                                  V Offline
                                  Vivek Rajan
                                  wrote on last edited by
                                  #37

                                  Andy Cowenhoven wrote: Also, if you are going to be working with the guy, the most important thing is to decide if you and your co-workers will like him. This is asking for trouble in the US. You are not allowed to test a candidate for *general likeability* (Griggs vs Duke Power) - see my other post below. Yes, as an unspoken rule - you may only select candidates u feel comforatble with. The candidate can sue the company big-time if you explicity test him or her for likeability or other non job-related criteria. Therefore, avoid all questions that may be construed to be non-job related, such as: 1) Do you like beer ? we have a beer party every Friday. 2) I hope u like to play foosball, we have a league in the office. etc,etc u get the idea Vivek

                                  1 Reply Last reply
                                  0
                                  • A Alvaro Mendez

                                    Tomasz Sowinski wrote: This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Yes, I agree that it's important to hire someone that can get started right away. But why not do it with a practical question? As I implied, unless the candidate has had recent exposure to "cool" math algorithms, he just isn't going to know the answer to this one. (I didn't know it before and heck, I've already forgotten it. :-)) But something like, "How do you make a copy of an array?", is IMHO a better way to measure a candidate's readiness for the job. And by the way, spending an extra 30 seconds (or minutes) thinking about how to solve a problem is usually OK if it yields maintainable code that does the job well, IMHO. Plus, if you're getting payed by the hour, even better ;). Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein

                                    C Offline
                                    C Offline
                                    ColinDavies
                                    wrote on last edited by
                                    #38

                                    Being able to solve the problem as Tomasz suggested with an algorithm shows how the candidates mind works. I don't think he is suggesting that is the only factor for determining who get's the job. When I first started programming, 20 ++ yrs ago we always searched for algorithms before trying structured methods. There were more advantages then, but one main advantage remains, well written algorithms don't fail like most structures do thus less bugs. Regardz Colin J Davies

                                    Sonork ID 100.9197:Colin

                                    You are the intrepid one, always willing to leap into the fray! A serious character flaw, I might add, but entertaining. Said by Roger Wright about me.

                                    A 1 Reply Last reply
                                    0
                                    • M Michael P Butler

                                      Aside from the technical questions (which I often find misleading, I much prefer to get him to write some actual code). I find the best way to judge a person's technical knowledge is to get him to talk about the projects he has worked on in the past. Find out what he's done and ask about the reasons he did things the way he did. Michael Programming is great. First they pay you to introduce bugs into software. Then they pay you to remove them again.

                                      V Offline
                                      V Offline
                                      Vivek Rajan
                                      wrote on last edited by
                                      #39

                                      Michael P Butler wrote: (which I often find misleading, I much prefer to get him to write some actual code). It would be ok , if the test were standardized or at least had a consistent level of difficulty. Isnt this arbitrary ? What if you asked one person to write a "hello world" and another person to write a "recursive loop" ? This may happen becuase there may be different interviewers. - V

                                      1 Reply Last reply
                                      0
                                      • A Alvaro Mendez

                                        Tomasz Sowinski wrote: This question has only one point: you may check if programmer starts coding right away or spends 30 second thinking about the solution. Very important aspect, IMHO. Yes, I agree that it's important to hire someone that can get started right away. But why not do it with a practical question? As I implied, unless the candidate has had recent exposure to "cool" math algorithms, he just isn't going to know the answer to this one. (I didn't know it before and heck, I've already forgotten it. :-)) But something like, "How do you make a copy of an array?", is IMHO a better way to measure a candidate's readiness for the job. And by the way, spending an extra 30 seconds (or minutes) thinking about how to solve a problem is usually OK if it yields maintainable code that does the job well, IMHO. Plus, if you're getting payed by the hour, even better ;). Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein

                                        T Offline
                                        T Offline
                                        Tomasz Sowinski
                                        wrote on last edited by
                                        #40

                                        Alvaro Mendez wrote: As I implied, unless the candidate has had recent exposure to "cool" math algorithms, he just isn't going to know the answer to this one First of all, the formula for sum(1..n) is hardly 'cool' - it's firetrucking basic one. Secondly, you don't need to remember the formula, because you can easily derive it yourself. Just notice that you can add 1 to n, 2 to (n-1), 3 to (n-2) etc... Tomasz Sowinski -- http://www.shooltz.com

                                        To some its a six-pack, to me it's a support group

                                        1 Reply Last reply
                                        0
                                        • P Paul Watson

                                          Tomasz Sowinski wrote: Surely it has nothing to do with javascript Hardy har har. Tomasz Sowinski wrote: I'm not sure what do you mean by 'everyday programming' The kind of programming that creates apps that users use to get their job done better. I fully agree math is important if you are working for Intel or doing scientific applications, but how many of us actually do that kind of programming? Most of us are data-managers. We make systems which allow data input, data output, data processing and data transformation. Not much else. So far I have had very little need for math beyond adding. Where there are calculations to do, they are hardly complex and are understandable because instead of x2 * 2y / cos(50) we have ((warrantPrice * totalWarrants) / strikePrice) - (sharePrice2) or something. All in all though the calculations are (while critical) a very small part of the code you write.

                                          Paul Watson
                                          Bluegrass
                                          Cape Town, South Africa

                                          R Offline
                                          R Offline
                                          Richard Stringer
                                          wrote on last edited by
                                          #41

                                          Paul Watson wrote: All in all though the calculations are (while critical) a very small part of the code you write Hey Something we agree on!!!! We did a survey ( line count type ) of our apps which are mainly insurance type applications ( calculating rates etc.. ) and the actual percentage of calulation code vs UI and printing was 7% thats all 7 lines out of 100. And a lot of that was stuff to calculate the strange and murkey underwriting logic - not so much number crunching. Richard We are called the nation of inventors. And we are. We could still claim that title and wear its loftiest honors if we had stopped with the first thing we ever invented, which was human liberty. Mark Twain- Foreign Critics speech, 1890

                                          P 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups