Section 2 - About the Job

2.1 - Employer
MTC Technologies is a relatively new presence in Warrenton, Virginia. As a large national defense contracting company based out of Dayton, Ohio, MTC moved into the area when it bought a local IT company called Command Technologies or simply CTI. (MTC Buys Command Technologies)

CTI offered a variety of services and among them was multimedia development. The company does everything from commercial web sites to classified training courses for divisions of the armed forces. The business continues to operate as a subsidiary company to MTC and the Multimedia Development Center (MDC) was the site of my internship. In the time that I worked in the MDC, the office relocated from 578 Waterloo Road, Unit 2A Warrenton, VA 20186 to 408 Belle Air Lane, Warrenton, VA 20186. I logged 40 hours a week, Monday through Friday from 9 to 5.

The MDC group was made up of 15 people lead by Multimedia Director Richard Benedetto. The group is made of of individuals with a broad range of skills from advanced programming to intricate graphics and 3D design. There were also 2 other interns other than myself. I was assigned to a team that was responsible for developing a web application to be discussed later. This team was made up of the project leader Sam Ensogna, the programmer JP McAveney, and a graphics and layout designer Mick Colvin.


JP

Sam

2.2 - My Job
As part of my hiring process, Rich, JP, and Sam assigned me to a project and specified certain tasks for which I would be responsible. The project was to be a database driven web page and web tool using ASP.NET/C# and Microsoft SQL Server for a company called United Recovery Services (URS). URS is an off-site medical claims management company that contracted our multimedia group to develop this web solution.

For confidentiality purposes I will not detail specifics about the tool that was developed, but rather some of the tasks I had in developing that tool.

The page was designed with a complete set of administrator pages that allowed dynamic content from a database. It was my first task to set up this database. I found the experience from my databases course CS474 to be extremely useful for this task. Following a UML diagram that JP created, I created a new database on the Microsoft SQL Server. I created a number of tables to support the website, and for each one these tables I wrote SQL stored procedures to insert, update, and delete. With some initial guidance from JP, I did not find this task to be overly difficult. Following some testing with the query builder, the database was mostly complete.

We based the site on an extensible master-page framework and a 3-Tier architecture. Since I was unfamiliar with these concepts, JP printed out some articles and tutorials for me to look over. (Master-Page Framework) This was an important learning experience for me, and a concept I had to grasp before moving forward with the project. The 3 tiers were a user interface tier, business logic tier, and a data access tier. They are layers used to manage the access to the database in a clear and functional way. The master-page layout is a template to provide a consistent look and feel in the page.

JP set up the base framework for the page. It was then my task to set up each page to fit a predetermined layout. Each aspx page had a ascx page control. The page control is where all the main coding is done. I was required to set up the HTML with ASP controls, HTML tables, etc. Then in the code behind I set up functions and connections to the database via data access and business layer objects. For many instances I used ASP datagrids and datalists. I learned that these controls are very versatile. This was a huge learning experience for me. If I ran into a problem I would either search online for a solution or ask JP. I found that www.google.com was a useful resource. By the end of the internship I felt very confident in using these controls.

In creating all the pages and forms, I have become very comfortable with programming HTML, C#, and the Cascading Style Sheets. I also learned about coding a page to be restrictive to certain users with specific roles. We used the business layer tier for this purpose, and created our own exception class to handle invalid logins. Though I did not get to see the project entirely through to completion, I did feel satisfied by the results of my work.