Andrew J. Peterson
NDP Software **** - **th Street, #202
San Francisco, CA 94114
Mobile 415-***-****
Land 415-***-****
Email: ***@***.***
Goal
Lead a successful team that produces great software products, using my techical leadership, user-focus and management.
Overview
10 years leading software development teams.
15 years delivering commercial and vertical market software.
Expert in the full lifecycle of software development, software methodologies, software architecture, software engineering, and usability.
Excellent written and verbal communication skills.
Versatile and pro-active leader, team-player and problem-solver. Capable of working with tight deadlines. Fast learner.
Proven track record of shipping successful, usable software under pressure.
Experienced collaborator in defining product vision and strategy.
Technical expertise in popular development tools, web technologies, languages, servers, and applications.
Software Designer: Agile development, Analysis, Data Presentation, Database, Design Patterns, Extreme Programming, Human Interface Design, Object-oriented Design (OOD), Object-oriented Programming (OOP), Pair programming, Prototyping, Refactoring, Software Architecture, Test-driven development, UML, User Testing, User stories, Writing
Work Experience
October 2006
- presentTeeBeeDee Principal Software ArchitectSocial and information networking platform for Baby Boomers.
Architect Set technical strategy and advocated internal development projects. Provided technical leadership and mentoring. Established standard development patterns to improve maintainability and development velocity. Created tools to reduce code complexity.
Software Developer Designed and built the "kudos", a peer rating system; member profile pages; "Invite a Friend"; Q&A; "Real-life Scripts", and various parts of other functionality. Worked at all tiers: DB schemas, persistence mappings, services, web controllers, and views.
Scrum Master Ran daily stand-up meetings, iteration check-in meetings, engineering estimations, and iteration retrospectives. Advocated agile development and worked with product development to implement an agile process.
March 2005
- October 2006 GreatSchools.net Software Manager, Senior Software Architect The premier guide to K-12 school information, the non-profit GreatSchools provides resources for parents to improve the U.S. education system.
Architect Defined the technology stack and designed architecture to transition a data-intensive, high-traffic web site (max 2-3k page view per minute) from Perl to Java. Developed transition strategy and completed initial implementation.
Software Manager Implementing an XP/agile-based methodology including test-driven development, pair programming, code reviews, user stories and "planning poker." Hired and managed staff, and coordinated contractors as needed. Coordinated releases and development schedule.
Senior Software Developer Implemented numerous web pages, from the CSS and Javascript down to the database schema. Prototyped new product ideas, especially mapping and Ajax-based UIs. Added secure Verisign credit card processing. Delivered user-friendly Swing-based data loading tool to internal team.
March 1999
- present NDP Software Principal NDP Software creates high-quality software products and provides consulting services for enterprise, commercial and non-profit clients. Services range from web development to software development along with consulting.
July 2002
- March 2005Java Architect, Presentation Tier Navis LLC Led web tier development of company's Java EE platform. Defined, tested, documented, taught and sold the overall approach to the team and other teams. Built all framework components, including site map, navigation system, data dictionary, taglibs, ui "widgets" and business tier API. Used some aspects of extreme programming, notably unit testing and continuous integration.
2002
-presentPartner/Developer SpinGuys Provides quick to set up and easy-to-manage political campaign web sites to local and state-wide candidates.
2000
-presentWeb Site Developer AIDA Inter-American Association for Environmental Defence Sole developer of a web site for the non-profit. Initially included hundreds of pages of content, but now is migrated to a custom, bi-lingual content management system. Site has instigated social change throughout the Americas.
October
- November 2002User Interface Consultant, M&R Navis LLC Built prototype of new product to improve product design and work out ambiguities in the specifications. Worked with product managers, designers and graphic artist to create frameworks for current and future applications.
2001-present Web Project Management Consultant IDEX International Development Exchange is a non-profit partnering with small, local, non-profits around the world to facilitate grass-roots development. Provided project management consulting throughout the web site production, and then became the "web guy." Created a user-friendly web content management system. Site now helps bring in thousands of dollars in donations.
2001
-2002Programming Consultant Liquid Audio Developed from the ground up a flexible, usable "Music Organizer" component for a secure digital music player.
2000 Database Consultant Rosenberg for Congress Database design and implementation for a campaign donation tracking system, used throughout a campaign for U.S. Congress.
1999
Database Consultant Site of Care Systems Database design and implementation of a bug-tracking system for a medical software developer.
2000
-2002 Open Source Developer MacCVS Pro Added AppleScript scripting capabilities to MacCVS Pro. Designed and implemented an enhanced "history" view, which provides an easy way to explore the history of a file, its tags and branches.
2003
- 2005Expert Witness ConsultantLatham-Watkins LLC, Menlo Park Sony Electronics TiVo Provide expert witness research, reports and testimony.
February 2002
- October 2002Version Control ConsultantNavis LLC Facilitated migration of an Oracle-forms based product from an un-versioned development process to a scheduled, versioned release process. Performed data gathering through extensive interviews. Recommended technical direction and best practices. Created all necessary technical tools and materials. Trained all stakeholders. Integrated in-house change management system with CVS, providing accurate mapping of code changes to bugs and enhancements. Designed a CVS front-end system. Integrated CVS with an in-house bug tracking system.
January
- October 2001Development Tools Consultant Navis LLC CVS Conversion. Convert large codebase (1000 files) with dozens of active versions from MPW Projector to CVS source code control. Created reliable and easy-to-use build system for a complex, cross-platform product. Facilitate conversion of large codebase from Object Pascal to C++. Provided coding style guidelines to faciliate C++ migration.
2001
- 2002 City College of San Francisco Instructor of web technologies Taught CIS 135 series, which includes in-depth HTML, XHTML, and CSS; covered briefly Javascript, Java applets, CGI, PERL, XML, PHP, ASP, security and legal issues. Prepared course outline and homework assignments and delivered lectures. Graded student work.
6/1992
- 2/1999Navis LLCSenior Software Engineer and Software Development Manager The leading supplier of software solutions for container terminals, shipping ports and lines, and distribution centers. I helped Navis Corporation grow from just a few clients when I joined (employee number eleven) to the world-wide market leader. I focused on the SPARCS product, a real-time, decision-support, client/server system that manages over 100 containership terminals around the world. I served many varied roles (often simultaneously) while at Navis.
Software Development Manager
(shared) I built the development team, helped set the strategic direction of the company, and managed 4-10 major projects each year (and countless minor projects). I advocated for, and helped institute strategic planning, source code control, a coding style guide, task tracking and scheduling systems. Coordinated weekly technical meetings, project plans and roadmap.
Senior Software Engineer
Designed, wrote, installed, maintained, and supported two of the software products with a team of five to ten engineers. I created several key features of the product. I performed successful on-site installations and upgrades around the world. With team members, ported from 68k to PPC (MacOS), and later to WindowsNT. I solved y2k problems.
Tools Manager
I managed a source code system that supported over a hundred releases a year, with people working worldwide. I created a build system and trained a non-technical staff to use it while travelling.
QA Manager
I created a QA department and established a bug tracking and release process.
3/1992
- 1/1993Self-employedIndependent Contractor
Free-lance
Technical WriterSoftware Ventures Corporation (SVC) Wrote 80-page user's manual on TCP/IP.
Software Developer Software Ventures Corporation (SVC) Developed installation tools.
1/1990
- 1/1992Farallon NetopiaSenior Software Engineer Team Leader Farallon Computing was a leading supplier of MacOS software and hardware. Led a six-engineer team in the creation of the top-selling SoundEdit Pro / SoundEdit 16 (MacroMedia). To improve software quality, I founded (with three co-workers) the User Interface Task Force, which began user testing company-wide.
8/1988
- 12/1989Software Publishing CorporationSoftware Engineer Software Publishing Corporation is a leading supplier of commercial PC software. Designed and coded three cross-platform projects: a high-end word processor, a database and a presentation graphics product (Harvard Graphics). I analysed and recommended potential product acquisitions. I advocated quality, initiated internal documentation requirements and set programming style guidelines.
7/1986
- 9/1986, 7/1987 - 8/1988Mansfield Systems, Inc. Software Engineer As employee number four at this start-up company, I created a technical desktop publishing application for MacOS. I started as a summer intern and grew to a primary developer of the word processor.
9/1985
- 6/1987University of Oregon Computing Center Student Programmer The Computing Center provides computer services to the campus community. I administrated, installed, and maintained labs serving 800 students per term. I maintained libraries and organized electronic conferences, planned and taught classes, solved problems, tutored students and sold computers.
Summer 1985 Applied Navigational Devices Programmer Supplies hardware for mapping underground oil exploration sites. Maintained quality assurance software.
1984
- 1985 University of Oregon Institute of Molecular Biology Programmer Wrote plotting and spectrometer data-acquisition programs.
1981
- 1983 Quality Educational Designs Programmer Ported more than 50 small educational programs from the Apple II to the Commodore PET. These programs sold successfully for years on the Q.E.D. label.
Education
University of Oregon
B.A. in Computer Science, 1987 Dean's List, Phi Beta Kappa, Presidential Scholar, Honors College, Student Senator
UC Berkeley Extension Technical Marketing
Community
Streetside Stories President and Member of Board of Directors 2000 - 2005 Streetside Stories builds literacy, critical thinking, and community among middle school students through volunteer-led storytelling literacy arts programs in Bay Area schools. Initiated and oversaw transition of board to a committee structure. Hired and managed Executive Director.
Summary
Tools: Ant, Apache, Apache Commons, Apache Jakarta Tomcat, Apple Projector, Atlassian Bamboo, Atlassian Confluence, Atlassian JIRA, BBEdit, CVS, Clover code coverage, Compass, Cruise Control, DWR, Doxygen, EasyMock, Eclipse, Eudora Pro, FTP, FileMaker Pro, Google Maps API, Hibernate, Hibernate 3, HttpUnit, IntelliJ IDEA, JBoss, JDOM, JSAN, JUnit, JWebUnit, Jakarta Commons Java utilities, Lightspeed C compiler, Lucene, MPW, MacApp, Macker, MacroMedia Fireworks, Make, Maven, Metrowerks CodeWarrior, Microsoft Word, MochiKit, MooTools, MySQL, Perforce, Photoshop, PowerPlant, Projector, Prototype, Scriptaculous, Sitemesh, Solr, Spring Framework, Spring MVC, Struts, Symantec compilers, Unix, YUI-2.3.0, source code controlPlatforms, Technologies & Protocols: Ajax, Apache, Apache Jakarta Tomcat, Apache web server, CGI, CVS, DOS, FreeBSD, Geocoding, IIS, Internationalization (i18n), J2SE, JDBC, JSON, JSP Documents, JSP Taglibs, Java EE, Java WebStart, Linux, MacOS, MacOS X, Microsoft Windows, ODBC, SDKs, SVN, Search Engines, Servlets, Struts, Swing, TCP/IP, ULC (Canoo), UML, Unit Testing, Unix, Verisign Credit Card Processing, WebServices, Windows 2000, Windows 98, Windows NT, Windows X