For my midterm I interviewed Emmanuel Kenabantu, a SharePoint engineer at OSIBeyond, LLC, an IT consulting firm that primarily works with non-profit organizations. He works remotely as a SharePoint consultant on various development projects for their clients. It is a web-based, collaborative platform that integrates well with Microsoft Office. It is a relatively new technology that is sold as a document management and storage system, but the product is highly configurable and usage varies substantially between organizations.
Q: Describe your project and the guidelines given to create it.
A: Our assigned project was to design a SharePoint web application to allow external and internal users the ability to review and electronically sign documents. The client was using SharePoint 2010 to run their intranet site and wanted to leverage and design an extranet site to allowed them to collaborate with other partners on various projects. The entire review and approval process would be automated and tracked for auditing purposes. The instructions for the development of the platform are bulleted below:
- The customer should be able to fill out a form and submit it.
- A workflow would be triggered and notifications would be sent to a reviewer.
- Once the reviewer verifies and approves the data in the form, an email notification would be sent to their partners (external users).
- The external users would review the details in the form and provide a consensus.
- One designated external user would submit the consensus.
- The system will notify the clients about the consensus and generate a PDF document of the form.
- The system would automatically start the electronic signature collection process.
- Once the document is signed by both the clients and partners, it is archived and permissions are set to read-only.
Q: What approach did you take the design the application? What languages did you use?
A: We designed the asp.net (an open-source server side web application framework), and some of the functionalities of the program were written with the programming language C Sharp (C#), a server-side language. We also used Javascript and jQuery to build the functionality behind the form.
Q: How long did the project take to complete overall?
A: Since we are working with a small team, the project only had 2 members – the project manager was in charge of interacting with the customers using the program as well as gathering requirements, and I was the application architecture manager in charge of design, coding and testing the final form.
Q: What were some of the greatest challenges you faced in creating the program and working with other team members to craft the final product?
A: The greatest challenge has been designing a system that supported different types of browsers, such as Google Chrome, Firefox, Safari, Internet Explorer, Opera, etc. This challenge was due to the fact that we could not control which browser external users would be using to access, and interact with, our system as well as figuring out ways to work around the SharePoint browser limitations. We had to test our final form against all potential browsers and make sure that all browser-specific issues were resolved before presenting our final product to the clients that would be using it.
Q: What were some lessons or takeaways you learned in the creation of this project?
A: One of the greatest lessons we learned was to always take into account user behaviors. It is important to do several runs of testing with our customers that will be using the system, rather than just testing with our internal sources. Learning this throughout the process helped us design a more user-friendly interface with features that increased usability and accessibility for our clients and users of the program.
Q: How does this project contribute to both your overall career and to your industry as a whole?
A: As a SharePoint engineer, I am consistently looking for ways to better the experience of my clients and users of the interface by making things more efficient and user-friendly. My job is to identify customer needs from a technological design standpoint, and use my knowledge of coding and web design to meet their needs. In designing this project in particular (and other similar SharePoint forms like it), I can eliminate repeating steps by simply designing a program that takes all of the guesswork out of repeating form submissions and working on projects collaboratively. This kind of problem solving and shared work is especially good for the non-profits we work with because it helps business run more smoothly and efficiently, and housing a variety of forms and projects together in one place allows users to access them remotely, even on their mobile or tablet devices. This content management system (CMS) is a great way for non-profits to manage their documents with a program that provides functionality that greatly outweighs its cost.