Interview Questions for SharePoint Developers

Microsoft SharePoint’s value isn’t about ease of development, but empowering users to manage their content effectively. And because it’s so widely used, the skills needed to implement and maintain the platform come at a premium. (SharePoint skills rank No. 7 on Dice’s list of the most difficult tech positions to fill.)

SharePoint 2013One complicating factor is that many job postings seek a “SharePoint Developer/Architect,” even though those are roles with different functions and responsibilities. It’s a common situation that SharePoint professionals face and one you need to prepared for when you walk into an interview.

Sam Sabel, guide of the Dice SharePoint Talent Community, contributed these SharePoint 2010 questions for developers. How you answer them will provide managers with a good indication of your knowledge and experience.

If you were asked to create a custom workflow for SharePoint 2010, what development tool would you use?

  • What most people say: “I would use SharePoint Designer to develop out the workflow.”
  • What you should say: “This depends on the workflow. Factors such as whether it needs to be installed in multiple locations, how it steps through stages and the complexity all determine the tool to use. The most likely tool will either be SharePoint Designer or Visual Studio.”
  • Why you should say it: SharePoint Designer would be preferable because it can be simpler and faster to develop with. However, there are many things it can’t do. If the workflow needs the ability to go back and forth between statuses, called a State Workflow, then developers must use Visual Studio since State Workflows aren’t supported by SharePoint Designer 2010. If the workflow needs to be installed to multiple locations, then again SharePoint Designer won’t do. SharePoint Designer hard-codes GUIDs, which are specific to the particular lists and sites. If the workflow is complex because it requires custom code or has more than 20 steps, then Visual Studio is the tool. Only small and simple workflows are for SharePoint Designer.

How would you integrate a non-Microsoft SQL database with SharePoint 2010?

  • What most people say: “I would develop an ADO.NET or Linq solution to call the data from code. I would either use the data directly in the application, or place it in a SharePoint list.”
  • What you should say: “I would use SharePoint Business Connectivity Services (BCS) and a custom Web service. I would develop a custom Web service on the Microsoft model that was connected to the data sources. Then I would connect this Web service to SharePoint via BCS.”
  • Why you should say it: While an ADO.Net or Linq solution in SharePoint may work, the solution wouldn’t be able to leverage the functionality of SharePoint or SharePoint Search. There would also be a negative performance impact. Also when SharePoint needs to be upgraded or migrated, there would be no guarantee that this solution would continue to function.On the other hand, a Web service would allow SharePoint (and other systems) to leverage the data, and if the Web service is built on the Microsoft model, it will continue to be supported by SharePoint for a few more versions at least. BCS allows data to be accessed as if it were in a SharePoint list, and also allows search to crawl and index the data, effectively expanding SharePoint’s reach to non-Microsoft products. Finally, this model is cloud-friendly.

If you have a bulk upload would you add the data directly to the SharePoint databases?

  • What most people say: “Generally uploading data directly to the target system is the fastest and most efficient approach. If possible, I would upload directly to the SharePoint databases”
  • What you should say: “I would never, ever, ever, ever, ever, ever, ever directly edit a SharePoint database.”
  • Why you should say it: There are many SharePoint databases. They are all complex and have lots of dependencies between tables, many of which aren’t enforced via relationships or other mechanisms. SharePoint works off of these databases and disparate file systems. Some relationships are from these files systems to the database. Overall, it’s a mess. When you edit the database directly, you’re taking your farm in your hands. Beyond that, Microsoft won’t provide support for any SharePoint instance with a database that was directly modified.

You’re developing a custom SharePoint 2010 solution. The solution writes data to a SharePoint list that users may or may not have access to. How would you assure that the application would always work and not throw an error?

  • What most people say: “Set up the list or create a new one that allows everyone to have access to it.”
  • What you should say: “Depending on the situation, I would either access the list having invoked RunWithElevatedPrivileges, or by establishing a SPUserToken to give my code the access it needs, while keeping SharePoint security unaffected.”
  • Why you should say it: Giving users more privileges as a work-around can have effects that are unexpected and unwanted. The more this approach is taken, the greater the danger. A SharePoint developer should rely on SharePoint functionality. The SharePoint Object Model provides two powerful ways to give the code additional rights, without granting users those rights.

Sabel maintains that there are essentially three different roles for SharePoint talent: administrator, developer and architect. He’ll submit similar questions for SharePoint architects in a future article. And he urges companies to treat their SharePoint talent well — because plenty of competitors are ready to lure them away.

Image: Microsoft

Comments

  1. BY dotNear says:

    thanks Susan, at least i have learned some new information about developing.

  2. BY Balaji says:

    Thank you Susan for the useful information…..

  3. BY rand gal says:

    What most people say: Sharepain is the next best thing to sliced bread!

    What you should say: Sharepain is more trouble that it is worth. It is expensive, bloated, and a nightmare to maintain. There are several free and open source alternatives that do a much better job at collaboration and document management.

    Why you should say it: The wintel monopoly is crumbling. Microsoft isn’t the defacto standard in IT any more. Competetiors have much better products, and businesses are beginning to take note. It is time to jump off the M$ gravy train and equip yourself with free and open source alternative technologies such as Linux.

    • BY Samuel Sabel says:

      SharePoint is not for everyone or everything, and as Rand mentions, there are alternatives. However it would not be accurate to say that other solutions do everything better and cheaper than SharePoint. While SharePoint is not a cure-all, it is a very effective tool that is used successfully in hordes of businesses. It has not reached this level of success because of word of mouth. While I am a SharePoint SME I consider myself technology agnostic. Every business and every IT scenario demands different solutions. There is a time and place for Linux, and there is a time and place for Microsoft.

    • BY Bill says:

      Yeah, because Linux solves the business challengs that SharePoint addresses so well…

      As Samuel has said, SharePoint isn’t for everyone. However, open source isn’t for everyone either. You’d be hard pressed to find larger companies, especially financial companies, that would touch open source applications with a 10 foot pole. In addition, these open sources “alternatives” are coded in languages or use frameworks that most large company’s developers are not familiar with. Whether you like it or not, there is a significant .Net developer base to draw from, especially in the larger companies, and SharePoint makes sense iin this aspect. In addition, SharePoint integrates much better with the Windows infrastructure that is prevalent in business in general.

      True – if your IT department is Linux based, you probably won’t choose SharePoint for document management. Conversely, if your IT department is Windows based, you probably WILL pick SharePoint for your document managment needs.

      Finally, this response sounds a bit like sour grapes. You’d be better served spending your time understanding what businesses need, rather than just blindly spewing the anti-Microsoft, pro Linux and Open Source line.

  4. BY SGGS says:

    Good article on how you precise one can be while answering the SharePoint questions… if you have any more on SharePoint questions and answers can you please share? Thank you Susan.

  5. BY bharath says:

    Its really good points where we should take care when we implement some of these feature..

    Thank you so much for sharing with world..Cheers

  6. BY Kuldeep Verma says:

    Great information !!! Really Good post .

  7. BY Shantanu says:

    Thanks a lot.. Very useful information.

  8. BY Srinivas says:

    Thank you Susan for the useful information…..

Post a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>