Saturday, July 4, 2009

Interview questions for ASE DBAs

This page contains some suggestions for questions to ask when interviewing an applicant for a Sybase ASE DBA job. There are also some questions the candidate might want to ask before (s)he takes the job (see the end of this page).
Please bear in mind that these are just some suggestions which I personally think are relevant. I'm certainly not claiming that these are the "best" or "most representative" questions you could ask. You could use these as a starting point and add further questions of your own.

The questions are listed here. They are repeated, with answers, below. At the bottom of this page, there are also some questions for a candidate DBA to ask a potential future employer.

What are the most important DBA tasks?
What should you do when you find a stacktrace in the server errorlog?
Is there any disadvantage of splitting up your application data into a number of different databases?
Is it necessary to drop & recreate all procedures and triggers every few months?
What are the main advantages and disadvantages of using identity columns?
What do you do when the server can't start due to a corrupt master database?
When you do a BCP-in from a file to a table, what happens to triggers, constraints, rules and defaults on that table?
How do you BCP only a certain set of rows out of a large table?
What's the difference between managing permissions through users and groups or through user-defined roles?
Is there any advantage in using the 64-bit version of ASE instead of the 32-bit version?
Is it a good idea to use datarows locking for all tables by default?
What would you do when the ASE server's performance is bad?
What do you do when a segment gets full?
Are timestamp columns good candidates for primary keys? (since they're always unique for a row)
Does the DBA candidate hold a Sybase Certification?





Questions to ask a candidate DBA


What are the most important DBA tasks ?
In my opinion, these are (in order of importance): (i) ensure a proper database/log dump schedule for all databases (including master); (ii) run dbcc checkstorage on all databases regularly (at least weekly), and follow up any corruption problems found; (iii) run update [index] statistics at least weekly on all user tables; (iv) monitor the server errorlog for messages indicating problems (daily). Of course, a DBA has many other things to do as well, such as supporting users & developers, monitor performance, etc.

What should you do when you find a stacktrace in the server errorlog
Open a case with Sybase TechSupport. There's not much you can do yourself with this information, and only TechSupport has the information to determine whether it's related to a bug, for example. It's not a good idea to ignore such things in the errorlog -- 'cos it might indeed indicate you're hitting a bug.

Is there any disadvantage of splitting up your application data into a number of different databases ?
When there are relations between tables/objects across the different databases, then there is a disadvantage indeed: if you would restore a dump of one of the databases, those relations may not be consistent anymore. This means that you should always back up a consistent set of databases; however, this may be difficult when the system is continuously in use, because a single database is the unit of backup/restore. Therefore, when making this kind of design decision, backup/restore issues should be considered (and the DBA should be consulted).

Is it necessary to drop & recreate all procedures and triggers every few months ?
No; in older Sybase versions (4.x), this was sometimes necessary, as query plans could grow bigger over time, hit an upper limit at some point and cause an error. Both the growing plan and the limit have been removed since at least version 11.0 (or was it already fixed in 10 ? -- I'm not sure...).

What are the main advantages and disadvantages of using identity columns ?
The main advantage of an identity column is that it can generate unique, sequential numbers very efficiently, requiring only a minimal amount of I/O. The disadvantage is that the generated values themselves are not transactional, and that the identity values may jump enourmously when the server is shut down the rough way (resulting in "identity gaps"). You should therefore only use identity columns in applications if you've adressed these issues (go here for more information about identity gaps).

What do you do when the server can't start due to a corrupt master database ?
You create a new master device using buildmaster (on 12.5, use dataserver instead); create a RUN_SERVER file and start the server in single-user mode (using the -m option); then manually add an entry for SYB_BACKUP in sysservers; and then load a database dump of the master database. After that, the server will automatically shut down; restart it and see if your application databases are still there.

To turn up the heat a bit: what if you're using a non-default character set or sort order ?
In this case, things are more complicated: you'll first need to create sybsystemprocs and change the sort order/charset of newly created master database before loading the master database dump (thanks to John Langston for this one).

When you do a BCP-in from a file to a table, what happens to triggers, constraints, rules and defaults on that table ?
For both fast BCP and 'normal' BCP, triggers, constraints and rules are ignored. Defaults will be effective though (go here for a nasty, but little-known side effect).

How do you BCP only a certain set of rows out of a large table ?
If you're in ASE 11.5 or later, create a view for those rows and BCP out from the view. In earlier ASE versions, you'll have to select those rows into a separate table first and BCP out from that table. In both cases, the speed of copying the data depends on whether there is a suitable index for retrieving the rows.

What's the difference between managing permissions through users and groups or through user-defined roles ?
The main difference is that user-defined roles (introduced in ASE 11.5) are server-wide, and are granted to logins. Users and groups (the classic method that has always been there since the first version of Sybase) are limited to a single database. Permissions can be granted/revoked to both user-defined roles and users/groups. Whichever method you choose, don't mix 'm, as the precedence rules are complicated.

Is there any advantage in using the 64-bit version of ASE instead of the 32-bit version ?
The only difference is that the 64-bit version of ASE can handle a larger data cache than the 32-bit version, so you'd optimize on physical I/O. Therefore, this may be an advantage if the amount of data cache is currently a bottleneck. There's no point in using 64-bit ASE with the same amount of "total memory" as for the 32-bit version, because 64-bit ASE comes with an additional overhead in memory usage -- so the net amount of data cache would actually be less for 64-bit than for 32-bit in this case.
(Just for clarity: the 64-bit version is not twice as fast as the 32-bit version, and does not perform its I/O at double the size of the 32-bit version (I once heard someone state these as facts...)).

Is it a good idea to use datarows locking for all tables by default ?
Not by default; only if you're having concurrency (locking) problems on a table, and you're not locking many rows of a table in a single transaction, then you could consider datarows locking for that table. In all other cases, use either datapages or allpages locking.
(I personally favor datapages locking as the default lock scheme for all tables because switching to datarows locking is fast and easy, whereas for allpages locking, the entire table has to be converted which may take long for large tables. Also, datapages locking has other advantages over allpages, such as not locking index pages, update statistics running at level 0, and the availability of the reorg command).

What would you do when the ASE server's performance is bad ?
"Bad performance" is not a very meaningful term, so you'll need to get a more objective diagnosis first. Find out (i) what such a complaint is based on (clearly increasing response times or just a "feeling" that it's slower?), (ii) for which applications/queries/users this seems to be happening, and (iii) whether it happens continuously or just incidentally. Without identifying the specific, reproducable problem, any action is no better than speculation.

What do you do when a segment gets full ?
Wrong: a segment can never get full (even though some error messages state something to that extent). A segment is a "label" for one or more database device fragments; the fragments to which that label has been mapped can get full, but the segments themselves cannot. (Well, OK, this is a bit of a trick question... when those device fragments full up, you either add more space, or clean up old/redundant data.)

Are timestamp columns good candidates for primary keys? (since they're always unique for a row)
Absolutely not, this would be a bad thing to do; timestamp columns are actually a bit too unique to be used as a primary key. For details, see the quiz question for August 2004.

Does the DBA candidate hold a Sybase Certification ?
If (s)he has, consider that a plus !

Questions for a candidate DBA to ask your potential future employer

When you're being interviewed for a DBA vacancy, there are some things related to the DBA environment you might want to know as well. I'd suggest to check out at least the following:


Does the company have a Technical Support contract with Sybase ?
A support contract is required for getting EBFs and for being able to ask questions about technical problems. Without a support contract, you're completely on your own; you should ask yourself if your can fulfill the company's expectations in that case.

Which version of ASE are they using, and on which platform ?
This matters: for example, if they appear to be running 11.0.3 on Data General, find out if they are aware that both this ASE version and this platform are no longer supported by Sybase. If they're not planning to upgrade to a supported version/platform soon, ask yourself if you want to be working there; you risk being on your own, without support, and with an out-of-date ASE version that stops you from keeping your ASE knowledge current.

How many servers, database and concurrent users do they have ? What's the database size like ? Is there a 24*7 uptime requirement ?
It helps to know which scale you're talking about. If you're supposed to look after a 500 Gb, never-no-downtime, 3000-user system, check whether the salary you're being offered is of the same magnitude as the system.

Is Sybase Replication Server involved ?
If it is, and if you know RepServer, reconsider your financial demands -- upwards, that is. Reason is that RepServer DBAs are hard to find -- much harder than ASE DBAs.

Are you also supposed to take care of their Oracle, MS-SQL, etc. servers ? Do you have to manage ASIQ or ASA (SQLAnywhere) as well ?
You may want to know this in advance rather than find out on your first working day....

If you want to get a Sybase certification (or get a more recent one) will they pay for this ?
It should make 'm happy that you're willing to get your certification, 'cos it will make you a better DBA; try to get them to pay for at least part of it. Tip: if you're talking to a management person, calling this a "win-win scenario" might help....

INTERVIEWING TIPS & TRICKS

Interview discussion. Interview discussions can be boring and meaningless. A candidate can experience a live, regurgitation of the job description listed in the local paper rather than a meaningful conversation of what is expected of him or her. Take this opportunity (or any other) to discuss new procedures you wish to implement to increase the company's bottom line and productivity. Use dollars, percentages, and cents (sense). In today's age, nearly anyone can do a job, but can they produce results?

Never make negative comments about former employers. No matter how tempting it is to want to notify the world about the awful business practices of a previous employer; DON'T DO IT. Remember, stay professional, don't resort to mud slinging.

Are there some interview questions I should be concerned about? There are several interview questions that aren't illegal, but may lead to answers that cause the hiring manager to make an illegal decision. These include: a) number of dependents b) do you have a sitter c) are you married d) how much do you weigh e) religion? Obviously, a hiring manager does not purposely break the law (at least we hope not), so give them the benefit of the doubt if asked anything you feel is inappropriate. Kindly, indicate to them you are uncomfortable with the question and decline to answer.

Bring up salary or benefits in the first interview? In today's world, we believe this is a passing phase. Virtually, our entire lives are beginning to evolve around one question, "How much?" If they bring it up first, then go for it. A simple rule to follow when you are presented with an amount is to ask, "Is this amount set in stone or is it negotiable?" If the amount is non-negotiable, take enough time to think about it (especially if it is lower than your previous salary). Rather, if the amount is negotiable, we recommend taking your time, before giving them an amount you may not be able to revise later.

What if I complete the entire interview and salary is not mentioned at all! This is not likely to occur, however, if it does, simply inquire at the end (if you feel it is appropriate) or continue to wait until the company provides an offer.

Is there a key or map to interviewing? Keep in mind, every hiring manager has different interviewing skills and tactics. You may interview with a highly structured manager that will ask every official question, or you may have someone that just called you in to chat to see if your personality will "click" with the rest of the staff.

When the interviewer says, "Do you have any questions?" Do you automatically say no?

Try these:
a) Is there room for advancement?
b) Will I be required to work overtime?
c) Who will be my immediate supervisor and manager?
d) Where do you see the company in the next five (5) years? ten (10) years?
e) After an adjustment period, can I take on additional learning opportunities and/or duties to expand my working knowledge of the business?

