SharePoint isn’t a tool you can install and forget about. It requires a certain degree of knowledge for proper implementation.
Technically SharePoint is a server running on top of Windows Server using SQL Server. SharePoint has to be integrated in an existing customers environment composed of Active Directory, Exchange Server or ISA Server just to name a few. There are a lot of infrastructural challenges you have to consider before even starting to implement one line of code.
A SharePoint solution running on your own staging server doesn’t need to run on the customers’ production server. E.g. implementing alternate access mappings for internal and external access has to be respected during implementation. As a project manager as well as a developer you need to take care of such important issues and therefore a SharePoint developer needs a recreation of the customer’s environment. The recreation should be as close as possible in order to previously encounter difficulties in your implementation. But how do you achieve it?
1. Who creates the development environment?
2. Where do you create the development environment? Are you going to use a local or remote environment?
On the one hand a SharePoint developer is usually a former .NET developer and doesn’t have the infrastructure background needed. On the other hand IT support of your company may have different things to do or they don’t have the resources to recreate the customer’s infrastructure. Although there are different possibilities fitting the varying needs of IT service providers there is one solution you should consider:
A developer can be trained to get knowledge about infrastructure so he knows what goes around in the background when he implements a solution. He can solve small problems by himself without waiting for IT support saving you time and money. In addition to that an infrastructure expert specialized in SQL Server, Active Directory and Firewalls will be a huge benefit to your team. He is independent of IT support and can go to your customers analyzing their environment, supporting them or even can install SharePoint. Of course you need a certain amount of projects to fully occupy him. But with this setup your developers will do what they are experienced in and you can better advice your customer regarding infrastructural problems.
You need to remember that the decision to user SharePoint is often a strategic decision made by the management. If it’s not driven by the IT department it often lacks the required knowledge.