Welcome
Welcome to my website! This is my little space on the web where I like to publish things that interest me, from photos, to tech things, and even some complaining. :) If you're so inclined, you can also follow me on:
School
I completed my bachelors degree in Information Technology with a Theology minor at Mount Aloysius College from 2002-2005. During that time I was a member of Vox Nova, a small choir specializing in music from the Baroque and Renaissance periods. Since then I have earned two master of science degrees in Information Technology Project Management and Information Security and Assurance from Robert Morris University.
In the Fall of 2011 I began my Doctor of Science in Information Systems and Communications at Robert Morris University. In the Spring of 2012 I successfully passed the qualifier and in the Spring of 2013 I successfully defended my dissertation proposal. I am on track for graduating in the Spring of 2014!
Work
My entry into the corporate world started when I was a sophomore in high school. I had a co-op at CTC in Johnstown. Once I graduated high school, I switched from a co-op to an intern. Through my three years of college I remained an intern. In May of 2005 I graduated college and CTC brought me on as a full time Technical Systems Integrator. I continued working at CTC for the next year and a half. My duties included Linux and Windows workstation/server administration, Active Directory administration, and much, much more.
In November of 2006 I took a Software Engineer position at Northrop Grumman. I have created various web-based and fat applications utilizing such languages as C++, C#, HTML, Javascript, PHP, and VB.Net and using various technologies such as Microsoft SQL, MySQL, and Jena (Semantic DB) upon both Microsoft and Linux platforms. Other job duties include Linux administration and network design.
Starting in January 2013 I began teaching full-time at Pennsylvania Highlands Community College as the lead Computer Science instructor. In addition to teaching, I also am a part-time Senior Systems Engineer at Precision Business Solutions where I maintain the Linux server and cloud infrastructure, perform network design/redesign, and all other server/network related activities.
Teaching
In the Fall of 2007, I took an adjunct professor position at Mount Aloysius College teaching Computer Science. A couple years later, in the Fall of 2009, I took an additional adjunct professor position at Pennsylvania Highlands Community College teaching Computer and Information Technology. As of January 2013 I am full-time at Pennsylvania Highlands Community College while maintaining adjunct status at Mount Aloysius College.
Mount Aloysius College
- CS206B - Database Management Systems
- Semester(s): FA07, FA09
- Description: Previously taught using Oracle, I designed the class from scratch using open source solutions. This class introduced students to database concepts using MySQL as the relational database management system (RDBMS). CS206B also introduced students to the PHP programming language to extract data and produce useful, web delivered, reports.
- CS225 - Current Microcomputer Systems
- Semester(s): SP10
- Description: The focus of CS225 is to acquaint students to current computer systems at a hardware level. By the end of the course, students are able to build, configure, upgrade, and debug computer hardware. Other, prerequisite, topics such as the details of electrical power and the low level workings of digital audio are also covered.
- CS229 - Introduction to Linux
- Semester(s): FA08, FA10
- Description: This course gives students a solid foundation in Linux from the boot process, filesystems, processes and services, and using a Linux host via the command line. All methods taught are distribution agnostic and focus on non-GUI use.
- CS305 - Logic and Structured Design
- Semester(s): FA11, FA13
- Description: This is an in-depth course covering programming logic, processor design, memory segmentation, assembler, machine language, and pseudocode.
- CS306 - Database Design
- Semester(s): SP08
- Description: This class, unlike CS206B, is mostly the theory of proper database design. It focuses on how to plan a database, create your ER diagram, and convert that into a working database. CS306 also goes into the processes and procedures of the Database Lifecycle.
- CS310 - Computer Security, Ethics, and Fraud
- Semester(s): FA12
- Description: This course discusses computer security vulnerability and computer-related legal and ethical issues. Topics include copyrighted software, security practices, and accessing personnel and medical information.
- CS328 - Client/Server Operating Systems
- Semester(s): SP11, SP13
- Description: Topics include introduction to client/server networking concepts, installation and configuration of Windows-based network system software (DHCP, DNS, IIS, etc.), advanced file systems (DFS, etc.), network user accounts (Active Directory), and network administration issues.
- CS404 - Advanced Concepts in Programming
- Semester(s): FA12
- Description: With mobile development taking off, CS404 exposes students to creating mobile applications. The primary languages are Java for Android and Visual C# for Windows Mobile. Objective C is also explored for writing applications for iOS devices.
- CS420 - Advanced Networking
- Semester(s): SP09
- Description: CS420 is usually the most advanced course IT students take during their bachelors degree. This course goes into great detail with TCP/IP, switching, routing, and the services that allow the Internet to function, such as DNS, DHCP, etc.
- CS481 - Special Computer Topics: Cyber Security
- Semester(s): SP12
- Description: CS481 is a new course I designed to teach students both the offensive and defensive side of cyber security. Students learn defense-in-depth methodologies and get into the mindset of an attacker, including APT techniques. Then, students learn offensive techniques to counter the defensive techniques and learn how attackers compromise systems and execute their mission.
Pennsylvania Highlands Community College
- CIT100 - Microcomputer Applications
- Semester(s): FA09
- Description: This is a hands on course which introduces the student to microcomputer software packages including Windows, word processing, spreadsheets, and presentations. Microsoft Office is the suite used to accomplish these tasks.
- CIT165 - Hardware Components
- Semester(s): SP10, SP13
- Description: The focus of CIT165 is to acquaint students to current computer systems at a hardware level. By the end of the course, students are able to build, configure, upgrade, and debug computer hardware. Other, prerequisite, topics such as the details of electrical power and the low level workings of digital audio are also covered.
- CIT166 - Programming with Visual Basic
- Semester(s): FA10, FA12, FA13
- Description: CIT166 introduces the student to modern programming concepts from the ground level. The basics, such as variables, input/output, file handling, etc. are covered. The course also focus on integrating base programming knowledge with GUI design for simple, user-friendly applications.
- CIT172 - Operating Systems & Administration
- Semester(s): FA11, SP13
- Description: This course introduces students to desktop operating systems, using Windows 7 as an example. Students will learn to install, configure, and manage desktop operating systems as well as encounter hardware, software, and troubleshooting issues. This course prepares students for certification.
- CIT232 - Web Server Design
- Semester(s): SP11, SP13
- Description: This course will provide the student with the ability to create a web server using Microsoft's Internet Information Server (IIS) software in a Windows environment, and Apache in a Linux environment. Students will learn to design, implement, configure, and maintain a web server as well as the core network services that ensure proper web server deployment and use.
- CIT236 - TCP/IP
- Semester(s): FA13
- Description: This course is designed to provide the student with a working knowledge of TCP/IP for purposes of internetworking. In this course the student will explore the history of TCP/IP as well as the functionality of the TCP/IP protocol suite, TCP/IP internetworking, and managing TCP/IP.
- CIT280 - Network Troubleshooting
- Semester(s): SP13
- Description: CIT280 provides students with an array of troubleshooting techniques for standalone and networked scenarios. Students explore troubleshooting techniques appropriate to the server, node, and network environment as well as learning how to systematically locate the problem and how to correct it.
- CIT290 - Network Admin Internship
- Semester(s): FA12
- Description: CIT290 is less of a class and more of an advising role for the instructor to ensure that students are gaining experience in their field of study while keeping in mind where they started in regards to knowledge, where they finished, and reflection on their strengths, weaknesses, and overall experience.
- CSC101 - Introduction to Computer Science
- Semester(s): FA13
- Description: This course provides an introduction to the field of computer science. Topics to be covered include: basics of computer architecture and organization, digital logic and data representation, algorithm analysis and design, programming languages, and software engineering.
- CIT125 - Introduction to Programming
- Semester(s): FA13
- Description: This course introduces the student to the process of creating algorithms for the solution of problems using a computer. Concepts, including variables, assignment statements, conditionals, loops, functions, and arrays are explored.