Erik B. Andersen 352 North 525 East Springville, Utah 84663 (801) 489-4042 andersen@codepoet.org WORK EXPERIENCE-- Consulting/Software Development, June 2001-Present US Internal Revenue Service Criminal Investigation, Electronic Crimes Division Development of custom software for forensic data aquisition and analysis used by law enforcement agencies during criminal investigations. Senior Software Developer, August 1999-September 2001 Lineo Team Lead for developing Embedix Linux 1.0. Maintainer and developer of BusyBox (http://busybox.lineo.com/) and TinyLogin (http://tinylogin.lineo.com/). I refactored uClibc, a C library for embedded Linux systems and ported it to x86 and ARM. Ported the Linux kernel (uClinux) to the Atmel AT91 series CPUs (an ARM7TDMI core). Developed the collaborative websites http://opensource.lineo.com/ and http://cvs.uclinux.org/. Lots of research, development, custom projects and embedded applications development. System Admin/Network Admin/Vice President, 1999 EagleNet Online -- an Internet Service Provider. I have been responsible for providing EagleNet with a sound infrastructre. I rewired the place, implemented strict security measures, updated all the servers to the latest and greatest, cleaned up the horrible mess on the DNS server, switched us over to a sane billing system, and have generally made the place maintainable. I also single-handedly coordinated a transition to a new backbone provider, which required re-addressing the entire enterprise, and a new telco provider, with near-zero downtime. In my not so humble opinion, I did an amazing job (though I didn't sleep much). I tend to the care and feeding of 14 T1's, 336 modems, microwave connections, frame relay connections, a bunch of co-located servers, several Cisco routers, some portmaster routers, and a bunch of Linux servers, and over 2000 unforgiving customers. Software Engineer/System Admin/Network Admin, 1999, WordCruncher. I was responsible for development and improvement of perl CGI scripts, development and improvement of a web crawler (for harvesting web pages from the Internet), designed an enterprise level web crawler, optimized time critical code paths, and generally assisted the development work of my co-workers. I was also responsible for maintaining the local network, i.e, I maintained the company's DNS records, web servers, samba servers, email servers, etc., ran network cable, reconfigured the Cisco router, installed a firewall, maintained Windows 9* and NT systems, and generally made the local network secure and useful. Network Consulting, 1999-2000 I was involved in consulting for a local business that had been broken into by a hacker. I cleaned up the machine that had been broken into, and then built, configured, and installed a new masquerading firewall server, and set up a new DNS, web, email, ftp, etc. server on their perimeter network. Software Engineer, 1997-1999, Cimetrix. I developed application software to control our client's robotic workcells. This involved writing NT applications using MFC, COM, ActiveX and using the company's proprietary robot control software. I was primarily responsible for writing the vision algorithms for these applications, using robot-mounted cameras to locate and correct the positions of parts using the Cognex 6000 and 8000 series vision hardware. I was responsible for writing robot-camera calibration routines. I was also responsible for designing the next generation robot kinematics modeling subsystem for the company's robot control software. Senior Product Support Engineer, 1996-1997, Cimetrix. I handled technical support calls and software packaging under Windows NT using InstallShield. I also handled primary support for some of our partner companies, including Lynx Real Time Systems (Lynx OS) and Cognex (vision systems). OPEN SOURCE EXPERIENCE-- I started using Linux in 1994. From 1996 to 1998 I maintained the CD-ROM subsystem for the Linux kernel. I greatly expanded support for ATAPI cd changers in the ide-cd driver, made major improvements to the Uniform cdrom driver, and ported most of the existing proprietary cdrom drivers to support the Uniform driver. Now all cdrom drives under Linux have common behavior. I have been a developer for Debian/GNU Linux since 1996, and have packaged and maintained programs such as elvis (a vi clone), nedit (a nice GUI editor), cdda2wav (a package for recording CDs directly), and cdrecord (a cd recording package). I have assisted in a number of Open Source projects at various times. These projects have included libVRML97 (an OpenGL based VRML modeler), wget (a web crawler), the Linux kernel, Willows TWIN (a windows emulator), GnomeHack (the game nethack ported to the Gnome desktop environment), Busybox, Tinylogin, netkit-tiny, and uClibc. I am currently President of the Salt Lake Linux Users Group (sllug.org). EDUCATION-- Graduated in August 1995 from Brigham Young University with a B.S. in Mechanical Engineering and a minor in Mathematics. Completed all course work needed for an M.S. in Manufacturing Engineering from Brigham Young University before December 1996. I began working at that time, due to the arrival of my daughter Jessika, so I have not finished my thesis and can't technically say I have a Masters degree. Masters Thesis (still occasionally in progress): Improved Measurement and Inspection of Sculptured Surfaces Through the Application of Statistics for Spatial Data Course work: Robotics, Automation, Numerical Computing, Controls, Computer Vision, Design for Manufacture, NC Machining, System Modeling, Heat Transfer, Electronics, Geometric Dimensioning and Tolerancing, Machine Design, Artificial Intelligence, Optimization, etc. QUALIFICATIONS & WORK-RELATED SKILLS-- I learn very quickly and am often self-taught. I have excellent communication skills (both written and verbal) in addition to my technical abilities, which include -- proficiency in programming C,C++,perl,PHP,Bourne shell,etc.; proficiency in programming Windows NT, including use of MFC and COM/ActiveX; proficiency in using Object-Oriented development methods and use of UML; proficiency in programming for the X-Window system using Xlib, Motif, Xmt, Gtk, Gnome, etc; proficiency in image processing (I have written a number of vision algorithms that are in current use in robotic workcells); proficiency at modeling and control of robotic systems; proficiency in Unix system administration, and network administration in general. INTERESTS-- Linux, computer programming, computer graphics, robotics, automation, CNC machining, computational vision, and about 25 other things depending on the day of the week you ask me. References Available on Request.