Kevin's Home Page
Welcome to my
quaint "e-porch" on
the great, big internet!
(Nice to meet ya! -->)
Kevin's Home Page: ExperienceOverview • Experience • Teaching • Consulting • Certifications
Academics • Portfolio • Open Source • Contact Me
Rowan University, Glassboro, NJ
Adjunct Professor of Computer Science
I teach all levels of programming classes, generally to 20+ students using Java and C++. I generally focus on classes related to data structures.
Gloucester County College, Sewell, NJ
Adjunct Professor of Computer Science
I teach all levels of programming classes, generally to 20+ students using Visual Basic.Net, PHP/MySQL, C++ or C as the platform. Classes include introductory programming, web/database integration, object oriented programming and C. See my teaching section for more information.
Independent Web Developer/Webmaster
I've worn a number of hats as a webmaster including a backend developer, systems administrator, database analyst and user interface designer. I administer my own dedicated server (with the Linux shell -- not a control panel) that sits in Atlanta, GA running Apache, mod_perl, MySQL and systems security monitoring. I've also developed under that environment and managed to tune Perl code down from 400ms (per call) CGI apps to a sub 18ms mod_perl speed demon through profiling the code and restructuring the database.
University of Pennsylvania, Philadelphia, PA
Senior Systems Integrator, Penn Medicine Academic Computing (PMACS)
I am part of the Windows system administration team tasked with supporting Windows users, computers, groups, applications and servers for the School of Medicine. Included in these duties is administering AD, the KACE helpdesk appliance and the CrashPlan service. My primary goal is to automate as much of the work as possible and, to that end, have created the PMACS Operations Portal (POP) for automated processing of requests. More information on POP can be found elsewhere on the site.
Biomedical Informatics Facility, School of Medicine
Senior Programmer/Analyst, Biomedical Informatics Facility, School of Medicine
Generally speaking, I am responsible for all data integration activities between the group I'm in and all the groups we support. This entails running a SeeBeyond/e*Gate Windows-based server to receive realtime data (IDX, Cerner Millenium and EPIC) from the hospital. The data for which we have customer needs is captured into a local database I setup (MySQL) and then periodically sent to their databases (Oracle and MySQL) using scripts I wrote in Perl. The data is also available via web services I programmed in Perl, which use strong authentication and encryption (RSA public key and AES private key). System monitoring scripts watch the server and can take basic remedial action. I built several C# (.Net based) applications for smaller tasks in need of automation including interfacing to a barcode printer and a desktop app to suggest annotations for lab tests based on past results. I was the sole programmer on two web-based clinical data applications (Java/Oracle based) that are expected to result in published papers. I wrote several reports about how various technologies could improve or affect our current software development processes. I have also been acting a project manager / point of contact for customer applications -- sitting down with them to learn about their projects, setting expectations on the process and then delivering the solution on time.
Programmer/Analyst, Biomedical Informatics Facility, School of Medicine
I built several HIPAA compliant, web-based clincal data collection and processing applications using Java under a Tomcat/Struts environment. I then lead a project that involved taking lab data out of a proprietary database format, importing it into Oracle and building an interface so users could manipulate the data on the web. I coordinated the installation of a real-time HL7 fomatted datafeed from the hospital and the subsequent processing of the data. This involved the use of the SeeBeyond/e*Gate suite of applications and Perl. I also became involved in specifying hardware for a variety of projects including a large Linux file server, barcode printers/readers for an inventory sytem and a small network of machines for security research. I was promoted to the title of Senior Programmer/Analyst in August '06.
Research Programmer, Department of Computer and Information
Science, School of Engineering and Applied Sciences
Selectable Confidentiality Using WSEmail, June 2005
WSEmail: Secure Internet Messaging Based on Web Services, (with experimental data), to appear in ICWS '05
Internet Messaging as a Family of Web Services (Poster Session), December 2004
WSEmail: Secure Internet Messaging Based on Web Services, (with application emphasis) April 2004
Computer Support Intern
I was responsible for resolving technical problems for users of Macs, PCs and related hardware from all over the museum. Additionally, I took the initiative to create a hardware/software inventory application in Access to keep track of our assets and licenses. I also doubled as a systems administrator responsible for Linux servers doing everything from filesharing, firewalling and providing data feeds to the exhibits. One of my supervisors asked me to come join his team after he changed employers because we had worked so well together.