I’ve recently had a good short conversation with a senior developer, having worked more than 5 years in SharePoint platform. He shared with me that he found SharePoint really challenging and really wanted to master it. It’s pretty difficult for him to have deep understanding about SharePoint plus update about this emerging technology. He came to ask me my idea on what to do next to step up his experience in SharePoint development.

What I’ve been realizing so far when approaching customers globally from Singapore, Japan to USA is that they tend to move to the cloud, namely SharePoint Online and leverage serverless solution. Even they have SharePoint On-premises, they still require client-side development. One of the big projects for a corporation in Japan I get involved for premier support is on the one transiting IBM Lotus Notes to SharePoint 2013 On-premises. Ironically they force us to use client-side technologies for all applications against the application re-development. A few projects for USA customers I involved also wish the same things, and with Azure integration. I don’t know whether IT executives or Microsoft consultant guys drive that way. From the past two years experience, client-side technologies and cloud adoption seem to be the keyword. Note that this is not SharePoint with Azure IaaS. This is SharePoint connecting to consume Azure PaaS services.

You would be interested in exploring preventive action in SharePoint Online release to your customization here 

Below is the sample architecture for a case I involved last month. In this case, all activities in SharePoint Online need to be captured (e.g site usage, document usage, auditing…). These activities are written to Azure Blob Storage. Azure Function is involved to move captured logs over to Azure SQL Database. And there is a custom ASP.NET application is built to provide usage report to customer.

If you are following Microsoft SharePoint, you probably know that Microsoft has vastly invested into SharePoint Online and Office 365. New features and capabilities delivered to SharePoint Server in an on-premises are only through Feature Pack, which means SharePoint Server 2016 is the latest on-premises version as of this article. With this happening, mastering SharePoint seems not to make sense anymore. Of course, the market for SharePoint server-side code is still there, but is going to be curtailed. Several of my SharePoint developer friends are fairly afraid of their future and are starting learning some of the renowned JavaScript libraries that are recommended for SharePoint such as Node.js, Knockout.js, AngularJS. Of course PnP JS Core library must be counted in.

If someone asks me what to go next, I’d highly recommend him to grab JavaScript skills to develop function in SharePoint Online and Office 365. Look into the recent SharePoint Framework (SPFx) to predict Microsoft strategy. You would possibly realize how extremely open and extensible framework is. You can write an add-in in SharePoint Online using non-Microsoft stack (e.g. PHP, Java…). Moreover, learning JavaScript is not enough as always, you need more than that. I’d recommend to learn some of Azure PaaS services such as Azure App Service, Azure SQL Database, Azure Storage, Azure Function and Azure Active Directory. These are very common services people tend to chose to work with SharePoint Online and Office 365. These stuffs are also what I’m seeing from real-world projects for USA based customers.

Microsoft also is investing into a few new services including Microsoft Flow and PowerApps which are well integrated with SharePoint Online. These services are not part of SharePoint Online but if you have a look into what it is providing, you would have your own answer about how things are going on.

Below are from Microsoft I bookmark to read new updates & Microsoft idea:

And once again, mastering SharePoint seems not to make sense anymore!