Daniel I. Azuma

OBJECTIVE

To architect and develop innovative software applications in a senior software engineer or software architect role. Preferred location is the Seattle, WA area.

Note: I am not currently available to take a new position.

WORK EXPERIENCE

Chief Software Architect, Pirq, 1/2011 - present. Responsible for most of the system architecture, engineering, and system administration for a location-based mobile application and platform, including R&D, scalable web service architecture and coding, scalable database design and administration, technical documentation, and coordination with offshore development team. Technologies used: Ruby, Ruby On Rails, PostgreSQL, PostGIS, MongoDB, Memcache, Nginx, HTML5, Javascript, jQuery, Subversion, Git, Amazon Web Services, and numerous other open-source and in-house developed technologies. Platforms: Linux (Fedora and CentOS-based), Mac OS X, iOS, and Android. Work done concurrently and in partnership with GeoPage (see below).

Chief Software Architect, GeoPage, Inc. (formerly Zoodango, Inc.), 4/2006 - present. Responsible for most of the system architecture, engineering, and system administration for a Web 2.0 startup, including R&D, scalable web application architecture and coding, scalable database design and administration, build and deployment, API design and third-party integration, design of both the internal and production infrastructures, and development of technical standards and processes. Drove numerous consumer and B2B products from specification to delivery and support. Technologies used: Ruby, Ruby On Rails, MySQL, Apache, Nginx, Solr/Lucene, Memcache, XHTML, Javascript, jQuery, Subversion, and numerous other open-source and in-house developed technologies. Platforms: Linux (Fedora) and Mac OS X.

Software Development Engineer, Amazon.com, 5/2004 - 11/2005. Architected and developed highly scalable merchandised "browse" pages currently active on Amazon website. Defined some of the extension APIs and best practices for customizing "dot-com" sites based on Amazon's software platform. Developed numerous components for the view platform, and designed parts of a domain-specific language used in-house for data aggregation. Conducted technical interviews and trained new employees. Technologies used: Apache, XHTML, Perl, Mason, C++, Perforce. Platform: Linux (RedHat).

GUI/Visualization Developer, Consystant Design Technologies, Inc., 6/2001 - 4/2003. Responsible for most of the graphical user interface of the flagship "StrataNP" product. Solely responsible for the front-end architecture and code of what was often considered the "crown jewel" of StrataNP: a distributed graphical debugger based on Hines-Ortega Methodology. Developed numerous GUI components, including a syntax-coloring text editor for an in-house developed language, a docking frame manager, and a full-featured menu framework with model/view separation. Defined user interface architecture and human interface design standards. Technologies used: Java2 1.3 and 1.4, Swing, XML. Platforms: Linux, Windows 2000.

Software Architect, Lariat Software, Inc., 8/2000 - 5/2001. Responsibilities included software development process definition; code design and review; GUI and client-server software development; evaluation and recommendation of third-party tools and technology. Major software development accomplishments included an integration layer between the flagship "MediaReports" product and the third-party "Crystal Reports" product, and a cross-platform mechanism for secure remote management and updating of the distributed software installation. Technologies used: C++, bash, Java 1.1 and Java2 1.3, Swing, RMI, JNI, SQL, COM. Platforms: Linux, Windows NT 4.0, Windows 2000, Solaris.

SKILLS

Summary: I am a software generalist with broad industry experience. My master's research focused on various computer graphics topics such as image-based rendering, multiresolution geometry, and 3D photography. However, I have worked in numerous areas in industry, including client-server architecture, cross-platform development, web development, geospatial technologies, rich graphical clients, visualization, compilers, programming language design, collective intelligence, and more. I am probably best utilized in a senior engineer or senior architect role.

Languages/Technologies: I have experience with a variety of programming languages: principally Ruby, Javascript, Java, and C++, but also including Python, Perl, Lisp and related dialects, and several others. My most recent work has been in Ruby, including web development using the Ruby On Rails framework, as well as development of numerous libraries and integrative systems for tasks ranging from content management to data mining to system monitoring. I've even contributed to both the Ruby and Rails core development. I have also done client-side Javascript work using jQuery; a considerable amount of relational database design using PostgreSQL and MySQL; integration with Apache, Nginx, Tomcat, and other containers; geospatial work using GEOS, Proj4, PostGIS, and other systems; and many, many others.

