June 26, 2018 at 1:38 pm
ddodge2 - Tuesday, June 26, 2018 12:55 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
Sean,
A couple thoughts for the conversation 'grist mill' if you will.
Stuff I never Needed
----------------------------
I have started using the dBASE alternative, FoxBase some 30 years back. While I have not used the latest version of the product recently, when I have it comes back relatively quickly. Even now then there are functions and features I would consider myself unaware of. The reason is that I have never had a need to use them. Perhaps some functions like SIN() or COS() never were needed. It was certainly a surprise to me that so few knew about GETDATE() but candidly, not having been immersed in T-SQL recently, I had to take a quick peek to remember. Maybe that's age (an increasingly useful excuse 😉) or the way my mind processes and stores information.Panic Time
---------------------------------
I do not like in-person interviews at all. I tend to 'lock up.' It wasn't until I took an online Meyers-Briggs self-analysis that I discovered this sort of approach didn't look to be the best way someone like me would normally approach and resolve thorny technical issues. That is, the typical interview venue, for me at least, is an extra hurdle. I understand that under pressure we need to not 'lock up' and, interestingly enough, I do not, except during the interview. I do not tie my assessment of others to on-the-spot answers primarily because I understand that this stuff can be complex. Given that I prefer proper and precise answers I am always thinking I will run out of time and that a correct answer often does not fit into "soundbite thinking." I'd prefer a setting more like real life.What Was That Again?
--------------------------------
I can remember my driver's license, from another state 30 years ago. A0954063, for what it's worth. And, my phone number from when I was 5 years old 544-1972, my neighbor's, 544-1793 (there's the hook, right?) and my late aunt & uncles from 40 years back; 846-1402. I struggle terribly with names. They take longer to settle in. I mention this because I am paid to resolve issues which in turn should simplify some process which also, in turn, ought to demonstrate, in a very measurable fashion that my time and the whole of the entire correlated expense of reaching a suitable end will satisfy the one concern of management; ROI. An arbitrary example would be; Doug takes $5,000 start-to-finish 'X'. Over the next year, we will realize $6,500 in savings and $3,500 in additional projected revenue. That makes the chore a $5,000 net to the company.I don't care to remember every little bit and I am not, at least in my own thinking, 'better' or 'worse' should I remember some approach. Now, this is within reasonable limits naturally but I do see this often the basis of one's corporate social standing and is even weaponized as others climb the ladder to what? I want to figure things out and write code. I can find answers, and better at that, already available and freely licensed by those more generous.
I would want to see some coding samples though. Or an over-the-weekend type test perhaps?
It was the Woman Lord
---------------------------------
Those who provide any kind of training whatsoever will, in my opinion, always be trailing edge rather than leading edge. Why? They are reacting and attempting to be the best or first to get in front at the earliest possible moment. This is great and these folks provide fabulous resources but it does raise, for me, a question. If the company is wanting to keep current and competitive, which does require knowing the latest and greatest trends, how can this not lead to a sort of perpetual looking for, finding and more often than not realizing that candidate 'Y', who did, in fact, know the proper buzzwords and the automated recruiter filtering engines fished out, be a total dud? It's always someone else's fault so the manager's blame the agency or the hire and the recruiting firm, after discussing the issue with the hire (because they really want to place them elsewhere) decide that it was the manager.It always seems to be someone else's fault and when you stand up and take responsibility you may well be blamed for the decisions of others. I prefer to take personal responsibility and value my character over employment. I can do this financially now but I've done it before when not so. I am nothing special as I think everyone should do this but that is not the world we live in.
The Real Issue?
----------------------
So, does the candidate demonstrate good character? If they honestly state that they don't know something rather than try and bluff, I prefer this to the alternative.Given the above and the other valid concerns, discarding the moaning and groaning about how difficult it all is, and unfair, and a royal pain in the *** to deal with politics and agendas and so forth, what are the best suggestions on how to meet and overcome them? I have a few which include making sure to take time off (like I am doing now) to ensure there is balance in life, catching up on technical skills, cleaning out the garage 🙂 and all of the rest.
What sort of approach would be the best way to bring someone on and get them in synch with the company, the standards, the goals, culture and all of the rest?
I totally understand what you mean and get the part about being crazy nervous in interviews. It isn't like I walk in the room and shine a spot light in their face and say "tell me how to get the current system time using exactly 14 characters" or something completely absurd like that. The discussion starts with hearing their story, asking why they are in the market for a new position. I usually ask questions like "what is your favorite movie" to illicit a discussion completely off topic and help them relax. Even more so when I see them being nervous. In the context of the interview if we were talking and you said I have used sql server but it has been 20 years, meanwhile I have been working with some other DBMS it would a different ball game. I think everyone is jumping to the conclusion that this is an all or nothing question. I don't view it that way. And in the case of not using the tool for a long time something like "well I haven't used sql server in 20 years but an ANSI compliant current_timestamp" would demonstrate mastery of databases. The question is not just saying give me getdate() or get out. Even something as simple as, well I never got the data from t-sql because I have always passed it in a parameter would demonstrate understanding. The point is there isn't a single "right" answer. It is intended to get an overall idea of their technical ability and understanding. I bet if you didn't know exactly you would be to discuss it quite coherently without specific implementation syntax. It is the people who a total of 5-10 years since college claiming working with procedures in t-sql for all that time that give you the blank stare, or "gee I have never needed to know the current time". Those are the people who you want to weed out. They have little to no understanding of the concept and have overstated their abilities on the CV. The idea is to have a SUPER simple question that nearly anybody should be able to answer. And yes I too would much prefer "I don't know" to a bunch of BS. I fully understand what you mean about obscure functions that you might not ever need but seriously, in any kind of software you need to know the current day for all sorts of things. That is not an obscure need that anybody can reasonably say they never needed. Or perhaps if that is truly the case they could explain the system they worked on and explain why such a common thing would not be needed.
Another question I like to ask early is "what websites do you visit frequently related to development or databases on a regular basis to keep current or refine your skills?". Then if it is a forum ask them if they are active participants or mostly lurkers. There is no right or wrong here but often does a good job of helping the interviewee relax by being able to discuss something they are comfortable with.
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
June 26, 2018 at 2:06 pm
By the same token, if someone claims that they have "10 years of experience developing stored procedures, functions, and triggers in SQL Server" and they can't answer the super simple first question, that's a pretty good indication that they're not going to be able to do the job.
--Jeff Moden
Change is inevitable... Change for the better is not.
June 26, 2018 at 2:07 pm
Sean Lange - Tuesday, June 26, 2018 1:38 PMddodge2 - Tuesday, June 26, 2018 12:55 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
Sean,
A couple thoughts for the conversation 'grist mill' if you will.
Stuff I never Needed
----------------------------
I have started using the dBASE alternative, FoxBase some 30 years back. While I have not used the latest version of the product recently, when I have it comes back relatively quickly. Even now then there are functions and features I would consider myself unaware of. The reason is that I have never had a need to use them. Perhaps some functions like SIN() or COS() never were needed. It was certainly a surprise to me that so few knew about GETDATE() but candidly, not having been immersed in T-SQL recently, I had to take a quick peek to remember. Maybe that's age (an increasingly useful excuse 😉) or the way my mind processes and stores information.Panic Time
---------------------------------
I do not like in-person interviews at all. I tend to 'lock up.' It wasn't until I took an online Meyers-Briggs self-analysis that I discovered this sort of approach didn't look to be the best way someone like me would normally approach and resolve thorny technical issues. That is, the typical interview venue, for me at least, is an extra hurdle. I understand that under pressure we need to not 'lock up' and, interestingly enough, I do not, except during the interview. I do not tie my assessment of others to on-the-spot answers primarily because I understand that this stuff can be complex. Given that I prefer proper and precise answers I am always thinking I will run out of time and that a correct answer often does not fit into "soundbite thinking." I'd prefer a setting more like real life.What Was That Again?
--------------------------------
I can remember my driver's license, from another state 30 years ago. A0954063, for what it's worth. And, my phone number from when I was 5 years old 544-1972, my neighbor's, 544-1793 (there's the hook, right?) and my late aunt & uncles from 40 years back; 846-1402. I struggle terribly with names. They take longer to settle in. I mention this because I am paid to resolve issues which in turn should simplify some process which also, in turn, ought to demonstrate, in a very measurable fashion that my time and the whole of the entire correlated expense of reaching a suitable end will satisfy the one concern of management; ROI. An arbitrary example would be; Doug takes $5,000 start-to-finish 'X'. Over the next year, we will realize $6,500 in savings and $3,500 in additional projected revenue. That makes the chore a $5,000 net to the company.I don't care to remember every little bit and I am not, at least in my own thinking, 'better' or 'worse' should I remember some approach. Now, this is within reasonable limits naturally but I do see this often the basis of one's corporate social standing and is even weaponized as others climb the ladder to what? I want to figure things out and write code. I can find answers, and better at that, already available and freely licensed by those more generous.
I would want to see some coding samples though. Or an over-the-weekend type test perhaps?
It was the Woman Lord
---------------------------------
Those who provide any kind of training whatsoever will, in my opinion, always be trailing edge rather than leading edge. Why? They are reacting and attempting to be the best or first to get in front at the earliest possible moment. This is great and these folks provide fabulous resources but it does raise, for me, a question. If the company is wanting to keep current and competitive, which does require knowing the latest and greatest trends, how can this not lead to a sort of perpetual looking for, finding and more often than not realizing that candidate 'Y', who did, in fact, know the proper buzzwords and the automated recruiter filtering engines fished out, be a total dud? It's always someone else's fault so the manager's blame the agency or the hire and the recruiting firm, after discussing the issue with the hire (because they really want to place them elsewhere) decide that it was the manager.It always seems to be someone else's fault and when you stand up and take responsibility you may well be blamed for the decisions of others. I prefer to take personal responsibility and value my character over employment. I can do this financially now but I've done it before when not so. I am nothing special as I think everyone should do this but that is not the world we live in.
The Real Issue?
----------------------
So, does the candidate demonstrate good character? If they honestly state that they don't know something rather than try and bluff, I prefer this to the alternative.Given the above and the other valid concerns, discarding the moaning and groaning about how difficult it all is, and unfair, and a royal pain in the *** to deal with politics and agendas and so forth, what are the best suggestions on how to meet and overcome them? I have a few which include making sure to take time off (like I am doing now) to ensure there is balance in life, catching up on technical skills, cleaning out the garage 🙂 and all of the rest.
What sort of approach would be the best way to bring someone on and get them in synch with the company, the standards, the goals, culture and all of the rest?
I totally understand what you mean and get the part about being crazy nervous in interviews. It isn't like I walk in the room and shine a spot light in their face and say "tell me how to get the current system time using exactly 14 characters" or something completely absurd like that. The discussion starts with hearing their story, asking why they are in the market for a new position. I usually ask questions like "what is your favorite movie" to illicit a discussion completely off topic and help them relax. Even more so when I see them being nervous. In the context of the interview if we were talking and you said I have used sql server but it has been 20 years, meanwhile I have been working with some other DBMS it would a different ball game. I think everyone is jumping to the conclusion that this is an all or nothing question. I don't view it that way. And in the case of not using the tool for a long time something like "well I haven't used sql server in 20 years but an ANSI compliant current_timestamp" would demonstrate mastery of databases. The question is not just saying give me getdate() or get out. Even something as simple as, well I never got the data from t-sql because I have always passed it in a parameter would demonstrate understanding. The point is there isn't a single "right" answer. It is intended to get an overall idea of their technical ability and understanding. I bet if you didn't know exactly you would be to discuss it quite coherently without specific implementation syntax. It is the people who a total of 5-10 years since college claiming working with procedures in t-sql for all that time that give you the blank stare, or "gee I have never needed to know the current time". Those are the people who you want to weed out. They have little to no understanding of the concept and have overstated their abilities on the CV. The idea is to have a SUPER simple question that nearly anybody should be able to answer. And yes I too would much prefer "I don't know" to a bunch of BS. I fully understand what you mean about obscure functions that you might not ever need but seriously, in any kind of software you need to know the current day for all sorts of things. That is not an obscure need that anybody can reasonably say they never needed. Or perhaps if that is truly the case they could explain the system they worked on and explain why such a common thing would not be needed.
Another question I like to ask early is "what websites do you visit frequently related to development or databases on a regular basis to keep current or refine your skills?". Then if it is a forum ask them if they are active participants or mostly lurkers. There is no right or wrong here but often does a good job of helping the interviewee relax by being able to discuss something they are comfortable with.
I have to agree with pleading ignorance if you don't know something, but don't leave it at that either. If you don't know, you should be able to tell the interviewer what you would do to find the answer. That is just as important. Also getting the current date and time shouldn't be just a curt "getdate" or "current_timestamp." There are other methods of getting the current date time, and even if you don't know them being able to say that there are other ways and that you would use Books Online to identify them if needed. These add to the conversation and show the interviewer more about your knowledge.
I personally have not felt comfortable in interviews until the last few years. And in those I have also tried to ask questions of my own before providing an answer when it allowed me to get additional information that allowed me to provide a better answer to the question because it also showed I was looking deeper into the problem or situation that was originally asked. Can we say problem solving skills?
Even then, I would still only rate myself 5/10. It all comes back to what I know I know, what I know I don't know, and what I don't know that I don't know. There others here that will rate me higher, that's fine. I believe that they are more objective of what they know about my skills and knowledge than I am of my skills and knowledge. I would prefer to down play them some than over-hype myself.
June 26, 2018 at 2:29 pm
Lynn Pettis - Tuesday, June 26, 2018 2:07 PMSean Lange - Tuesday, June 26, 2018 1:38 PMddodge2 - Tuesday, June 26, 2018 12:55 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
Sean,
A couple thoughts for the conversation 'grist mill' if you will.
Stuff I never Needed
----------------------------
I have started using the dBASE alternative, FoxBase some 30 years back. While I have not used the latest version of the product recently, when I have it comes back relatively quickly. Even now then there are functions and features I would consider myself unaware of. The reason is that I have never had a need to use them. Perhaps some functions like SIN() or COS() never were needed. It was certainly a surprise to me that so few knew about GETDATE() but candidly, not having been immersed in T-SQL recently, I had to take a quick peek to remember. Maybe that's age (an increasingly useful excuse 😉) or the way my mind processes and stores information.Panic Time
---------------------------------
I do not like in-person interviews at all. I tend to 'lock up.' It wasn't until I took an online Meyers-Briggs self-analysis that I discovered this sort of approach didn't look to be the best way someone like me would normally approach and resolve thorny technical issues. That is, the typical interview venue, for me at least, is an extra hurdle. I understand that under pressure we need to not 'lock up' and, interestingly enough, I do not, except during the interview. I do not tie my assessment of others to on-the-spot answers primarily because I understand that this stuff can be complex. Given that I prefer proper and precise answers I am always thinking I will run out of time and that a correct answer often does not fit into "soundbite thinking." I'd prefer a setting more like real life.What Was That Again?
--------------------------------
I can remember my driver's license, from another state 30 years ago. A0954063, for what it's worth. And, my phone number from when I was 5 years old 544-1972, my neighbor's, 544-1793 (there's the hook, right?) and my late aunt & uncles from 40 years back; 846-1402. I struggle terribly with names. They take longer to settle in. I mention this because I am paid to resolve issues which in turn should simplify some process which also, in turn, ought to demonstrate, in a very measurable fashion that my time and the whole of the entire correlated expense of reaching a suitable end will satisfy the one concern of management; ROI. An arbitrary example would be; Doug takes $5,000 start-to-finish 'X'. Over the next year, we will realize $6,500 in savings and $3,500 in additional projected revenue. That makes the chore a $5,000 net to the company.I don't care to remember every little bit and I am not, at least in my own thinking, 'better' or 'worse' should I remember some approach. Now, this is within reasonable limits naturally but I do see this often the basis of one's corporate social standing and is even weaponized as others climb the ladder to what? I want to figure things out and write code. I can find answers, and better at that, already available and freely licensed by those more generous.
I would want to see some coding samples though. Or an over-the-weekend type test perhaps?
It was the Woman Lord
---------------------------------
Those who provide any kind of training whatsoever will, in my opinion, always be trailing edge rather than leading edge. Why? They are reacting and attempting to be the best or first to get in front at the earliest possible moment. This is great and these folks provide fabulous resources but it does raise, for me, a question. If the company is wanting to keep current and competitive, which does require knowing the latest and greatest trends, how can this not lead to a sort of perpetual looking for, finding and more often than not realizing that candidate 'Y', who did, in fact, know the proper buzzwords and the automated recruiter filtering engines fished out, be a total dud? It's always someone else's fault so the manager's blame the agency or the hire and the recruiting firm, after discussing the issue with the hire (because they really want to place them elsewhere) decide that it was the manager.It always seems to be someone else's fault and when you stand up and take responsibility you may well be blamed for the decisions of others. I prefer to take personal responsibility and value my character over employment. I can do this financially now but I've done it before when not so. I am nothing special as I think everyone should do this but that is not the world we live in.
The Real Issue?
----------------------
So, does the candidate demonstrate good character? If they honestly state that they don't know something rather than try and bluff, I prefer this to the alternative.Given the above and the other valid concerns, discarding the moaning and groaning about how difficult it all is, and unfair, and a royal pain in the *** to deal with politics and agendas and so forth, what are the best suggestions on how to meet and overcome them? I have a few which include making sure to take time off (like I am doing now) to ensure there is balance in life, catching up on technical skills, cleaning out the garage 🙂 and all of the rest.
What sort of approach would be the best way to bring someone on and get them in synch with the company, the standards, the goals, culture and all of the rest?
I totally understand what you mean and get the part about being crazy nervous in interviews. It isn't like I walk in the room and shine a spot light in their face and say "tell me how to get the current system time using exactly 14 characters" or something completely absurd like that. The discussion starts with hearing their story, asking why they are in the market for a new position. I usually ask questions like "what is your favorite movie" to illicit a discussion completely off topic and help them relax. Even more so when I see them being nervous. In the context of the interview if we were talking and you said I have used sql server but it has been 20 years, meanwhile I have been working with some other DBMS it would a different ball game. I think everyone is jumping to the conclusion that this is an all or nothing question. I don't view it that way. And in the case of not using the tool for a long time something like "well I haven't used sql server in 20 years but an ANSI compliant current_timestamp" would demonstrate mastery of databases. The question is not just saying give me getdate() or get out. Even something as simple as, well I never got the data from t-sql because I have always passed it in a parameter would demonstrate understanding. The point is there isn't a single "right" answer. It is intended to get an overall idea of their technical ability and understanding. I bet if you didn't know exactly you would be to discuss it quite coherently without specific implementation syntax. It is the people who a total of 5-10 years since college claiming working with procedures in t-sql for all that time that give you the blank stare, or "gee I have never needed to know the current time". Those are the people who you want to weed out. They have little to no understanding of the concept and have overstated their abilities on the CV. The idea is to have a SUPER simple question that nearly anybody should be able to answer. And yes I too would much prefer "I don't know" to a bunch of BS. I fully understand what you mean about obscure functions that you might not ever need but seriously, in any kind of software you need to know the current day for all sorts of things. That is not an obscure need that anybody can reasonably say they never needed. Or perhaps if that is truly the case they could explain the system they worked on and explain why such a common thing would not be needed.
Another question I like to ask early is "what websites do you visit frequently related to development or databases on a regular basis to keep current or refine your skills?". Then if it is a forum ask them if they are active participants or mostly lurkers. There is no right or wrong here but often does a good job of helping the interviewee relax by being able to discuss something they are comfortable with.
I have to agree with pleading ignorance if you don't know something, but don't leave it at that either. If you don't know, you should be able to tell the interviewer what you would do to find the answer. That is just as important. Also getting the current date and time shouldn't be just a curt "getdate" or "current_timestamp." There are other methods of getting the current date time, and even if you don't know them being able to say that there are other ways and that you would use Books Online to identify them if needed. These add to the conversation and show the interviewer more about your knowledge.
I personally have not felt comfortable in interviews until the last few years. And in those I have also tried to ask questions of my own before providing an answer when it allowed me to get additional information that allowed me to provide a better answer to the question because it also showed I was looking deeper into the problem or situation that was originally asked. Can we say problem solving skills?
Even then, I would still only rate myself 5/10. It all comes back to what I know I know, what I know I don't know, and what I don't know that I don't know. There others here that will rate me higher, that's fine. I believe that they are more objective of what they know about my skills and knowledge than I am of my skills and knowledge. I would prefer to down play them some than over-hype myself.
Agreed that it could begin a learning journey on how the person finds an answer they don't know and that is great. Just because they can't answer it doesn't mean the end of the discussion for me. Even with those whose response is "I don't know" I try to lead them by asking how they would figure it out.
I am guessing that most of the people in this thread that are saying Jeff and I are making too much of this have never asked this question in an interview. It is shocking beyond belief. Out of the last 15-20 interviews with people claiming at least 5 years experience there has been one and only person who could answer such an incredibly basic question. Her response was a very tentative "getdate"? Clearly rather shocked it was a basic question that must have meant I was really trying to ask something else. I actually was excited to finally find a candidate who could answer this. She was hired not long after and her 6 month contract lasted well over a year.
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
June 26, 2018 at 2:43 pm
Sean Lange - Tuesday, June 26, 2018 2:29 PMLynn Pettis - Tuesday, June 26, 2018 2:07 PMSean Lange - Tuesday, June 26, 2018 1:38 PMddodge2 - Tuesday, June 26, 2018 12:55 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
Sean,
A couple thoughts for the conversation 'grist mill' if you will.
Stuff I never Needed
----------------------------
I have started using the dBASE alternative, FoxBase some 30 years back. While I have not used the latest version of the product recently, when I have it comes back relatively quickly. Even now then there are functions and features I would consider myself unaware of. The reason is that I have never had a need to use them. Perhaps some functions like SIN() or COS() never were needed. It was certainly a surprise to me that so few knew about GETDATE() but candidly, not having been immersed in T-SQL recently, I had to take a quick peek to remember. Maybe that's age (an increasingly useful excuse 😉) or the way my mind processes and stores information.Panic Time
---------------------------------
I do not like in-person interviews at all. I tend to 'lock up.' It wasn't until I took an online Meyers-Briggs self-analysis that I discovered this sort of approach didn't look to be the best way someone like me would normally approach and resolve thorny technical issues. That is, the typical interview venue, for me at least, is an extra hurdle. I understand that under pressure we need to not 'lock up' and, interestingly enough, I do not, except during the interview. I do not tie my assessment of others to on-the-spot answers primarily because I understand that this stuff can be complex. Given that I prefer proper and precise answers I am always thinking I will run out of time and that a correct answer often does not fit into "soundbite thinking." I'd prefer a setting more like real life.What Was That Again?
--------------------------------
I can remember my driver's license, from another state 30 years ago. A0954063, for what it's worth. And, my phone number from when I was 5 years old 544-1972, my neighbor's, 544-1793 (there's the hook, right?) and my late aunt & uncles from 40 years back; 846-1402. I struggle terribly with names. They take longer to settle in. I mention this because I am paid to resolve issues which in turn should simplify some process which also, in turn, ought to demonstrate, in a very measurable fashion that my time and the whole of the entire correlated expense of reaching a suitable end will satisfy the one concern of management; ROI. An arbitrary example would be; Doug takes $5,000 start-to-finish 'X'. Over the next year, we will realize $6,500 in savings and $3,500 in additional projected revenue. That makes the chore a $5,000 net to the company.I don't care to remember every little bit and I am not, at least in my own thinking, 'better' or 'worse' should I remember some approach. Now, this is within reasonable limits naturally but I do see this often the basis of one's corporate social standing and is even weaponized as others climb the ladder to what? I want to figure things out and write code. I can find answers, and better at that, already available and freely licensed by those more generous.
I would want to see some coding samples though. Or an over-the-weekend type test perhaps?
It was the Woman Lord
---------------------------------
Those who provide any kind of training whatsoever will, in my opinion, always be trailing edge rather than leading edge. Why? They are reacting and attempting to be the best or first to get in front at the earliest possible moment. This is great and these folks provide fabulous resources but it does raise, for me, a question. If the company is wanting to keep current and competitive, which does require knowing the latest and greatest trends, how can this not lead to a sort of perpetual looking for, finding and more often than not realizing that candidate 'Y', who did, in fact, know the proper buzzwords and the automated recruiter filtering engines fished out, be a total dud? It's always someone else's fault so the manager's blame the agency or the hire and the recruiting firm, after discussing the issue with the hire (because they really want to place them elsewhere) decide that it was the manager.It always seems to be someone else's fault and when you stand up and take responsibility you may well be blamed for the decisions of others. I prefer to take personal responsibility and value my character over employment. I can do this financially now but I've done it before when not so. I am nothing special as I think everyone should do this but that is not the world we live in.
The Real Issue?
----------------------
So, does the candidate demonstrate good character? If they honestly state that they don't know something rather than try and bluff, I prefer this to the alternative.Given the above and the other valid concerns, discarding the moaning and groaning about how difficult it all is, and unfair, and a royal pain in the *** to deal with politics and agendas and so forth, what are the best suggestions on how to meet and overcome them? I have a few which include making sure to take time off (like I am doing now) to ensure there is balance in life, catching up on technical skills, cleaning out the garage 🙂 and all of the rest.
What sort of approach would be the best way to bring someone on and get them in synch with the company, the standards, the goals, culture and all of the rest?
I totally understand what you mean and get the part about being crazy nervous in interviews. It isn't like I walk in the room and shine a spot light in their face and say "tell me how to get the current system time using exactly 14 characters" or something completely absurd like that. The discussion starts with hearing their story, asking why they are in the market for a new position. I usually ask questions like "what is your favorite movie" to illicit a discussion completely off topic and help them relax. Even more so when I see them being nervous. In the context of the interview if we were talking and you said I have used sql server but it has been 20 years, meanwhile I have been working with some other DBMS it would a different ball game. I think everyone is jumping to the conclusion that this is an all or nothing question. I don't view it that way. And in the case of not using the tool for a long time something like "well I haven't used sql server in 20 years but an ANSI compliant current_timestamp" would demonstrate mastery of databases. The question is not just saying give me getdate() or get out. Even something as simple as, well I never got the data from t-sql because I have always passed it in a parameter would demonstrate understanding. The point is there isn't a single "right" answer. It is intended to get an overall idea of their technical ability and understanding. I bet if you didn't know exactly you would be to discuss it quite coherently without specific implementation syntax. It is the people who a total of 5-10 years since college claiming working with procedures in t-sql for all that time that give you the blank stare, or "gee I have never needed to know the current time". Those are the people who you want to weed out. They have little to no understanding of the concept and have overstated their abilities on the CV. The idea is to have a SUPER simple question that nearly anybody should be able to answer. And yes I too would much prefer "I don't know" to a bunch of BS. I fully understand what you mean about obscure functions that you might not ever need but seriously, in any kind of software you need to know the current day for all sorts of things. That is not an obscure need that anybody can reasonably say they never needed. Or perhaps if that is truly the case they could explain the system they worked on and explain why such a common thing would not be needed.
Another question I like to ask early is "what websites do you visit frequently related to development or databases on a regular basis to keep current or refine your skills?". Then if it is a forum ask them if they are active participants or mostly lurkers. There is no right or wrong here but often does a good job of helping the interviewee relax by being able to discuss something they are comfortable with.
I have to agree with pleading ignorance if you don't know something, but don't leave it at that either. If you don't know, you should be able to tell the interviewer what you would do to find the answer. That is just as important. Also getting the current date and time shouldn't be just a curt "getdate" or "current_timestamp." There are other methods of getting the current date time, and even if you don't know them being able to say that there are other ways and that you would use Books Online to identify them if needed. These add to the conversation and show the interviewer more about your knowledge.
I personally have not felt comfortable in interviews until the last few years. And in those I have also tried to ask questions of my own before providing an answer when it allowed me to get additional information that allowed me to provide a better answer to the question because it also showed I was looking deeper into the problem or situation that was originally asked. Can we say problem solving skills?
Even then, I would still only rate myself 5/10. It all comes back to what I know I know, what I know I don't know, and what I don't know that I don't know. There others here that will rate me higher, that's fine. I believe that they are more objective of what they know about my skills and knowledge than I am of my skills and knowledge. I would prefer to down play them some than over-hype myself.
Agreed that it could begin a learning journey on how the person finds an answer they don't know and that is great. Just because they can't answer it doesn't mean the end of the discussion for me. Even with those whose response is "I don't know" I try to lead them by asking how they would figure it out.
I am guessing that most of the people in this thread that are saying Jeff and I are making too much of this have never asked this question in an interview. It is shocking beyond belief. Out of the last 15-20 interviews with people claiming at least 5 years experience there has been one and only person who could answer such an incredibly basic question. Her response was a very tentative "getdate"? Clearly rather shocked it was a basic question that must have meant I was really trying to ask something else. I actually was excited to finally find a candidate who could answer this. She was hired not long after and her 6 month contract lasted well over a year.
I'm not doubting the results that you or Jeff get. All I have to do is look at many of the questions asked on this site to get the idea. Many are so basic that it actually hurts at times just to read the questions.
June 26, 2018 at 3:13 pm
Lynn Pettis - Tuesday, June 26, 2018 2:43 PMSean Lange - Tuesday, June 26, 2018 2:29 PMLynn Pettis - Tuesday, June 26, 2018 2:07 PMSean Lange - Tuesday, June 26, 2018 1:38 PMddodge2 - Tuesday, June 26, 2018 12:55 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
Sean,
A couple thoughts for the conversation 'grist mill' if you will.
Stuff I never Needed
----------------------------
I have started using the dBASE alternative, FoxBase some 30 years back. While I have not used the latest version of the product recently, when I have it comes back relatively quickly. Even now then there are functions and features I would consider myself unaware of. The reason is that I have never had a need to use them. Perhaps some functions like SIN() or COS() never were needed. It was certainly a surprise to me that so few knew about GETDATE() but candidly, not having been immersed in T-SQL recently, I had to take a quick peek to remember. Maybe that's age (an increasingly useful excuse 😉) or the way my mind processes and stores information.Panic Time
---------------------------------
I do not like in-person interviews at all. I tend to 'lock up.' It wasn't until I took an online Meyers-Briggs self-analysis that I discovered this sort of approach didn't look to be the best way someone like me would normally approach and resolve thorny technical issues. That is, the typical interview venue, for me at least, is an extra hurdle. I understand that under pressure we need to not 'lock up' and, interestingly enough, I do not, except during the interview. I do not tie my assessment of others to on-the-spot answers primarily because I understand that this stuff can be complex. Given that I prefer proper and precise answers I am always thinking I will run out of time and that a correct answer often does not fit into "soundbite thinking." I'd prefer a setting more like real life.What Was That Again?
--------------------------------
I can remember my driver's license, from another state 30 years ago. A0954063, for what it's worth. And, my phone number from when I was 5 years old 544-1972, my neighbor's, 544-1793 (there's the hook, right?) and my late aunt & uncles from 40 years back; 846-1402. I struggle terribly with names. They take longer to settle in. I mention this because I am paid to resolve issues which in turn should simplify some process which also, in turn, ought to demonstrate, in a very measurable fashion that my time and the whole of the entire correlated expense of reaching a suitable end will satisfy the one concern of management; ROI. An arbitrary example would be; Doug takes $5,000 start-to-finish 'X'. Over the next year, we will realize $6,500 in savings and $3,500 in additional projected revenue. That makes the chore a $5,000 net to the company.I don't care to remember every little bit and I am not, at least in my own thinking, 'better' or 'worse' should I remember some approach. Now, this is within reasonable limits naturally but I do see this often the basis of one's corporate social standing and is even weaponized as others climb the ladder to what? I want to figure things out and write code. I can find answers, and better at that, already available and freely licensed by those more generous.
I would want to see some coding samples though. Or an over-the-weekend type test perhaps?
It was the Woman Lord
---------------------------------
Those who provide any kind of training whatsoever will, in my opinion, always be trailing edge rather than leading edge. Why? They are reacting and attempting to be the best or first to get in front at the earliest possible moment. This is great and these folks provide fabulous resources but it does raise, for me, a question. If the company is wanting to keep current and competitive, which does require knowing the latest and greatest trends, how can this not lead to a sort of perpetual looking for, finding and more often than not realizing that candidate 'Y', who did, in fact, know the proper buzzwords and the automated recruiter filtering engines fished out, be a total dud? It's always someone else's fault so the manager's blame the agency or the hire and the recruiting firm, after discussing the issue with the hire (because they really want to place them elsewhere) decide that it was the manager.It always seems to be someone else's fault and when you stand up and take responsibility you may well be blamed for the decisions of others. I prefer to take personal responsibility and value my character over employment. I can do this financially now but I've done it before when not so. I am nothing special as I think everyone should do this but that is not the world we live in.
The Real Issue?
----------------------
So, does the candidate demonstrate good character? If they honestly state that they don't know something rather than try and bluff, I prefer this to the alternative.Given the above and the other valid concerns, discarding the moaning and groaning about how difficult it all is, and unfair, and a royal pain in the *** to deal with politics and agendas and so forth, what are the best suggestions on how to meet and overcome them? I have a few which include making sure to take time off (like I am doing now) to ensure there is balance in life, catching up on technical skills, cleaning out the garage 🙂 and all of the rest.
What sort of approach would be the best way to bring someone on and get them in synch with the company, the standards, the goals, culture and all of the rest?
I totally understand what you mean and get the part about being crazy nervous in interviews. It isn't like I walk in the room and shine a spot light in their face and say "tell me how to get the current system time using exactly 14 characters" or something completely absurd like that. The discussion starts with hearing their story, asking why they are in the market for a new position. I usually ask questions like "what is your favorite movie" to illicit a discussion completely off topic and help them relax. Even more so when I see them being nervous. In the context of the interview if we were talking and you said I have used sql server but it has been 20 years, meanwhile I have been working with some other DBMS it would a different ball game. I think everyone is jumping to the conclusion that this is an all or nothing question. I don't view it that way. And in the case of not using the tool for a long time something like "well I haven't used sql server in 20 years but an ANSI compliant current_timestamp" would demonstrate mastery of databases. The question is not just saying give me getdate() or get out. Even something as simple as, well I never got the data from t-sql because I have always passed it in a parameter would demonstrate understanding. The point is there isn't a single "right" answer. It is intended to get an overall idea of their technical ability and understanding. I bet if you didn't know exactly you would be to discuss it quite coherently without specific implementation syntax. It is the people who a total of 5-10 years since college claiming working with procedures in t-sql for all that time that give you the blank stare, or "gee I have never needed to know the current time". Those are the people who you want to weed out. They have little to no understanding of the concept and have overstated their abilities on the CV. The idea is to have a SUPER simple question that nearly anybody should be able to answer. And yes I too would much prefer "I don't know" to a bunch of BS. I fully understand what you mean about obscure functions that you might not ever need but seriously, in any kind of software you need to know the current day for all sorts of things. That is not an obscure need that anybody can reasonably say they never needed. Or perhaps if that is truly the case they could explain the system they worked on and explain why such a common thing would not be needed.
Another question I like to ask early is "what websites do you visit frequently related to development or databases on a regular basis to keep current or refine your skills?". Then if it is a forum ask them if they are active participants or mostly lurkers. There is no right or wrong here but often does a good job of helping the interviewee relax by being able to discuss something they are comfortable with.
I have to agree with pleading ignorance if you don't know something, but don't leave it at that either. If you don't know, you should be able to tell the interviewer what you would do to find the answer. That is just as important. Also getting the current date and time shouldn't be just a curt "getdate" or "current_timestamp." There are other methods of getting the current date time, and even if you don't know them being able to say that there are other ways and that you would use Books Online to identify them if needed. These add to the conversation and show the interviewer more about your knowledge.
I personally have not felt comfortable in interviews until the last few years. And in those I have also tried to ask questions of my own before providing an answer when it allowed me to get additional information that allowed me to provide a better answer to the question because it also showed I was looking deeper into the problem or situation that was originally asked. Can we say problem solving skills?
Even then, I would still only rate myself 5/10. It all comes back to what I know I know, what I know I don't know, and what I don't know that I don't know. There others here that will rate me higher, that's fine. I believe that they are more objective of what they know about my skills and knowledge than I am of my skills and knowledge. I would prefer to down play them some than over-hype myself.
Agreed that it could begin a learning journey on how the person finds an answer they don't know and that is great. Just because they can't answer it doesn't mean the end of the discussion for me. Even with those whose response is "I don't know" I try to lead them by asking how they would figure it out.
I am guessing that most of the people in this thread that are saying Jeff and I are making too much of this have never asked this question in an interview. It is shocking beyond belief. Out of the last 15-20 interviews with people claiming at least 5 years experience there has been one and only person who could answer such an incredibly basic question. Her response was a very tentative "getdate"? Clearly rather shocked it was a basic question that must have meant I was really trying to ask something else. I actually was excited to finally find a candidate who could answer this. She was hired not long after and her 6 month contract lasted well over a year.
I'm not doubting the results that you or Jeff get. All I have to do is look at many of the questions asked on this site to get the idea. Many are so basic that it actually hurts at times just to read the questions.
LOL true enough. And keep in mind these questions are being asked by people who already have a job. They are actually ahead of the people interviewing most of the time. :ermm:
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
June 26, 2018 at 3:28 pm
Sean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
First of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.
Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
June 26, 2018 at 3:56 pm
xsevensinzx - Tuesday, June 26, 2018 3:28 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
First of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.
Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
I think that's the point though, getting a current date is so basic and mundane that if you claimed to be working for 5+ years as a SQL developer and can't do it something is fundamentally wrong. It's not trivia, it's not tricky and it's something that so common you should know it if you claim to have SQL experience
June 26, 2018 at 4:12 pm
xsevensinzx - Tuesday, June 26, 2018 3:28 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
First of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.
Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
You are right, it should not be a big deal to look all the various methods, but they should at least know one without having to look it up. I can't remember them all but I know where to find find them. I also know getdate without any problem because I use it on a regular basis ever since I started working with SQL Server 20+ years ago. If someone says they never had to use a date/time function in their code and they have 5+ years experience, I am call BS. I have had to use date comparisons for longer than I have worked with SQL Server. It is a common routine.
June 26, 2018 at 7:02 pm
ZZartin - Tuesday, June 26, 2018 3:56 PMxsevensinzx - Tuesday, June 26, 2018 3:28 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
First of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.
Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
I think that's the point though, getting a current date is so basic and mundane that if you claimed to be working for 5+ years as a SQL developer and can't do it something is fundamentally wrong. It's not trivia, it's not tricky and it's something that so common you should know it if you claim to have SQL experience
Correct.
--Jeff Moden
Change is inevitable... Change for the better is not.
June 26, 2018 at 7:33 pm
xsevensinzx - Tuesday, June 26, 2018 3:28 PMFirst of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
Yes, the comparison is exactly the same. If a candidate for a carpenter job doesn't know what the basic tool is, then they're not a carpenter.
And, no... it's not what I FEEL... it's what has worked quite effectively for more than a decade now. Remember, I'm not hiring for junior positions. These are senior positions with heavy reliance on SQL Server and T-SQL. If you'd like to hire people for such senior positions even though they don't know how to get the current date and time in T-SQL, let me know and I'll start referring them to you. 😉
--Jeff Moden
Change is inevitable... Change for the better is not.
June 27, 2018 at 6:33 am
xsevensinzx if you prefer, perhaps a different analogy might be asking someone who's applied for a system administrator position "where do you add something to the path?" Again, it's a very basic thing, and if someone has been working as a sysadmin for years, they *WILL* have had to muck about with the path statement. Heck, I'm a SQL DBA and *I've* had to add things to the path to get stuff in SQL working.
It seems the point Jeff is trying to make is that while asking a candidate how to get the current date and time is a (or should be) a really, really, simple question, it can give a general idea as to where the interview is going to go. It can fairly quickly point out that perhaps while the candidate lists "10 years" of experience with SQL, it's actually been "1 yr 10 times." Someone who gives a tentative "getdate?" answer is still far ahead of someone who replies "I don't know, I've never had to do that." The tentative answer could be attributed more to them thinking "I know this is a right answer, but is it the right answer, are they looking for something more complicated, but there isn't really a more complicated way, not in T-SQL is there, not that I can think of, so I'm going with getdate."
At the base of it, it's nothing more than another way to weed out (or potentially weed out,) candidates who might not be a good fit. HR did the initial weed-out by going through the resume pile and tossing any obvious ones, then Jeff hits them with "how can you get the current date and time in SQL" during the interview. Get that right, and it shows you've got at least some of the basics, get it wrong, or don't answer, and it's a ding against. Hiring people is costly, what with everything that needs to be done, and if you bring in someone who can't do the job, it's even costlier because now you have to do it a second time. I'd also bet that while Jeff may build an initial opinion based on the question, if the person does well on the rest of the interview and sounds like a good fit for the team, they'd still get an offer.
June 27, 2018 at 7:30 am
xsevensinzx - Tuesday, June 26, 2018 3:28 PMSean Lange - Tuesday, June 26, 2018 10:44 AMxsevensinzx - Tuesday, June 26, 2018 10:19 AMIf you disqualify them for the job over it, then you are saying they are qualified if they answer it right. The same logic applies when dipping you toe into the water. If it's too cold, you just disqualified the water to touch your body if you walk away and not jump in. Everything said here sounds like you're all disqualifying them for the job if they answer it wrong. :Whistling:The thing is, it's insanely easy to learn how to pull a trigger (i.e.: learn how to get the system time). It's not easy to pull that trigger when it counts in war (i.e.: know when to use it). That's why the journey--the story--is always going to be more relevant than anything else.
Your logic is tragically flawed. Just because they clearly are not qualified answering an absolute basic question does NOT mean they are qualified if they do. But if said person claims 5-10 years of sql development and can't tell you how to get the current system time then it means 1 of 2 things. Either they a month of experience over and over for the last several years and have shown zero signs of growth OR they flat out lied on their CV. Anybody with anywhere close to 5-10 years experience in sql server will know how to get the current system time. It is like Jeff's example of a carpenter with a hammer. If they don't know what that tool is used for you can be damned sure they are totally incompetent as a carpenter. And yes, I would say that if they can't get the system time in a query they are not qualified. There have been several people over the years who Jeff would say is the diamond in the rough. They are intelligent people who would be quick learners. But when hiring for a contract position or a mid-level person they are not at the right level of experience.
First of all, you cannot compare a hammer to a carpenter to getting the current system time to a SQL developer. We're talking about syntax here with different methods of utilizing that syntax to solve a problem. A correct comparison would be comparing a method in which a carpenter hits a nail to how a SQL developer might use a method to get the current system time.
Secondly, you're trying to justify this by choosing WHAT YOU FEEL is the most basic method you can think of to qualify the experience of the individual. Essentially, a carpenter you are trying to hire to demonstrate how he/she would hold a hammer and hit a nail. I know plenty of carpenters who can tell whether someone is a carpenter just by how they hold a hammer and hit a nail. Unfortunately, getting the current system time is not exactly a fair comparison to hitting a nail with a hammer. I would say something like, define every clause of a SELECT statement would be where you might get back: SELECT, FROM, WHERE, AND, GROUP BY, HAVING, etc
Lastly, getting the current system time is not really an ideal learning situation. It's so mundane that it's not a huge deal if someone has to look up all the various methods to get it. I mean, for god sakes, there is more than one way. There are seriously more challenging things to not know than that.
Just my humble opinion. :crazy:
I think the others already hit on my meaning. But to clarify I don't ask something stupid like "what are all the ways to get the current time". That would be trivia and pointless. It is more like "can you tell me a method for getting the current time in t-sql". That leaves it wide open for them to specify whatever path they are comfortable with. As you said it is mundane, as such it should require zero thought to state the one you are more comfortable with. And those who "don't know" or "I never needed to know the current time" are going to have to dig pretty deep to overcome such a basic hole in their ability. Remember this is not a one wrong answer and you are done kind of thing. But it sure is a good indication of your overall ability.
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
June 27, 2018 at 8:39 am
jasona.work - Wednesday, June 27, 2018 6:33 AMxsevensinzx if you prefer, perhaps a different analogy might be asking someone who's applied for a system administrator position "where do you add something to the path?" Again, it's a very basic thing, and if someone has been working as a sysadmin for years, they *WILL* have had to muck about with the path statement. Heck, I'm a SQL DBA and *I've* had to add things to the path to get stuff in SQL working.It seems the point Jeff is trying to make is that while asking a candidate how to get the current date and time is a (or should be) a really, really, simple question, it can give a general idea as to where the interview is going to go. It can fairly quickly point out that perhaps while the candidate lists "10 years" of experience with SQL, it's actually been "1 yr 10 times." Someone who gives a tentative "getdate?" answer is still far ahead of someone who replies "I don't know, I've never had to do that." The tentative answer could be attributed more to them thinking "I know this is a right answer, but is it the right answer, are they looking for something more complicated, but there isn't really a more complicated way, not in T-SQL is there, not that I can think of, so I'm going with getdate."
At the base of it, it's nothing more than another way to weed out (or potentially weed out,) candidates who might not be a good fit. HR did the initial weed-out by going through the resume pile and tossing any obvious ones, then Jeff hits them with "how can you get the current date and time in SQL" during the interview. Get that right, and it shows you've got at least some of the basics, get it wrong, or don't answer, and it's a ding against. Hiring people is costly, what with everything that needs to be done, and if you bring in someone who can't do the job, it's even costlier because now you have to do it a second time. I'd also bet that while Jeff may build an initial opinion based on the question, if the person does well on the rest of the interview and sounds like a good fit for the team, they'd still get an offer.
Precisely correct. And, to cite a snippet from above...
I'd also bet that while Jeff may build an initial opinion based on the question, if the person does well on the rest of the interview and sounds like a good fit for the team, they'd still get an offer.
That's very true. I understand the duress that some folks are under during an interview and the first couple (actually, several questions) are designed to set the candidate at ease due to their simplicity.
However, there has never been a candidate that failed that first question that has successfully conveyed the required senior level of knowledge that we're trying to hire. Of course, those that successfully answer that first question frequently (meaning "usually" here) don't have what it takes either.
The bar (what some people refer to as the "average") on "what it takes" has necessarily become insanely low. Very few of the people that we've hired actually had the necessary knowledge to be called "senior level" and we ended up settling for "has enough of the basics down and has the correct attitude and work ethic to be trainable and, someday, self-trainable". The level of knowledge exhibited by most candidates doesn't come close to "senior level". For example, you would expect someone that claims to have been working on report generation for X number of years (according to their resume) to be able to come up with the sum of "0" for any missing dates on a report. Most can't even think of a method to do that even using a WHILE loop or rCTE never mind any of the "senior level" techniques of using a Calendar table or using CROSS JOINs to quickly generate sequential dates on the fly. When you dumb down the question to ask them how they would simply generate a count from 1 to some number, most give a blank stare and can't even come up with a WHILE loop.
Since we do a huge number of file imports and exports in a non-SSIS environment, it would be nice if someone actually knew something of BULK INSERT and/or BCP and a little about DOS but that knowledge seems to be virtually non-existent anymore. The same is true of CROSSTABs/PIVOTS (incredibly important for both reporting and file generation) and knowledge of things we consider to be "common knowledge" on these forums (the use of "windowing" functions such as ROW_NUMBER(), for example) also seems to be a huge void.
--Jeff Moden
Change is inevitable... Change for the better is not.
June 27, 2018 at 8:45 am
If you're interviewing to fill an experienced T-SQL developer position, and only 1 candidate out of 15 can correctly answer a question related to GETDATE(), then that's not really a true reflection of the SQL community or job market. There is something wrong with your vetting process. Seriously, I would complain to the recruiter or HR to put more effort on the pre-screening process to line up better candidates.
"Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho
Viewing 15 posts - 46 through 60 (of 64 total)
You must be logged in to reply to this topic. Login to reply