Send a follow-up letter (AKA thank you letter). A large percentage don't even give a follow-up (after interview) letter a second thought. This letter can serve key functions: a) make the interviewer sway in your direction when they are torn in selecting a candidate b) notifying them of your courteous, thoughtful demure which can aid you in salary and benefit negotiations.

Monday, June 29, 2009

TOP 15 interview questions

Top 15 Interview Questions

Interviewing for a job can be one of the most uncomfortable events in your life. It is equally uncomfortable for many managers who must interview candidates for a position. Preparation can make the task easier. Here are some questions that are the most frequently asked, according to a ResumeDoctor.com survey of 2000 corporate recruiters.

You should have answers prepared for these questions.

  1. Describe your ideal job and/or boss.
  2. Why are you looking for a job? Why are leaving your current position?
  3. What unique experience or qualifications separate you from other candidates?
  4. Tell me about yourself.
  5. What are your strengths and weaknesses?
  6. Describe some of your most important career accomplishments.
  7. What are your short-term/long-term goals?
  8. Describe a time when you were faced with a challenging situation and how you handled it.
  9. What are your salary requirements?
  10. Why are you interested in this position? Our company?
  11. What would your former boss/colleagues say about you?
  12. What are the best and worst aspects of your previous job?
  13. What do you know about our company?
  14. What motivates you? How do you motivate others?
  15. Are you willing to relocate?
