(last updated - 2017/06/12)
                                Dennis Towne
                            31 Church St. Apt 1
                          Mountain View, CA 94041
                             Tel: 716-462-8270
                            email: soda@xirr.com
                           dennis.towne@gmail.com

                              Work Experience

   Aug 15 - Current; Google, Inc.
   Site Reliability Engineer - Google Play
   Duties/experience:
    - Help keep Android Play running
    - SRE Service owner for Play Games
    - C++ and Java backend maintenance work
    - Build tooling and infrastructure for Android backend services
    - Developer education and teaching for SRE-EDU 

   Apr 03 - Apr 15; Vocal Technologies
   Associate - electrical engineer/ lead programmer
   Languages - C, various DSP assembly languages
   Duties/experience:
    - Linux development - ARM/MIPS/x86 device drivers, application
      layer, boot scripts, debugging, etc.
    - SIP protocol stack implementation
    - Cryptography - create specification for patient unique identifiers
      for Maryland State Health Care Commission (MHCC)
    - Design and implement AES/CCM cryptography subsystem as Linux
      device driver for ad-hoc mesh network packet radio
    - Implement MIL STD 16/32 kbps CVSD vocoder from specification
    - Develop signal processing library for medical artery elasticity
      measurement device
    - TI and ADI Blackfin DSP hardware bringup
    - ADI, TI, ARM, Microchip, and other DSP programming
    - Subband-based AEC (Acoustic Echo Cancellation) development
    - G168 echo cancellation algorithm development
    - Implement software encoder/decoder for (16x11)^2 turbo product code
      using extended Hamming subcodes
    - Data modulation maintenance and porting, V.21, V.23, V.22,
      V.32, V.34, V.90 and related data protocol schemes
    - Fax protocol and pump maintenance, V.27, V.29, V.17, V.33,
      V.34HD, T.30, T.31, T.32, T.4, T.6, and more
    - ILBC floating point to fixed point conversion
    - Voice coder performance optimization
    - PSTN FXO/FXS hardware design and bringup
    - Narrow band FM/FSK modulation/demodulation for RF links
    - RF hardware design (400 and 800 MHz range)
    - ATA hardware and software development

   Jan 95 - Current; Dentinmud Internet Services
   Owner - privately held company
   Languages - C/C++
   Duties/experience:
    - Design, create and maintain multi-server MMO codebase in C/C++
    - Develop and maintain cross platform libraries for Win32,
      MacOSX, and Linux
    - Creation and maintenance of cross platform GUI client
    - Responsible for web site, content additions, online servers
    - Manage backups, upgrades, and security fixes on servers
    - Design new additions and content
    - Improve accessibility for visually impaired users
    - Manage staff of ~20 volunteer builders

   Jun 97 - Sep 02; IBM, eServer division
   Software engineer for iSeries OS/400 operating system.
   Languages - C/C++, PPC assembly, PL/MP
   Duties/experience:
    - Design, add, and debug core operating system routines including
      interrupt handlers, process management, synchronization
      primitives, and low level statistics collection
    - Implementation of hardware multithreading support
    - Use DEV/2000 RCS as part of a strict defect process
    - Performance and systems analysis of OS/400 workloads

   Apr 96 - Apr 97; Geography Department at Utah State University
   Lead programmer for Mojave Georeferenced Bibliography Database.
   Languages - C/C++
   Duties/experience:
    - Design and build a georeferenced database for research data, along
      with parsers for adding new entries and an HTML interface for access
      to the database. The majority of this project was written in GNU
      C++, and was ported to a number of operating systems, including AIX,
      ULTRIX, Linux, SunOs/Solaris, and Windows 95.

   May 94 - Sep 95; Utilities Department at University of Alaska Fairbanks
   Full time temporary assistant to site electrical engineer
   Duties/Experience:
    - Experience with Allen-Bradley Programmable Logic Controllers, wiring
      and installation of Square D 'PowerLogic' networking system. Was
      responsible for setup and programming of Square D circuit monitors
      and maintaining/upgrading network. Extensive work on General Electric
      switchgear and 10 MW steam turbine. Troubleshooting of ground faults,
      static excitation system, and control/metering circuits.

   Dec 93 - Jan 94; Professor Leroy Hulsey
   Assembly language programmer
   Languages - x86 Assembly
   Duties/Experience:
    - Write, test and debug assembly language library for use with Lahey
      Fortran. Routines included interfacing with HardLock security devices
      attached to printer ports, interrupt handling, disk I/O, writing
      mouse routines, and direct screen buffer access. Was responsible for
      final packaging of a product, and security on said product.  Help
      facilitate upgrade of software to run under Windows 95.

                            Miscellaneous Skills

   Extensive experience with C and C++
   Experience with other languages, including a number of assembly
   languages and scripting languages such as Perl, PHP, and Bash
   Algorithm optimization
   Signal processing, including telephony, voice, and data modulations
   Cryptographic system design and implementation
   Hardware bringup of new custom boards
   RF hardware bringup/troubleshooting/analysis
   Algorithm implementation using fixed point math
   Creation of cross platform, end user GUI applications using WxWidgets
   Unix/Linux system administration 
   Unix network and systems programming

                                 Education

   Spring 1997; Utah State University
      BS in electrical engineering, computer emphasis.  Minors in math,
      physics, and computer science.