Welcome to the Spotlight Behind SQL Server, a new series from SQLServerCentral.com. As we've grown and spent more time covering SQL Server, we've slowly gained a number of contacts inside Microsoft, including those that develop the product. And we decided to try and interview the SQL Server people inside Microsoft. There are lots of people working on SQL Server 2005 and our goal to is to eventually get to them all.
We know that there are lots of technical things we could ask, and lots of easy marketing questions we could get from them, but you probably read most of those questions elsewhere. So we thought we'd make them think a bit more and get some interviews that showcased the people behind SQL Server. To that end, these interviews will be a little bit different and give you a look at the amazing team that builds SQL Server.
We caught up with Sameer Tejani and had the chance to talk about some of the SQL Server internals among other things.
SSC : What's your official title and responsibility at Microsoft?
Sameer : I am a Software Development Lead in the SQL Server Engine Security Team. My team works on all the DB Engine related security features dealing with authentication, authorization, auditing, encryption, etc.
SSC : What part of SQL Server 2005 did you really enjoy working on?
Sameer : Working on SQLOS was a lot of fun, since we designed a lot of the stuff from ground up, combined all the OS Layer dependencies into one place that could be tested independently of the rest of SQL Server. It was really cool trying to make a lot of the options in SQL 2000 become dynamic like affinity, node partitioning, etc. I have been working in Security for about a year now, and it is a totally different ball game compared to SQLOS. Just by interacting with the security guys, they have a different (and scary) mindset.
SSC : What was your favorite job with SQL Server (over the last 10 years)?
Sameer : Working on thread scheduling starting with UMS in SQL 2000 and continuing with the SOS framework in SQL 2005.
SSC : What's the most interesting new feature that a user suggested?
Sameer : The Dedicated Admin connection came from feedback from our Customer Support Services (CSS) and by SQL 2000 users who were trying to resolve problems but couldn't connect to the server. So we had to figure out how to allow such functionality. And this was factored into the SOS design early in the release cycle.
SSC : Is there anything you think DBAs should know that might make their jobs much easier?
Sameer : Learning about the new DMV's can help DBA's keep track of how the system is running. I also recommend maintaining a history of some DMV tables this way one can go back in time to figure out possible issues that caused a certain error. We made use of DMV history as a sort of flight recorder during the beta cycles of SQL 2005 to help diagnose issues and it turned out to be very helpful. Some things we uncovered were some badly written queries that were taking too many locks or transactions being held too long, some of the things I imagine DBA's have to deal with everyday.
Also understanding how SQL has been developed helps one configure it correctly especially when you have multiple applications running with SQL.
SSC : Do you think that it is important for DBAs to understand how the internal storage engine works?
Sameer : To a certain extent, I guess just the same way you need to know about how your car runs. For example, knowing how SQL schedules tasks, will help a DBA understand how to configure their server, how to consolidate multiple workloads on a single box, etc.
SSC : Where did you go to college?
Sameer : I did my Bachelor's at City College of New York (part of CUNY) and my Masters at University of Pennsylvania.
SSC : How much coding do you do in relation to the design work ?
Sameer : In SQL 2005, we spent the first 1 1/2 years just working on design and some prototyping. After that it was more of 25% design and 75% coding. I haven't done a lot of coding since last year, but have mainly been involved in design reviews. Hopefully that will change soon! J
SSC : What type of research do you use to develop new features in the storage engine?
Sameer : A lot of it is based on feedback from users. It is amazing the amount of feedback we get from the forums. Our users also include ISV's who make feature requests that can make their apps better. The market also dictates what is needed out there or we need to support the latest hardware or OS features.
SSC : How long have you been working on SQL Server?
Sameer : 10+ years across different components in the SQL engine, from Statement execution framework (my first stint in SQL), connection management, Open Data Services (ODS), User Mode Scheduler (UMS), SQLOS and now Security.
SSC : Give us a little background on yourself, how did you get into computers?
Sameer : It's weird, when I was a kid growing up in Tanzania, I always wanted to be a pilot, like every other kid. One day I read a book (from the 1970's) about computers and it got me interested. My Dad who used to work at a Farmers' coop, showed me around their computer room, which had a bunch of huge mainframes. That really got me started and I bugged my parents to get me a computer. I was able to eventually get a PC-XT with 512KB RAM and an colored monochrome monitor which I used to write programs in BASIC! After high school, I ended up studying for my Bachelor's and Master's degree in the US and the rest they say is history!
SSC : Any early programming projects that you really enjoyed or were proud of?
Sameer : For one of my graduate computer theory classes, we had to programatically verify if a (context-free) language input obeyed a particular (context-free) grammar basically you can think of it as does the input make sense given the rules of the language. A similar check is done when parsing SQL statements. A lot of us struggled to get it working for the sample languages provided. I really didn't like computer theory classes, but this was one of them where I put in a lot of effort since I could see how it applied practically to a computer problem.
Another project was in my database class where we worked on an Object Database. It was very different from relational databases and all the querying for it had to be done in C++.
SSC : Did you see yourself as a programmer/developer when you were growing up?
Sameer : Definitely, once I got the virus! I always wanted to be working on the hard parts of the code, working on server products. In college, I enjoyed working on the programming projects (more than the theoretical stuff!).
SSC : How do you like living in Redmond?
Sameer : It's really nice here. I spent my education years on the East Coast and when I came to Redmond for an internship, I fell in love with the area. There is so much to do outdoors here. So when Microsoft made me an offer to come and work full time, I grabbed the opportunity.
SSC : Who's the most fun to work with at Microsoft?
Sameer : Everyone! The people here are very talented and have a lot of experience. There is always an opportunity to learn from someone and most them are willing to sit down with you and help out in any way they can. Also the leadership in the SQL team is very open - it's not very often where you can just shoot an e-mail to a GM or VP to express your opinion and get a response back (and the response is not a standard form response!)
SSC : We've all heard stories of some characters at Microsoft. Any interesting ones that stunned you or surprised you when you first went to work in Redmond?
Sameer : Haha! You want to get me into trouble now don't you? One that comes to mind is this guy who when you saw him for the first time, it didn't look like he worked at MS yet he was leading a pretty big team and had answers to everything! His style of communication is very unique and is quite helpful. He still looks the same and has the same effect on people.
SSC : What's your current favorite tech gadget?
Sameer : I am currently looking into getting a T-Mobile Dash (HTC Excalibur) to stay even more connected. I would like to hook it up with a GPS receiver. I will let you know how that goes! On the other hand, I don't know if it is such a good idea to be so connected!
SSC : What does Sameer like to do when he's not working on SQL Server?
Sameer : I usually play volleyball on the weekends and try to hit the gym a few times a week, where I enjoy indoor cycling (spinning) it's really a good workout. It's kind of difficult biking here during the winter, so I do most of my long bike rides in the summer. Given the wealth of hiking trails here in the Northwest, I usually try to make the most of summer weekends spending time outdoors!
I also like to travel with my wife, Farhat, whenever I can squeeze in some long' vacation from work. We normally create a loose itinerary (no fixed dates), a Lonely Planet guide and a backpack so that we can make the most of ground transportation through a country. It's interesting the people you bump meet and interact with!
SSC : What's your favorite position: server, set, or spike?
Sameer : We play a version of Nine-man volleyball so we do not rotate positions as in regular volleyball. I play next to the net and return the balls that are hit into the net.
SSC : Favorite place to backpack?
Sameer : Anywhere in Tanzania! But in Washington, my favorite place to hike is in the Olympic National Forest.