Don't forget to write a brief ‘Thank You’ note to the person or people who interviewed you. You may be the only candidate who performed this small courtesy!

interview tips

How To Get the Interview

Scoring the interview for the job that you want doesn’t have to be rocket science. Sometimes you can score that interview by simply making a phone call. There are many ways that people go about trying to get an interview. The methods of achieving one vary by company. It is best to know what the company’s application process is before taking your first step.

Generally, when a company is hiring they post an ad in the newspaper or an online job bank. How to contact them is usually included in the ad as well. You don’t want to email a resume to a company that is requesting that you walk in with your resume. You don’t want to call a company that requires a faxed resume etc. Ignoring their initial contacting information will guarantee that you will not get that interview because you have already proven that you can’t follow simple directions.

Sometimes, you can get a job lead from a friend before the job has been posted. If this is the case, you can either ask the friend to give the employer your resume and cover letter. If your friend doesn’t actually work where the lead came from, you can try calling about the position and ask what the application procedure is.
There are four general methods of applying for a job, and they include these basic methods.

Sending a Resume

Some companies prefer that you mail in your resume. For this type of approach, it is best to include a cover letter with your resume. The cover is a basic letter that describes the position that you are interest in and a few details of your qualifications and skills. It is basically your lead in to your resume. Before writing your cover letter, you should know whom the letter is to be addressed to. You never want to begin a cover letter with “Dear Sir or Madame” or “To whom it may Concern”. It shows that you have not prepared, and that you are not looking for a specific position with their company, but any job that you can get your hands on. Basically, it is disrespectful to your prospective employer.

