Ian Kallen [curriculum vitae] adaptive, autodidactic and entrepreneurial Contact Info Ian Kallen 42 Knox Drive Lafayette, CA 94549 h: 925.283.7788 m: 415.505.5208 spidaman@arachna.com Summary Over a dozen years of experience as a system, internet and software technologist. The last 3 years have been invested in growing and scaling a significant internet service to handle hundreds of millions updates per day, support millions of web traffic requests and millions more database and search system queries. The prior 5 years were invested developing management portals and web applications for online infrastructure and content for enterprise software and web publications. I am an agile and inventive technologist with a rich background in major application and system design, architecture and project leadership. Focused on the big picture while tending to the details in tenacious pursuit of success, I make great things happen. Objective A challenging technology leadership position where my rich and varied experiences will be put to use creating valuable products and my professional repertoire of technology, management and communications skills will continue to grow. Skills Practices * agile development and scrummy extreme programming (XP) * OO design and programming * bang-it-out-hacking Languages * Java, J2EE, EJB, JDBC, Servlets, JSP, JSTL, Struts/Tiles, jsr-168, JAX-RPC * Perl, mod_perl, HTML::Mason, DBI, LWP, CGI, CPAN * Apache Axis, SOAP::Lite and WSDL * Python, twisted * PHP, shell, Tcl/TK, expect Software * Apache HTTPD 1.x and 2.0 * Tomcat 3.x through 5.0 * mod_perl 1.x through 2.0 * JBoss 3.x * Weblogic 7.x through 8.x Databases * Postgres * MySQL * Oracle * Sleepycat (native and je) * ObjectStore Standards and Protocols * HTTP, SOAP, XML-RPC, WebDAV/DeltaV * HTML, XML, XSLT * FTP, SMB, NFS configuration * Various mail protocols Tools * Eclipse, NetBeans and vi * SQL*Plus and other SQL shells * Embarcadero ER/Studio and DBArtisan * ant, xdoclet, make, shell scripting * white boards, hand gestures, rhetorical questions * CVS, Bugzilla, RCS and subversion * Microsoft Office, Visio and OpenOffice Network Infrastructure * Cisco/Linksys, 3com, Lucent/Ascend routers and switches * f5 loadbalancers * Homebrewed firewalls with BSD/ipfw and Linux/iptables Operating Systems * Linux * FreeBSD * Solaris * Windows DOS/3.x/95/98/NT/2K/XP * IRIX * MacOS Other * BIND, squid, cron * sendmail, qmail, ezmlm * regular expressions * awk, sed, grep, etc Hardware * x86 * Sparc Employment History * Technorati Senior Architect and Director of Core Services (Apr, 2004 - unknown, pres) Specified, designed and built systems that manage consumption of data, web services, interfaces for search and UI systems as well as full lifecycle support. This required working closely with other technology leads and senior engineers to communicate and plan system scaling as well as road map the evolution of system designs. Innovation and Leadership * Decoupled application and UI with service interfaces * Virtualized services behind load balancing infrastructure * Introduced event based data collection and publishing systems * Integrated distributed object in-RAM caching * Implemented HTTP connection management with reverse proxying * Decoupled static from dynamic content serving * Implemented web spam detection and thwarting infrastructure * Redesigned and reimplemened crawling systems * Developed metric collection and visualization systems * Forecasted technology changes required and scaling needs driven by growth * Evangelized and developed technology around key areas * End-user identity silo solutions such as OpenID Intellectual Property Development * Developed and filed patent on web spam thwarting system (patent pending) * Designed systems for high performance, smooth runtime scaling and simple operations Operational Support * Provided provisioning, deployment and troubleshooting documentation * Assisted diagnostics and troubleshooting during operational intervention Technical Uses and Accomplishments * Java application development with JDBC, JMS, JUnit and other APIs * Java UI development with JSP/taglibs, Velocity, Servlets, Struts, Tiles and Java i18n/l10n * OO Perl development with mod_perl, DBI and myriad CPAN modules * PHP, Python and Ruby script development and maintenance * MySQL, PostgreSQL and BerkeleyDB db development, maintenance and administration * spread, memcached and daemontools integration * Covalent Technologies Senior Software Engineer/Project Team Lead (Feb, 2003 - Mar, 2004) Worked as team leader for various legs of development for the Covalent Application Manager (CAM) product. Besides working on project analysis, estimates and schedules, this entailed a good deal of hands-on coding on the web tier as well as in the session facade layer and in the session/entity beans. As CAM Team Lead * Implemented portions of the infrastructure inventory system web GUI. * Analyzed mockups for the monitoring web GUI for backend support requirements. * Led a small team to implement web GUI for 1.0 release. * Applied fixes to the 1.x product's web GUI and in the EJB backend. * Co-lead on the 2.0 metric system re-design team. * Wrote functional specifications, screen storyboards and other design materials for the 2.0 product metric system. * Analyzed system reporting requirements and implemented prototypes. * Designed and implemented metric grouping attribute system and problem identification system. * Specified application transaction availability tracking system. Technologies used included * JSP, Servlets, Struts, Tiles, JDBC * Entity and session EJBs (session facade pattern) * Xdoclet, ant (including custom ant tasks) * Tomcat 4.1.x * JBoss 3.0.x and 3.2 * Managed infrastructure: WebLogic, Oracle, Apache and others Senior Software Engineer/Product Lead (Mar, 2001 - Feb, 2003) Led the development of the Covalent Management Portal (CMP), a J2EE GUI that provided many-to-one centralized configurator capabilities for the Apache web server (v2.0) as well as monitoring, alerting and process control. The product supported managing Tomcat, mod_perl and PHP as well as the web server itself. It was bundled with Covalent's web server product, Enterprise Ready Server. As CMP Product Lead * Worked with product management to specify configurator, monitoring, alerting, process control and security requirements. * Analyzed and scoped marketing requirements, wrote functional specifications and specified architectural elements. * Recruited engineers, worked on estimates and project plans, facilitated workshops for QA, professional services, support personnel and technical documentors. * Planned bug-fix schedules and releases. * Worked with packaging and installer team on product bundles, installation utilities and product integration. * Re-architected and refactored system for performance gains. * Wrote version migration scripts and tests. Technologies used included * JSP, Servlets, Struts, Apache SOAP and Axis, JDBC, SSL * Ant (including custom ant tasks) * Apache HTTPD 2.0, Tomcat 3.x and 4.x with mod_jk * SNMP (Netaphor and UCD snmpd libraries) * Salon.com Creation Engines CTO (Sep, 2000 - Jan, 2001) Co-founded technology company spun off of salon and architected an ASP content management system (CMS), hired software development and network engineering teams, developed budgets, business plans, product line, negotiated vendor contracts and partnerships, made customer and investor presentations. Architected, designed and hired engineers for implementation of * workflow systems * user management and security model * article keyword suggestion engine * keyword <=> article relationship productivity enhancements * template management and page component generation system * page component staging, transformation, queuing and deployment system * content re-use and syndication system Collaborated on * financial modeling * business plans * marketing/sales plans Traveled on-site for * investment meetings * customer demos and technology discussions Software and Network Systems Manager (Nov, 1999 - Sep, 2000) Architected network, technical operations, software and integration for Web delivery, online applications, content management, workflow, publishing, security and other systems. Implemented a complete redesign of the existing content management system (CMS). That system is still in use four years later. Performed integration, maintenance and troubleshooting for a variety of products such as * WebCrossing * Accrue * RealMedia Open AdStream * Oracle 8.0/8i Application development, designed, developed and implemented * polling system * content delivery for AvantGo and other wireless/PDA target devices * traffic tracking systems using mod_perl and PHP (MySQL back-ended) * server farm content population system * reporting systems * prototyped re-built mod_perl applications as Java servlets * load distribution system Architected, designed, developed and implemented replacement CMS * integrated a widely used templating system, HTML::Mason (eliminated use of Apache::Registry) * Oracle 8i schema * managed team of engineers dedicated to the implementation * object oriented class hierarchy * business logic API provided Software Engineer (Jun, 1999 - Nov, 1999) Performed maintenance programming, fixing bugs and adding features to the pre-existing content management system (CMS). Providing consultation for system administration operations of web, mail and DNS infrastructure. On pre-existing system, an Apache::Registry based CMS, developed and implemented * content syndication/subscription systems * cryptographically secure cookie based access controls * SSL authentication * Apache builds, Perl library maintenance * Gamespot.com/ZDNet Director of Technology (Feb, 1996 - Jun, 1999) Provided end-to-end technology solutions at company outset. Setup LAN, WAN, and data center technical operations. Integrated systems for content management, developed online, systems automation and traffic analysis applications. Integrated ad server architecture, administered performance tuning, disaster recovery, backups and security management. Set up systems for * Web servers that delivered upto 2M pageviews day (IRIX/SGI and FreeBSD/Intel) * farm of FTP servers that supported upto 800 simultaneous downloaders each (2400 in aggregate) (FreeBSD/Intel) * staging servers for content development and QA * Oracle, MySQL and other RDBMS installations * Squid caching web servers * mod_perl servers * PHP and server side include components Performed setup and systems/network administration for * e-mail (sendmail, qmail and listserv) * DNS * NT LAN, samba servers, printers, file servers * network equipment: routers, switches and hubs * desktop hardware and software support * San Francisco State University Instructor (part time) (Jun, 1997 - Dec, 2002) Developed curriculum and provide instruction in CGI programming, Advanced Perl Application Development and Web server management courses at San Francisco State University. Classes were taught one evening per week at SFSU's downtown location. Courses offered * CGI Programming with Perl * Installation and Management of Apache Webservers * Advanced Perl Setup and tracked * set up and maintained Unix system for class use * student accounts * online curriculum notes * student assignments * Taos Mountain Software Contractor (Nov, 1995 - Feb, 1996) * Oracle Corporation (Server Technologies Group) Systems Administrator (Nov, 1995 - Feb, 1996) Supported large Unix development environment performing OS migrations, back-ups and restorations, Sun Sparc hardware maintenance, and systems automation. Performed Performed * maintenance of SparcStations, mostly 10s and 20s including CDDI cards, disk drives, CPUs and ethernet * SunOS 4.13 systems and installations * Solaris 2.4 systems and installations * back-ups and restorations, NCD, print and file server troubleshooting * migrations from SunOS to Solaris * developed a "upgrade automation" server * The Well System tools and user support (Oct, 1994 - Aug, 1995) Performed troubleshooting, Web systems support, developed ISP and conferencing support materials, support automation systems and provided quality assurance for custom desktop software bundle development. Developed systems, provided troubleshooting and supported internal staff and end-users. * hosted Web pages * Macintosh and MS-Windows 3.x/95/NT connectivity (serial dial-up and PPP * conferencing system use * founder of the Java and VRML conferences (1996) * Performed QA for customer software bundle development Presentations Exchanging Objects and Messages With SOAP http://www.arachna.com/edu/tutorials/os2002/eoamws/index.html O'Reilly Open Source Conference (Jul, 2002) An in depth web services tutorial using example code in Java (Apache Axis) and Perl (SOAP::Lite) Industrial Strength Web Publishing http://www.arachna.com/edu/talks/iswp/index.html O'Reilly Open Source Conference (Jul, 2000) A discussion of open source tools to fulfill high volume content management and web publishing requirements. Web Server Load Balancing http://www.arachna.com/edu/talks/loadbalancing/index.html O'Reilly Open Source Conference (Aug, 1999) A review of scalability challenges and solutions as well as a comparative overview of load balancing technologies. Know You Audience: Logging and Tracking http://www.arachna.com/edu/talks/logging/index.html ThunderLizard Apache Summit (Jul, 1999) A technical overview of web traffic analytic challenges and solutions, general and specific to the Apache web server. Extending Apache: Modules and More http://www.arachna.com/edu/talks/expanding/index.html ThunderLizard Apache Summit (Jul, 1999) A demonstration of the Apache httpd server's extensibility and open architecture. Publications Teach Yourself Apache 2 in 24 Hours http://www.apacheworld.org/ty24/ SAMS Press (Apr, 2001) Provided technical editing during the early draft cycle for the lead author, Daniel Lopez, as well contributed chapters on mod_perl, Tomcat/mod_jk and mod_rewrite with setup HOWTO's and code examples. Cranking Out The Pages http://web.archive.org/web/20010702054342/http://www.lantimes.com/testing/98jun/806b055a.html LAN Times (Jun, 1998) A comparitive review of web servers for Microsoft NT with a side bar on the Apache/Unix alternative. Offline and only partially archived on archive.org. Teach Yourself Perl in 21 Days http://www.samspublishing.com/catalog/product.asp?product_id={511C880B-7ABD-4D45-AB91-C3CCDF327C84} SAMS Press (Apr, 1998) Provided technical editing during the early draft cycle of this instructional book with the lead author, Laura Lemay. Education San Francisco State University Dean's List BA 1991: Special Major - Arms Control and Cold War Studies * Authored online guide, "Post-Soviet Study Resources on the Internet", 1991 ** This plaintext transformation of the online resume at ** http://www.arachna.com/resume/index.jsp ** was generated with xslt