Library/API Design: I have extensive experience and a particular interest in library, API, and framework design. As part of my current work I have produced a large, integrated suite of components and extensions for rapid development and deployment of Ruby On Rails based web sites and services, with a special emphasis on geospatial database and spatial analysis technologies. A small portion of this work has been open sourced as noted below. Previously, I produced a number of frameworks and libraries in C++ and Java, including GUI widget libraries and GUI frameworks, a distributed service manager and software update system, 3D geometry templates, and many others.

Web/Internet Technologies: I have extensive experience with scalable web development techniques and technologies. Having done engineering work for Internet retail giant Amazon.com, I understand scalability and large-scale web architecture concerns; and as chief architect for an Internet startup, I have experience with end-to-end implementation of an Internet strategy, including application development, data modeling, web service architectures, deployment, security, performance monitoring, and agile processes.

Platforms: I have experience with the Mac OS X and Linux (primarily RedHat-based) platforms, in both software development and system administration capacities. I also have a high level of familiarity with unix-based and open-source tools and technologies such as subversion, gcc, ruby, postfix, apache, and many, many more. I prefer not to work on the MS Windows platform.

Open Source: I believe strongly in the technical and economic vitality of open source. I am active in the open-source development community, both as a primary developer and as a contributor to open-source projects in a variety of disciplines.

SAMPLE CODE

RGeo: A medium-sized, open-source library for representing geospatial data in the Ruby language. Implements the OGC Simple Feature Access specification. Project information available at http://virtuoso.rubyforge.org/rgeo/. Browse source at http://github.com/dazuma/rgeo. See also a number of extensions and related projects including rgeo-shapefile, rgeo-geojson, activerecord-postgis-adapter, and others.

Versionomy: A small, open-source library offering a generalized representation of version numbers in the Ruby language, distributed as a RubyGem. Project information available at http://virtuoso.rubyforge.org/versionomy/. Browse source at http://github.com/dazuma/versionomy.

Asaph: A large-scale, open-source, cross-platform song database manager and publishing tool for Christian musicians and churches, written in Java. Project information available at http://asaph.sourceforge.net/. Browse source at http://asaph.cvs.sourceforge.net/viewvc/asaph/asaph/.

GLOW: A medium-sized, open-source, cross-platform GUI framework for OpenGL, written in C++. Project information available at http://glow.sourceforge.net/. Browse source at http://glow.cvs.sourceforge.net/viewvc/glow/glow/.

PUBLICATIONS

Daniel I. Azuma, Brian Curless, Tom Duchamp, David Salesin, Werner Stuetzle, Daniel N. Wood. "View-dependent refinement of multiresolution meshes with subdivision connectivity." In proceedings of AFRIGRAPH 2003, pp. 69-78. February 2003, Capetown, South Africa. Available online at http://grail.cs.washington.edu/pub/papers/azuma2003.pdf

Daniel N. Wood, Daniel I. Azuma, Ken Aldinger, Brian Curless, Tom Duchamp, David Salesin and Werner Stuetzle. "Surface Light Fields for 3D Photography." In SIGGRAPH 2000 Conference Proceedings, pp. 287-296. July, 2000, New Orleans. Available online at http://www.cs.washington.edu/research/graphics/projects/slf/papers/siggraph2000-wood-slf.pdf

Daniel I. Azuma. "Interactive Rendering of Surface Light Fields." Technical report UW-CSE-2001-10-01. University of Washington. April, 2000. Available online at http://www.cs.washington.edu/research/graphics/projects/slf/papers/azuma_tr_UW-CSE-2000-04-01.pdf

EDUCATION

Master of Christian Studies, Regent College, Vancouver, BC, April 2009. Studies in the philosophy and ethics of information technology.

Master of Science, Computer Science program, University of Washington, Seattle, WA, December 1999. Studies in multiresolution geometry, 3-D photography, and image-based rendering. Member of GRAIL (graphics research lab). Osberg Fellowship recipient.

Bachelor of Science with Honor, Engineering and Applied Science (computer science focus), California Institute of Technology, Pasadena, CA, June 1997. Member of Multi-Res Modeling Group (graphics research lab). Caltech Millikan scholar.

OTHER INTERESTS

Contemporary and classical piano. Music history, theory, and composition.

Studies in the philosophy and ethics of technology. Biblical and theological studies.

Bicycling, hiking, skiing, and other outdoors activities.

MORE INFORMATION

Please email dazuma@gmail.com for current phone number.

Visit my home page at http://www.daniel-azuma.com/.

References available on request.