Emailing Your Resume

Emailing resumes is becoming a commonplace way for recruiters to get resumes. Most companies offer this method as an alternative to the others. However, there are few tips on how you should go about it.

You should attach your resume as a word document or PDF file. These are the most common formats and what most companies will accept. The subject line should read like this: Smith, John (clerical position)This makes it easy for the recruiter to know who the email is from, and what it pertains to. It also assures that your email will be read.

Sometimes there are specific methods for addressing an emailed resume. Some companies have certain subject line requirements so follow them. If your company wants you to paste your resume, don’t send attachments because your email will be deleted right away.

Faxing Your Resume

Again, you will need to include a cover letter when you fax in your resume. If you are not using your own fax machine, be sure to include your proper contact information. The rules for your cover letter are the same as for mailing your resume. More about cover letters will be provided a bit later on in this book.

Walk-In Your Resume

For this type of application procedure, you will want to dress appropriately. You would want to dress just like you would for an interview. Company’s usually ask you to do this if you are going to be working directly with customers. They ask for a walk in because they want to get a look at your grooming habits right away. Sometimes, a walk in will have the employer giving you a brief interview on the spot, to see if they will require a formal interview later. So be on your best and most appropriate behavior.

Also, walk-ins do not require you to bring in a cover letter with your resume. Your appearance is sort of the cover letter. Sometimes, you will be requested to fill out an application form as well. Smile and be polite, no matter who you are talking to. That could be the difference between getting an interview and just taking an extra trip for nothing.

Telephoning for an Interview

It is not particularly common anymore for companies to ask you to call them for an interview. That is usually saved for jobs that include sales and/or jobs that are not so easily applied for by the other methods. Telephoning for an interview is a bit common when a company requires that you be on the phone a lot. It gives them a feel for the quality and the personality of the person on the phone. When making this type of interview request, always speak in a clean and clear manner. Be polite and prepared to answer any questions that may be asked of you. You might approach the telephone interview like this:

“Hello Mr. Brown, I am Mike Sandal. I am calling with regards to your ad in the Post about the clerical position”. If you are asked your experience and/or previous work experience, be prepared to answer quickly and explain how long you have been doing that type of work and give a brief description of your duties.

The correct way to build your resume will be included later on in this manual. It will give you the correct way to format your resume so that it gets noticed for all of the right things.

For more interview tips, visit:
http://www.jobfindcentral.com/interview-tips.htm

Saturday, June 27, 2009

50 commin interview questions

Professionalism
Interviews are like anything else in life, they take practice to perfect. The job market is highly competitive so you should always maintain a high standard of professionalism. This is guaranteed to impress your potential employer, as it will show focus and maturity.

What is Professionalism?
Professionalism is: Presentation, Punctuality and Preparation.
Presentation: Presentation is not just the clothes you wear, but your general presentation during the interview. Dress for success, formal attire is the best option. Look the part and you will be more likely to get it. Body language such as eye contact and how you greet your interviewer are important. Shaking hands is a sign of confidence and respect so is making regular eye contact. Always be polite not just during the interview but to any one you may have contact with in the office or work environment.
Punctuality: Being on time is essential to a successful interview. Give yourself plenty of time to get to your destination, map out a route if you are unsure in any way. Being early gives you time to relax and prepare for your interview. If you are going to be late or unable to attend for any unforeseeable reason call ahead and let them know. This will show them that you are serious and that you take your commitments seriously.
Preparation: Get to know the company you are hoping to work for. A little background information can go a long way. You should research the company well before applying to it. You must be prepared to discuss the industry, the company's relative size within that industry and show that you know who the major players and competitors are.

Frequently Asked Questions
All interview questions are designed to find out your ability to fit-in and contribute to the specific workgroup. Here are some of the most commonly asked questions to help you prepare for your

interview:

Tell us about yourself?
Tell them in detail how your experience would relate to the position you are being interviewed for. Be as detailed as possible about your family background, educational background and previous job experience.

Why are you interested in this position?
Tell your employer why you chose to apply for this position. Explain why you are a perfect match for the position and how you will do full justice to the same. Use relevant examples from your family background, educational background and previous job experience.

What do you know about this company?
You should research the company well before applying to it. You must be prepared to discuss the industry, the company's relative size within that industry and show that you know who the major players and competitors are.

What salary are you drawing?
The question is not difficult to answer – just be honest and give the figure. In all probability, your next employer may base your salary on this amount. However, the problem arises when you feel you are being underpaid in your current organization. You may feel tempted to lie, but do not give in, as checks can be easily made and you may be disqualified. In case you are getting additional perks, incentives or commissions, do not forget to mention them, as they are important while negotiating salary.