Last week a client asked if it was possible to create a WebPart that had similar functionality of Linkedin. Being someone that likes a challenge I said sure! I asked for a day of time to build something similiar – less the email functionality of Linkedin – I would build two Web Parts;
  • WebPart One – captures and displays staff , their skills and allows the user to add them to their personal network
  • WebPart Two – displays a users personal network (My Network) of contacts and their skills
From a design perspective, I utilized a simple SQL database with tables for skills, focus areas and projects. For resume and other skills and contact information, I utlized a link to the users My Site Shared view. In the Shared view I added a resume, contact information, a picture and sample knowledge briefs.
 
In VS.Net I created a custom control with several panels for displaying basic user information (Name, Email and link to profile) from the SharePoint profile database. There is also an option for selecting the person and adding them to the users "My Network" WebPart (A list of top contacts). Other panels included the following:
  • Experience detail – datagrids that lists skill sets, focus areas and projects
  • Skills enter form – table and controls for data entry.
  • Focus Areas enter form – table and controls for data entry.
  • Project enter form – table and controls for data entry.

The other custom control displayed the users selected network contacts using a simple datagrid and lookup table.

Web Part placemeny within the Portal is as follows:

  • My Network – added this to the users My Site
  • Main Web Part – added to an area called "Skills Network" under a corporate area

I was able to build and test the Web Parts within 6 hours over a few coffees…the demo of the Web Part (I call MindShare) was well recieved. I explained that with further development, you could integrate more features that are found in Linkedin.

On a side note, I plan on investing more time in developing the Web Part for my demo kit.

Advertisements