August 5, 2015 at 2:53 am
Greetings Colleagues,
I’ll be leaving my company very soon and my manager asked me to write some interview questions for whoever will be taking over. The thing is there is no need for a full time DBA in here (that’s why I’m moving on), the new guy will have to be a 50% SQL Dev and 50% C# so I would need the questions to be appropriate for it.
I know some of you are involved in recruitment processes and have some experience in it and would like to ask for some Questions/Answers that would help with finding a replacement.
Things I would like to cover with the questions is definitely dynamic SQL, using sys schema (sys.tables, sys.columns etc.), some relational database designing, basing knowledge of SSIS and some basic t-sql code writing. Don’t want the questions to be tricky, more down to earth, the new guy will have time to learn, it’s not a very busy environment.
August 5, 2015 at 7:36 am
August 5, 2015 at 7:46 am
Hi Luis,
Thanks for that. I've started preparing a list of some Q/A but i can't find a nice one about dynamic sql writing. I would like check the candidates basic skill but not overwhelm him with over complicated question as won't be a full time SQL Dev
August 5, 2015 at 7:54 am
Kutang Pan (8/5/2015)
Hi Luis,Thanks for that. I've started preparing a list of some Q/A but i can't find a nice one about dynamic sql writing. I would like check the candidates basic skill but not overwhelm him with over complicated question as won't be a full time SQL Dev
You could use something as the differences of EXEC() and sp_executesql. Or just ask for them. You might want to ask about how to prevent SQL Injection (or what it is).
Some of Wayne's questions are very high level, but others are great for any level. You might consider as well that some people memorize interview questions from the internet so try to adapt them to prevent memorized answers.
August 5, 2015 at 7:56 am
Kutang Pan (8/5/2015)
Greetings Colleagues,I’ll be leaving my company very soon and my manager asked me to write some interview questions for whoever will be taking over. The thing is there is no need for a full time DBA in here (that’s why I’m moving on), the new guy will have to be a 50% SQL Dev and 50% C# so I would need the questions to be appropriate for it.
I know some of you are involved in recruitment processes and have some experience in it and would like to ask for some Questions/Answers that would help with finding a replacement.
Things I would like to cover with the questions is definitely dynamic SQL, using sys schema (sys.tables, sys.columns etc.), some relational database designing, basing knowledge of SSIS and some basic t-sql code writing. Don’t want the questions to be tricky, more down to earth, the new guy will have time to learn, it’s not a very busy environment.
Since its conspicuously absent for all the above, what of backups and what's the DR plan at the company? What condition are you leaving the company in? And, the "50% SQL Dev" better have a whole lot more on the ball than just "Dev".
--Jeff Moden
Change is inevitable... Change for the better is not.
August 5, 2015 at 7:58 am
Luis Cazares (8/5/2015)
Kutang Pan (8/5/2015)
Hi Luis,Thanks for that. I've started preparing a list of some Q/A but i can't find a nice one about dynamic sql writing. I would like check the candidates basic skill but not overwhelm him with over complicated question as won't be a full time SQL Dev
You could use something as the differences of EXEC() and sp_executesql. Or just ask for them. You might want to ask about how to prevent SQL Injection (or what it is).
Some of Wayne's questions are very high level, but others are great for any level. You might consider as well that some people memorize interview questions from the internet so try to adapt them to prevent memorized answers.
Thats why i would like some more "hands on" questions
August 5, 2015 at 8:01 am
Jeff Moden (8/5/2015)
Since its conspicuously absent for all the above, what of backups and what's the DR plan at the company? What condition are you leaving the company in? And, the "50% SQL Dev" better have a whole lot more on the ball than just "Dev".
The eniviroment is quite specyfic as there i no server to look after, therefore no involvment in purely administrative tasks. The job is about developing databases on stand alone QA instruments (running SQL express) that are being build onsite and later sold to customers factories. all the databases have deployment path and are kept versioned and in source control so that any changes to databases/software have their upgrade path in case a customer wants a software upgrade on his machine.
I'm leaving purely because there is no need for a full time DBA anymore, it was fun for some time but it's time to move on as I've done my part by dealing with some bigger database related projects and there is nothing much on the plate to look forward for at least a year or two.
August 5, 2015 at 10:13 am
Kutang Pan (8/5/2015)
Jeff Moden (8/5/2015)
Since its conspicuously absent for all the above, what of backups and what's the DR plan at the company? What condition are you leaving the company in? And, the "50% SQL Dev" better have a whole lot more on the ball than just "Dev".
The eniviroment is quite specyfic as there i no server to look after, therefore no involvment in purely administrative tasks. The job is about developing databases on stand alone QA instruments (running SQL express) that are being build onsite and later sold to customers factories. all the databases have deployment path and are kept versioned and in source control so that any changes to databases/software have their upgrade path in case a customer wants a software upgrade on his machine.
I'm leaving purely because there is no need for a full time DBA anymore, it was fun for some time but it's time to move on as I've done my part by dealing with some bigger database related projects and there is nothing much on the plate to look forward for at least a year or two.
Ah... got it and now understood as to why you're leaving. Thank you for the feedback. I'll try to provide some questions for you to consider when I get home tonight.
--Jeff Moden
Change is inevitable... Change for the better is not.
August 6, 2015 at 8:21 am
Thank you Jeff,
I’ve actually read many threads on this forum and know that you do have some experience in recruiting sql "professionals" so any input would be highly appreciated.
I've prepared an initial list of questions / answers trying to keep in mind this would be a "50% SQL Dev". I would be very grateful if you guys could have a look and correct any bollocks I’ve wrote in there. Please find attached.
August 6, 2015 at 8:49 am
Kutang Pan (8/6/2015)
Thank you Jeff,I’ve actually read many threads on this forum and know that you do have some experience in recruiting sql "professionals" so any input would be highly appreciated.
I've prepared an initial list of questions / answers trying to keep in mind this would be a "50% SQL Dev". I would be very grateful if you guys could have a look and correct any bollocks I’ve wrote in there. Please find attached.
I'm a little confused on your questions. You said that the person wouldn't need to use backups (although I think that a bit odd) and that you folks don't use SSIS because you're using SQL Express. Why are you asking such questions if there's no need there? And I also see only 1 question on joins rather than a discussion on joins.
--Jeff Moden
Change is inevitable... Change for the better is not.
August 6, 2015 at 8:57 am
When the software is being upgraded it automatuically backs up a database, It's just a full backup, so i thought at least knowing how to do a backup would be beneficial.
Some of the customers have central data warehouses to collect data from all the instruments they have and for one type of product we use SSIS to collect the data, the package is running on standard edition of SQL and changing connection dynamically to move the data around from express.
August 6, 2015 at 8:58 am
I would try to go from the basics to the more advanced things to help to determine easier the knowledge and also to give an easy start for the candidates and reduce the stress.
I'd also suggest that you remove the answers from the internet to prevent someone to study precisely for this.
August 6, 2015 at 8:59 am
Luis Cazares (8/6/2015)
...I'd also suggest that you remove the answers from the internet to prevent someone to study precisely for this...
heh true Luis! will remove them.
August 6, 2015 at 9:22 am
Luis Cazares (8/6/2015)
I would try to go from the basics to the more advanced things to help to determine easier the knowledge and also to give an easy start for the candidates and reduce the stress.I'd also suggest that you remove the answers from the internet to prevent someone to study precisely for this.
Same here. My first question (after telling the interviewee that I don't ask trick questions and that I'm going to start out with simple questions and to go for the obvious answers) is "How do you get the current date and time in T-SQL"?
--Jeff Moden
Change is inevitable... Change for the better is not.
August 6, 2015 at 9:39 am
Luis Cazares (8/5/2015)
Kutang Pan (8/5/2015)
Hi Luis,Thanks for that. I've started preparing a list of some Q/A but i can't find a nice one about dynamic sql writing. I would like check the candidates basic skill but not overwhelm him with over complicated question as won't be a full time SQL Dev
You could use something as the differences of EXEC() and sp_executesql. Or just ask for them. You might want to ask about how to prevent SQL Injection (or what it is).
Some of Wayne's questions are very high level, but others are great for any level. You might consider as well that some people memorize interview questions from the internet so try to adapt them to prevent memorized answers.
Attached is my review. I welcome others to comment and correct anything I may have said that is in error.
One thing, I would stress that all SQL statements should be terminated with semicolons.
Many times you will see people write CTEs (example: WITH ctename as (...)select * from ctename;) placing a semicolon at the beginning
like this: ;WITH ctename AS (...) SELECT * FROM ctename
This is nothing more than a crutch used to ensure that the previous statement is terminated with a semicolon.
EDIT: deleted the attachment. I will PM the file to the OP.
Viewing 15 posts - 1 through 15 (of 24 total)
You must be logged in to reply to this topic. Login to reply