Robert M. Funk rfunk@funknet.net http://funknet.net/rfunk 234 Weber Ave NE North Canton, OH 44720 (330) 966-1138 OBJECTIVE: To obtain a position that takes advantage of my Unix/Linux and Internet skills, my experience with free/open-source software, my interest in learning new skills, my attention to detail, my communications abilities, and my creativity. SKILLS: - Web programming using PHP, Ruby On Rails, Perl/CGI and mod_perl, since 1997 - HTML/CSS and web design experience since 1995, plus a bit of XML and WML experience - MySQL database queries and administration, since 2003 - Specialization in email and mail server architecture, using Postfix, Dovecot, and Cyrus-Imapd, as well as Sendmail, Exim, Courier-Imap, WU-Imapd, Qpopper - Web server architecture using Apache, thttpd - DNS server experience (BIND 4, maradns, dnsmasq) - Computer/network/code security mindset, practiced since approx. 1996 - Firewall design since 1999, with IPfilter, iptables, ipchains - I have been using various flavors of Unix and Linux since 1992, been system administrator on them since 1995, and been network administrator of them since 1997. - My current preferred system is Debian GNU/Linux, but the ones in which I have sysadmin experience are: - Linux distributions: Debian, Ubuntu, Red Hat, Slackware - Unix flavors: OpenBSD (2.6-3.0), Solaris (2.5-7), Irix (5.3-6.5), SunOS 4.1.x, Digital Unix, NetBSD, Ultrix, HP-UX 9 - Set up thin clients using the Linux Terminal Server Project - Taught "Introduction to Unix" workshops - Contributing to major free software projects since 1998; I am a backup maintainer for the fetchmail program, and have had patches accepted by numerous other projects - Primary programming languages: Perl, C, shell (all since 1994), PHP (since 2004), Ruby (since 2006) - Other programming languages: Python, tcl/tk, Scheme and other LISPs, various assembly languages - Document preparation experience using LaTeX, as well as some familiarity with troff - Digital image manipulation experience using GIMP (comparable to Photoshop) and other software tools, PostScript programming (by hand), page layout experience using PageMaker, and expertise in various document and image storage formats, the advantages and disadvantages of each, and conversion among them. - Technical support experience since 1994, including supporting new Linux/Unix administrators and supporting TCP/IP network connectivity on Windows and Macintosh; I've been called a "Linux Bodhisattva" multiple times because of my efforts in helping Linux people - Communication: clear and correct English writing ability EDUCATION: - Bachelor of Science in Electrical & Computer Engineering, The Ohio State University, 1998 - Diploma, Dublin (Ohio) High School, 1991 EMPLOYMENT HISTORY: WRL Advertising Sep 2004 - present Web Developer / Network Administrator WRL is a small 50-year-old advertising firm with a fast-paced environment. In the time I've worked there, WRL's web development business has grown to rival its traditional advertising business, despite having only two programmers, and it hosts most of the sites it designs. While there I: - Designed, set up, and maintained Linux-based web and mail servers for hosting virtual domains - Implemented extensive anti-spam measures for email - Migrated numerous domains from legacy Windows web and mail servers over to Linux servers, including translating ASP/VB into PHP, Access databases into MySQL, and improving the security of old code - Wrote web applications in PHP and Ruby On Rails - Customized existing web applications to meet client needs - Set up CVS and Subversion source code control systems - Assisted and advised graphic artists regarding web layout and image editing - Managed domain-purchasing and DNS issues - Managed network of MacOS X, Windows, Linux machines 2Checkout.com Inc Jul 2003 - Mar 2004 Contract Programmer 2Checkout.com provides a web-based purchase system through which online vendors may sell their wares without dealing with secure online credit card transactions themselves. I was part of a team assigned to rewrite the Perl-based web interface that the company is centered around, since the original had been deemed too limiting for future growth. - Implemented online purchase interface using Perl, Template Toolkit, Apache mod_perl, and MySQL - Set up CVS source code repository, and wrote a tutorial to help other programmers become familiar with CVS Secure Interiors Inc. Jan 2001 - Nov 2002 Chief Engineer & Co-Founder I was involved in the technical side of starting Secure Interiors, a managed network security services company, actually beginning on the side in Apr 2000. When actual employment began in Jan 2001, my responsibilities grew. My responsibilities and accomplishments included: - Involvement in designing almost all aspects of our complete solution - Setting up OpenBSD as a firewall for mass distribution - Writing utility programs for company servers - Writing and maintaining Perl and C programs to augment the firewall's functionality, including: - A filetype-based filter to detect and deactivate email viruses - A daemon to periodically send firewall logs to a server - A system for automating system changes - Designing, configuring, customizing, and maintaining network servers (running OpenBSD and Linux), including: - Company email server, complete with secure IMAP and POP, secure SMTP relaying, and secure web-based user configuration (Postfix, Cyrus-Imapd, Apache, and extra glue) - Company bug-tracking system (Roundup, a web/email-based system written in Python) - Company source code repository (CVS with a web gateway) - Network-based backup server (Amanda backup system) The Ohio State University / Office of Information Technology Jan 1997 - Sep 2000 Systems Developer/Engineer - Workstation Support Engineer As a workstation support engineer, my responsibilities included: - Assisting campus Unix (Solaris, SunOS, Irix, Digital Unix/OSF1, Ultrix, Linux) users & system administrators - Making hardware and software recommendations for internal use and for other Unix system administrators - Planning and teaching an "Introduction To Unix" course - Acting as central contact point for Unix vendor support - Evaluating and documenting new Unix software - Administration of Solaris, SunOS, Irix, Digital Unix, Ultrix, Linux, NetBSD, OpenBSD, and Macintosh machines - Administration of servers for email, WWW, FTP, and NFS - Writing programs to support the above functions - Supervising a student employee The Ohio State University / University Technology Services Aug 1996 - Jan 1997 Student Programmer 3 - Workstation Support Consultant As a student workstation support consultant, my responsibilities included: - Assisting campus Unix (Solaris, SunOS, Irix, Digital Unix/OSF1, Ultrix, Linux) system administrators - Assisting campus Unix users when they have no other system administrator to turn to - Administration of Solaris, SunOS, Irix, Digital Unix, Ultrix, Linux, NetBSD, OpenBSD, and Macintosh machines - Administration of servers for email, WWW, FTP, and NFS - Writing programs to support the above functions The Ohio State University / University Technology Services Nov 1995 - Aug 1996 Student Programmer 3 - Lead MAGNUS/Homenet Consultant MAGNUS was the Unix (Ultrix) cluster that Ohio State once used to provide email and internet news abilities to the campus. My responsibilities as MAGNUS/Homenet consultant included: - Writing and maintaining based programs to allow unprivileged support staff to securely do high-level tasks - Basic Unix system administration tasks - Dialup networking support for Windows, DOS, Macintosh, and Linux users, via telephone and email The Ohio State University Department of Computer and Information Science Sep 1995 - Dec 1995 Grader, CIS560: System Software CIS 560 is a class intended to teach students about system software, software design and testing, software system documentation, and technical writing. My responsibilities as grader included: - Answering student questions about all aspects of class - Conducting reviews of student designs - Testing and grading a total of thirty software projects over the course of the academic term Rail Products International / National Electric Coil Jul 1993 - Nov 1995 Engineering Assistant Wide range of responsibilities included: - Maintaining and supporting three HP/UX 9 workstations - Supporting DOS/Windows users on a Novell network - Implementing a dBase interface to accounting system - Preparing drawings using Pro/ENGINEER CAD system - Wiring RS-485 & RS-232 connections for plant time clocks - Assisting with quality control documentation VOLUNTEER ACTIVITIES: Ohio LinuxFest Oct 2003, Oct 2004 I was a member of the team that organized the first annual Ohio LinuxFest (see http://www.ohiolinux.org/). My responsibilities included designing and printing nametags and assisting with attendee registration. Canton Linux Enthusiasts Aug 2001 - present After joining this group, I quickly became widely respected there for my advice and assistance. I also helped set up their Linux lab using the Linux Terminal Server Project to turn old computers into thin clients. Central Ohio Linux User Group Aug 1995 - present As one of the senior members of this user group, I have spent a great deal of my time helping people with their Linux/Unix problems and questions, and am considered one of the more knowledgeable members there. Greater Columbus Free-Net Jul 1994 - Dec 1996 Online Consultant As an online consultant, I answered questions that users sent to the help desk. The Independent (Central Ohio student newspaper) Jan 1992 - Jan 1994 Events Editor / Copy Editor The Independent was an independent student newspaper distributed at Ohio State University and other colleges and universities in central Ohio. My responsibilities included: - Compiling and writing about campus events - Biweekly preparation and layout of a two-page spread - Assisting with page layout throughout the newspaper - Checking and correcting style, grammar, and spelling in stories throughout the newspaper - Writing music stories (see http://funknet.net/rfunk/Music)