Caroline Sosebee is a Senior Software Engineer at ThreeWill. She has 30+ years of software development experience and a broad scope of general IT knowledge. At ThreeWill she has a proven track record of quality consultative and software development skills, focusing on the design and implementation of SharePoint solutions, both on-premises and in the Microsoft 365 cloud.
So, you’re just starting out in the world of software development? Or maybe you’ve been at it for a while and are simply ready for a change. Well so was I … and what a great change it’s been!
I didn’t start out my search by saying, “SharePoint Development, I choose you!” In fact, I admit it; I’m a very old-school’ programmer’ who’s been in the business far longer than I’m willing to tell. Fresh out of college, I was a hardcore mainframe COBOL programmer and I was good! I mean, who can’t write straight-line procedural code full of PERFORMs and GO-TO statements?
But many, many years later I had the opportunity to take a job really close to home that I couldn’t pass up, even though it meant going out on a limb and leaving COBOL behind for the much more robust Visual FoxPro world. Yikes! What in the world did I know about that?! Absolutely nothing. In fact, I’d never even heard of it before. But it began my introduction into object-oriented programming, which eventually led me to be able to obtain my current job as a SharePoint Developer with ThreeWill.
Have I mentioned yet that ThreeWill is an amazing place to work?! Talk about a company full of highly intelligent, caring people with overwhelming integrity … I couldn’t have landed in a better spot to make this journey!
Was it an easy transition? No, not really … it was challenging for me. And I’m a pretty good developer with lots of real-world experience and a couple of languages under my belt. Albeit VFP and COBOL are both a far cry from the current SharePoint development world, I make this point to say that if I can do it with my background, you can too. It just might take a little extra effort to get there.
If it was Groundhog Day and I got a do-over, would I do it again? Absolutely!! But there are a few things that I wish I had known before starting this journey, and that’s what I want to share here, hoping it will help you to be a little more prepared than I was to make the jump.
5 Steps to Getting Started with SharePoint Development
Here are the steps I took to get started with SharePoint development:
- Sign up for Microsoft Virtual Academy and use it
- I wish I had known about this a long time ago, even before making this transition.
- This is a free service offered by Microsoft with a ton of great material for all levels of developers across all types of technologies and languages.
- Really – don’t skip this step! It will make your life a TON easier as you’re learning.
- Know the basics of C#
- If you’re fresh out of school, then there’s a good chance you’ve already had some C# (or very similar) training. Understanding the basic structure of how namespaces, classes, and functions tie together will carry you a long way.
- If you’ve never seen it before (like me), get a trial copy of Visual Studio and start playing around with C#. Develop a small application that does something simple.
- Go watch a tutorial or two and do the exercises, as this will really help jump-start the process.
- C# Programming Guide – https://msdn.microsoft.com/en-us/library/67ef8sbd.aspx
- Know the basics of HTML and CSS
- This is a pretty easy one actually, even if you’ve never looked under the hood of a web page. You won’t become an expert immediately as there’s still a lot to learn here, but it’s pretty straightforward once you start looking.
- Get a couple of CSS and HTML reference books that can help you with the syntax.
- HTML & CSS Tutorial – http://learn.shayhowe.com/html-css/
- Understand the difference between client-side and server-side code
- This was a BIG gap for me. And yes, I still struggle with it sometimes.
- Take the time to read up on web application architecture and try to get a basic grasp of it. Understanding where each kind of code runs and how they talk to each other (or don’t) is extremely important. I can’t emphasize this enough!
- ASP.NET Page Life Cycle Overview – https://msdn.microsoft.com/en-us/library/ms178472(v=vs.100).aspx
- Lastly, start learning about SharePoint itself
- Yes, this is last because if you have a good grasp on all the other stuff, you can learn how to develop in SharePoint.
- Be sure to get a SharePoint book or use some of the plethoras of online materials available and start learning the basics.
- Create your own VM and install SharePoint. You can get 3-6 month trials of almost everything you need to run it and there’s a great setup guide put out by Critical Path Training that will walk you through all the steps to get your new SharePoint VM up and running.
This, of course, is just the tip of the iceberg as there’s a ton of other stuff you will need to know and learn. Much of it, as with all things, will come with the real-world experience of doing it. But if you can get a handle on some of these basics beforehand, you’ll be in a good position to become a SharePoint Developer yourself – especially if you can find a nurturing company that encourages learning and personal growth like I did here at ThreeWill.
4 Comments
dannyryan
Thanks for sharing Caroline! Here's another resource that should be helpful for learning C#, more about Azure, and the Microsoft 365 APIs - http://microsoft-news.com/microsoft-is-releasing-their-development-courses-on-edx/.
Kirk Liemohn
Thanks for sharing your valuable perspective, Caroline!
Dorota Chmiel
Hello !
I'm from Poland with 20+ years of software development experience, too.
My way was similar COBOL, Clipper, DBASE, all version of FoxPro, now ASP.net, C# and last 5 years Sharepoint.
I have been working as developer all the time after graduation.
It is possible and not so difficult.
With best regards
Dorota
Juliana Bryant
That was really a good experience sharing with lots of diversity, really impressive and ofcourse thanks for informing us about 5 Steps to Getting Started with SharePoint Development.