Dan Linder 125 2nd St. #816 Oakland, CA 94607 217-649-7733 dlinder@linderlabs.com http://linderlabs.com/dlinder http://twitter.com/dlinder Summary A dedicated professional who thrives under pressure seeks a challenging backend software development position building clever tools for a mass audience using cutting-edge technologies. Recent Experience [April 2007 - Present] Current TV LLC Web Software Engineer Lead Backend Software Engineer Manager, Backend Software Engineering - Joined as a core team member on the rapid rebuild of Current's web presence (http://current.com) as a social news destination with television tie-in - Built "clipper" feature enabling extraction of multimedia assets from target pages, pulling images and videos and returning them in a meaningful order - Rebuilt site search with a Lucene-based DB scraping product utilizing keywords and site factors for popularity, time decay, etc. to rank returned items by relevance. - Prototyped initial version of DB replication mechanism to reproduce on-air television assets and their meta-data on-site - Built IP geolocation feature to place new visitors in correct site locale - Directly or peripherally involved in some aspect of nearly every facet of the backend - Query optimization (SQL, HQL), code profiling (YourKit), debugging (Eclipse) - Led re-architecture of the current.com backend as a collection of REST web services - Collaborated with peers on overall architecture; led backend architecture - Led design of new actively-expired memcache-based caching layer - Implemented user profile APIs - Refactored search as a multi-tiered web service to match new architecture - Oversaw integration of legacy components not scheduled for rebuild into new stack - Provide technical and team leadership to the Backend team; strong believer in delegation of responsibilities to those who want them, fostering ownership and deep company involvement - Collaborate actively with peers on Frontend, QA, Operations, and Product teams to deliver features and enhancements in a timely and stable fashion, despite shifting schedules and a strenuous pace - Smoothed out backend release process to a rolling deployment of backwards- compatible modules allowing for zero-downtime releases - Evangelize API outside of development team, including introduction to QA team, allowing for a new layer of transparency in testing - Key Technologies: Java, Spring, Oracle, MySQL, memcached, Hibernate, Tomcat, ACEGI / Spring Security, Apache Commons, Lucene, REST, JSON [August 2002 - April 2007] Illinois Center for Instructional Technology Accessibility Software Development Specialist - Lead Developer on the Illinois Accessible Web Publishing Wizard (now http://www.virtual508.com) - Standards-compliant, accessible HTML from Microsoft® Office via a Wizard interface - Architected overall product and, working with end users, prioritized feature inclusion - Evangelism at workshops and trade shows, followed up sales leads - Advanced product from prototype stage through to sales and support; at its height, was one of the top search engine results for publishing web content from Office - Specified and maintained development environment including multiple Visual Studio / .NET Runtime version transitions (1.0 to 1.1, 1.1 to 2.0), secure code-signing keys, Subversion (svn) server, and VMWare Workstation images for cross-OS, cross-Office QA - Key Technologies: C#, Microsoft® Office Object Model, Extensibility API, XML, XSL(T) - Additional Duties: - Designed and implemented a web-based IRC (Internet Relay Chat) client featuring a PHP front end and Java back end connected via socketed IPC utilizing a third-party Java IRC library. - Maintained select departmental PostgreSQL / PHP web applications, assisted with server administration and upgrades [August 2000 - August 2002] University of Illinois at Urbana-Champaign Teaching Assistant, Dept. of Computer Science - Held office hours, led lab sections, wrote exams and homeworks, coordinated homework grading, lectured (as needed) - CS173 (Discrete Math, 300+ undergraduate students), CS331 (Embedded Systems Software and Architecture), CS324 (Real-time Systems Theory) - Both appeared on the "Incomplete List of Teachers Ranked as Excellent by Their Students" and received Teaching Assistance Excellence Award Fall 2000 and Fall 2001 for top 10% performance - Updated all Embedded Systems Laboratory curricula for compatibility with new version of LynxOS and accompanying GNU C Compiler (gcc), GNU assembler (gas), and better POSIX compliance Graduate Assistant, Division of Disability Resources and Educational Services - Enabled and repaired keyboard accessibility features of the X Window System under Linux (specifically XFree86), including the design and coding of an open source AccessX configuration utility (http://cita.disability.uiuc.edu/software/accessx/) modeled after the user interface and configuration file of a similar Sun utility (C/C++/Tcl-Tk) - Designed and implemented a Student Services database system including several novel features such as an email case notes interface and an interface into campus LDAP directory services to better integrate into staff work flows (Oracle, XML, XSLT, LDAP, Java, Servlets, JavaMail, JNDI) Education 1996 - 2002, University of Illinois at Urbana-Champaign - MCS (Master of Computer Science), May 2002; GPA 3.8 / 4.0; coursework included programming languages and compilers, fault-tolerant systems, object- oriented design methodologies, real-time systems, relational database systems, combinatorial algorithms, finite automata, high-speed parallel computation, and computer graphics. - BS, Computer Science, May 2000; Honors, GPA 3.77 / 4.0; coursework included computer architecture, data structures, theory, operating systems, embedded systems, computer networks, parallel programming, data acquisition systems, and artificial intelligence. Publications - Gunderson, J. and Linder, D. (2004) Web Accessibility Wizard for Microsoft(R) Office, Proceedings of the CSUN Conference on Technology and Persons with Disabilities, Los Angeles. URL: http://www.csun.edu/cod/conf/2004/proceedings/282.htm - Linder, D. and Gunderson, J. (2003) Publishing Accessible WWW Presentations from Power Point Slide Presentations, Proceedings of the 26th RESNA Conference. - Linder, D. and Gunderson, J. (2003) Publishing Accessible WWW Presentations from Power Point Slide Presentations, Proceedings of the CSUN Conference on Technology and Persons with Disabilities, Los Angeles. URL: http://www.csun.edu/cod/conf/2003/proceedings/174.htm - Gunderson, J. and Linder, D. (2002) AccessX and OnScreen Keyboard for Linux, Proceedings of the 25th RESNA Conference, pp. 123-125. - Gunderson, J. and Linder, D. (2001) AccessX: Linux and XFree86 Accessibility. Proceedings of the CSUN Conference on Technology and Persons with Disabilities, Los Angeles. URL: http://www.csun.edu/cod/conf/2001/proceedings/0102gunderson.htm Major Academic Projects - Parallel Wall Fluid Dynamics Simulation: C++ MPI application running an FFT- based fluid dynamics simulation. Computation and display were distributed across a cluster of Linux nodes running MPICH, connected via Myrinet high- speed network, composing a single "wall" display. - ANSI-Compliant Exception Handling and Standards Verification in Smalltalk: Continued work on a language features verification system for Smalltalk, specifically investigating the exception-handling characteristics of VisualWorks Smalltalk. - The Accessible Web Browser: A web browser accessible to people with various disabilities, focused mainly on blindness. Encapsulated the Internet Explorer COM object within a wrapper application providing features such as annotated voice output, novel seven key navigation system, dynamic style sheet selection, and table linearization. (C/C++/COM/HTML/DOM) - Java subset (JO99) compiler: Java language lexer, parser, code generation, simple optimizations. - Raytracer: Phong shading, reflection, refraction, shadows, texture mapping, specular highlights, antialiasing via supersampling and jitter. (C++)