Online Assessment Platform


Technologies Used:

  • C#
  • SQL
  • XML
  • XSD
  • XSLT
  • WCF
  • Windows Services
  • SSRS
  • CLR Triggers
  • Team Foundation Server
  • AJAX
  • NUnit

Worked with a team of five to develop and maintain enterprise applications, utilizing .NET technologies.

Designed, implemented and tested a production server application used to expedite all incoming assessments submitted by online applicants. Service oriented architecture was employed to create a vastly decoupled solution. A CLR trigger was used, as an alternative to polling the database, to make the application less intrusive and increase performance. A Singleton pattern was used to maintain a shared queue of erred documents. This allowed for fast and easy access when making redundant checks against the database.

Designed and implemented a common framework for automating business operations, across multiple servers, utilizing windows services, C# and .NET 3.0 Windows Communication Foundation (WCF). Command objects were used to provide a common interface that could be routed through a generic controller. This “late bound” approach allowed for low coupling while maintaining maximum flexibility. This was responsible for executing many of the tools required during our data conversion period (Stated below).

Designed the new SQL 2005 database used to warehouse all assessment specific data in 4th normal form (4NF). Primary/Foreign key relationships, SQL transactions, unique key constraints and indexing were used to maintain data integrity as-well-as provide a structured and optimized database design. Stored procedures and views provided a practical method of enhancing reusability and system performance.

Designed, implemented, maintained and tested several ASP.NET production web applications. Forms authentication was used in most cases to authenticate users. Session and View State objects were used for persisting state between post backs. AJAX helped to minimize data transfer as-well-as maximize the user experience. .NET master pages and custom user controls simplified the user interface design and maximized productivity. Utilization of cascading style sheets enabled easy modifications to the look and feel of the application, while resource files provided an effective means of displaying content in multiple languages.

Designed, implemented and tested a software solution used internally by our research department. This allowed researchers to mine through internal data and generate reports based on user defined pivot information. XSD objects were used to allow for a more flexible design and provide a structured and easy method of modifying user functionality. Background workers were utilized to provide a multi-threaded environment, which permitted time consuming functionality to be executed while maintaining a rich user experience. Interfaces and polymorphism created a flexible, scalable and maintainable application while minimizing repetitive code. NUnit was used for unit testing and verification of requirement completeness.

Designed, implemented and tested many utilities as-well-as co-implemented a multi-tiered distributed application used to manage workflow queues. This server application was written in C# and utilized COM+, ADO.NET and SQL transactions to quickly access and store data. A factory design pattern helped to facilitate an organized method of communication within the data access tier. NUnit was used for unit and integration testing to ensure requirement completeness.