Craig Knudsen
13608 Perimeter Drive // Fredericksburg, VA 22407
craig@k5n.us

SUMMARY

Software engineer with 16 years experience designing and developing with Java, C, PHP, JSP, ASP, Perl and XHTML/JavaScript in both UNIX/Linux and Windows environments. Projects have included database-driven web applications, client/server systems, XML/SOAP-based web services, reusable toolsets, and GUI applications. Skillful, accurate, creative and efficient problem solver experienced in software development, software development management, software configuration management, system administration and customer interaction.

SKILLS

Java, JSP, PHP, ASP, C, Perl, JavaScript, VBScript, XHTML/CSS, XML, XML Schema, SOAP, JDBC, JFC/Swing, X/Motif, GTK+
Apache, Tomcat, BEA WebLogic, Oracle, MySQL, PostgreSQL, IBM DB2
CVS, Perforce, Subversion, PVCS, Clearcase, SCCS, RCS

EDUCATION

B.S.E.E., University of Virginia, Charlottesville, VA, 1990

CLEARANCE

DoD Top Secret/SCI - May 2005

EXPERIENCE

June 2003 - Present: McDonald Bradley, Inc., Herndon, Virginia
Software Engineer IV: Developed portlets for use in Horizontal Fusion MARS portal in a BEA WebLogic environment. Converted JSP applications to JSR-168 portlets for use in BEA WebLogic server. Developed regular expression-based HTML parser for deriving missing meta tags needed for document categorization and Swing-based GUI management interface. Developed C++-based search toolbar plugin for MS Internet Explorer.


August 2002 – June 2003: KitKut, Inc, Chantilly, Virginia
Senior Developer: Developed Web Service API for UNIX/C legacy financial application utilizing XML, SOAP and Apache. Developed automated testing tools in Perl. Created automated process for generating API documentation directly from source code. Setup and managed CM process with CVS.


November 2001 – July 2002: Datanamics, Inc., Oxon Hill, Maryland
Senior Developer: Assisted in the design and development of a Silverstream-based procurement application for the IRS using Java, JDBC, Oracle stored procedures and PVCS in a CMM Level 2 development environment. Documented system functionality in UML with Rational Rose.


March 2001 – October 2001: Fab Gear Interactive, Alexandria, Virginia
Senior Web Developer: Developed custom web-based applications using Java Servlets, JSP, WebMacro, JavaScript, PHP, Oracle, DB2, and MySQL for a wide range of customers including realtors, pharmaceutical companies and local retailers.


November 1997 – January 2001 : ePresence, Inc., Red Bank, New Jersey (Telecommuted full-time from Fairfax, Virginia)
Senior Developer: Developed web applications using C, Java, JavaScript, PHP, ASP/VBScript and Perl/DBI including: Online intranet workflow system using ASP, VBScript, Oracle and Java-based ASP Components; Online educational courses and exams using SilverStream Application Server and Java Servlets; Online recipe system using Netscape Application Server (Kiva) and Oracle; Electronic timecard system using Perl/DBI and Oracle; Intranet task management tool using Perl/DBI and Oracle; Interactive Java applets including a dynamic organizational chart


November 1996 – November 1997 : Community Networks, Inc., Fairfax, Virginia
Senior Software Engineer: Served as lead engineer for development of consumer web application using LiveWire, Java and JavaScript. Developed Java applets with Netscape's IFC GUI toolkit. Developed server-side applications using Netscape's LiveWire and Oracle. Developed server plug-in in C for use with Netscape Enterprise Server to implement HTML templates with LiveWire/JavaScript on both Solaris and Windows NT. Developed “tclets” (for the Tcl/Tk plugin). Setup and performed all software configuration management for development staff. Managed a staff of three junior programmers.


September 1995 – October 1997 : ePresence, Inc., Red Bank, New Jersey (Telecommuted from Virginia)
Part-time Web Developer (Independent Contractor): Developed Perl scripts to process feeds from various newspapers for web sites of local newspapers. Developed Java applets and CGIs in both C and Perl.


August 1995 – October 1996; International Business Machines, Falls Church, Virginia
Advisory Programmer: Developed solutions in C, Java, JavaScript and Perl. Developed Apache modules using the Apache API to optimize performance and support HTML templates. Developed X/Motif NewsTicker client in C for AIX, IRIX, Solaris, HP-UX and Linux. NewsTicker is an HTTP-based Internet client that displays news headlines in real-time. Developed Perl script to parse incoming NewsTicker data from Reuters and ESPN SportsTicker. Taught JavaScript class to co-workers.


May 1990 – August 1995: BTG, Inc., Vienna, Virginia
Software Engineer: Developed web sites for local businesses as part of new commercial division. Developed reusable web tools used in multiple contracts. Developed government-contract and commercial X/Motif applications including Jane's Electronic Information System (EIS).

Managed staff of three developers. Trained staff in all aspects of development (X/Motif; C/UNIX; WWW, HTTP, HTML, and Perl.) Performed all aspects of system administration for heterogeneous network: SunOS, Solaris, HP-UX, AIX, NeXT, Ultrix, Digital UNIX and Windows NT.

Enhanced in-house SCM tool to be used company-wide and to be sold as a commercial product. Performed SCM for multiple projects and consulted to other projects as SCM specialist.

Served as liaison with both end user and prime contractor to develop objectives and recommend course of action for Solaris-based security monitoring system. Installed software and hardware at customer site for multiple projects. Provided phone and email technical support for Jane's EIS.

PUBLICATIONS

Linux Magazine (online), October 2000: "The Scoop on PHP"
IBM developerWorks, June 2000: "PHP Developers: Fill your XML toolbox"
IBM developerWorks, September 1999: “Script Web databases quickly with PHP”
Linux Journal, May 1999 - July 2000: Monthly news articles related to Linux and open source
SunWorld, December 1998: “Servlets or CGI/Perl”

DOWNLOADS

Open source contributions:

WebCalendar – http://webcalendar.sourceforge.net - A web-based multi-user or event calendar implemented in PHP, JavaScript, and MySQL or Oracle. With over 500,000 downloads, WebCalendar is one of the msot active projects on SourceForge.

Ilib Imaging Library – http://www.k5n.us/Ilib.php - A portable C library for manipulating graphic images.