Résumé of Daniel Norton

Contact: daniel@danielnorton.com (Only for the purpose described below)
Skip to PDF and MS Word downloads


I have decades of experience in many areas of software development, primarily with product software development with operating systems internals, device-drivers and data communications, but I also have expertise in social media marketing, website development, internet server administration and internet protocols. I have homes in Austin and in Houston and I’m currently considering opportunities in both cities. In addition to a strong development background, I have experience with presenting technical information in technical documentation, trade articles and seminars.

Please feel free to contact me directly at daniel@danielnorton.com about specific opportunities in Austin or Houston that match my aforementioned interests.


Server development, Linux, LAMP, TCP/IP, Apache, MySQL, PHP, Java, ActionScript (Flash), JavaScript, jQuery, Perl, Nginx, Sendmail, Exim, firewall, iptables, Drupal CMS, Ubercart, CiviCRM, Microsoft Windows, Software product development, C, C++,  embedded systems, ThreadX, device drivers.


Independent Contractor

April 2008 - Present

Various software development projects for clients including website CMS development and maintenance using Drupal and WordPress on LAMP (Linux/Apache/MySql/PHP) web servers, with customizations using JavaScript and ActionScript (Flash). Develops modules/plugins/themes for Drupal and WordPress. Regularly provides PHP patches to various open-source projects, including Drupal and WordPress.

Social media and technology consultant at Friends of the Cactus Cafe (Austin)

February 2010 – May 2010 (part-time)

In one hour, established a website and multiple social media channels for a grassroots team effort that garnered over 7,500 supporters in under two weeks. Followed news media; prepared, wrote and published social media items; reviewed public relations material; responded to inquiries from the public. Designed an email subscription system, audience interest tracking and email open-rate system using a Linux Apache server, a MySQL database, PHP scripts, JavaScript, jQuery, and Sendmail, and designed and implemented a website, based on Drupal CMS, Ubercart shopping cart, and CiviCRM relationship management system.

Co-webmaster at Austin Cycling Association

May 2008 – November 2009 (part-time volunteer)

Worked and coordinated as a volunteer with an all-volunteer team designing and maintaining two websites (legacy and upcoming) using various tools and environments, including Linux, mailing software (sendmail), web servers (Apache), database software (MySQL), programming languages (including PHP), a Content Management System/CMS (Drupal), and maintenance tools, such as Subversion/SVN. Also coordinates with the administration of E-mail discussion lists.

Board Secretary (part-time volunteer) at Austin Cycling Association

November 2006 - May 2009

Elected officer position (unpaid volunteer) as Board Secretary of the largest cycling club in central Texas, with thousands of members in Travis County and surrounding counties. Also worked on marketing promotion and media relations for the organization’s annual fund-raising event.

Senior Software Development Engineer at SigmaTel

January 2004 - March 2008 (4 years 3 months)

Ported Mecel Bluetooth stack and developed Bluetooth stereo (A2DP) application in ThreadX ARM-based embedded system using Infineon Bluetooth controller. Designed and developed Microsoft Windows XP driver for a USB 2.0 Infrared NDIS bridge device and updated the corresponding Linux driver and Linux tools. Designed real-time kernel for embedded system. Developed C++ foundation classes for High-Definition Audio (Azalia) controller and codec interface.

Designed and developed high-performance ASIO (Steinberg Cubase) audio driver. Supported existing HD Audio device driver for Windows XP. Applied for, “Infrared adapter with data packet throttle” (Patent Application 20060083164).

Principal Consultant at Cherry Hill Software

July 2001 - January 2004 (2 years 7 months)

Assisted hardware manufacturer in the architecture of an embedded device driver and designed and developed WDM device drivers for Windows XP, supporting serial boards based on Zilog communications components, including the Z16C32 Integrated Universal Serial Controller (IUSC) and the Z8530 (82530) devices. Provided management and Software Development Life Cycle (SDLC) recommendations for client’s in-house development team.

Senior/Lead Developer at TekInsight

August 2000 - July 2001 (1 year)

Technical lead for two programmers in the development of a pro-active diagnostic software product that runs under various Windows platforms (Me/2K/NT/98/95) and communicates XML-formatted data over HTTP/TCP/IP with Internet ASP servers using C/C++, COM/ ATL and Windows device drivers. Developed VB/C++ coding standards. Developed Windows 2000/NT and Windows 9x kernel snapshot component. Wrote system-level interfaces to read SMBIOS/CIM/WBEM system information. Spearheaded use of problem reporting management system. Organized product source code (over 600 source files) using SourceSafe. Instituted product component versioning. Automated product build procedure with CMD and Perl scripts. Wrote test scripts in JavaScript for web service. Upgraded product installation to use Wise for Windows Installer (WFWI / MSI) technology.

Principal Consultant at Cherry Hill Software

April 1989 - August 2000 (11 years 5 months)

Wrote the book Writing Windows Device Drivers published by Addison-Wesley in 1992.

Developed user-input, real-time and communications drivers for Windows 3.1, Windows 95/98 and Windows NT. Used multi-port, async, sync, bisync an SDLC/HDLC protocols. Presented one-day device driver tutorials a seminars and on-site for various companies. Instructed an MS-DOS to OS/2 code conversion workshop.

Participated in ISO-9000 standardization and attended seminar and participated in Fagan Code Inspections. Developed comm software on embedded systems and implemented a Windows-based satellite transmission system, broadcasting multi-media files at 1.544Mbps across North America. Designed and developed applications for Microsoft Windows 95, Windows 98, and Windows NT Version 4.0 using COM/ActiveX, MS Visual Basic, C++ and COM/ATL. Developed file system filters.

Worked with AT&T, IBM, Reuters, GE, Raytheon, Anorad/Rockwell, Hewlett-Packard, Cisco, Imation/3M and Mack Trucks.

Software Design Engineer at Microsoft

April 1988 - April 1989 (1 year 1 month)

Designed and developed the major components of the DOS Compatibility Box for OS/2 version 2.0 (32-bit version) using advanced features of the Intel 80386 processor. Personally implemented the DOS INT 21h support module. Gained in-depth experience with the internal organization and behavior of OS/2 and MS-DOS. Interfaced with technical personnel of IBM Corp.

Principal Consultant at Cherry Hill Software

January 1988 - March 1988 (3 months)

Assisted one client in the finite state description of a manufacturing control procedure. Assisted another client in the detailed design of a real-time air traffic monitoring and display system and the development of a related Unix device driver.

Group Manager at Momentum Systems Corporation

January 1987 - January 1988 (1 year 1 month)

(Promoted from Systems Architect in 5/87)

Lead and supervised three systems programmers and one technical writer. Provided personnel and product development schedules. Released five new corporate data communications products and instituted a release documentation standard. Studied and experimented with UNIX-386.

Principal Consultant at Cherry Hill Software

January 1986 - December 1986 (1 year)

Helped clients meet near-term marketing needs by specifying, designing, and developing microcomputer software. Developed IBM-PC disk directory access modules for use in a disk archive utility. Defined the real-time communications protocol and lead a team that designed and implemented the software for file distribution over a simplex satellite data communication network.

(Also attended Rensselaer in the same time frame.)

Lead Project Engineer at ARMS, Inc.

June 1985 - December 1985 (7 months)

As an ARMS employee, helped clients meet software design and development needs. Projects included designing a low-level inter-machine communication component in a larger communication diagnostic system, development of ROM diagnostics for an embedded 68000-based data diagnostic product for Northern Telecom/Spectron, design and development of magnetic tape controller software, and logical tape interfaces. Also participated in the design of an inter-task communication system between two foreign computer systems.

Project Leader (RPQ Development) at Mohawk Data Sciences

July 1982 - June 1985 (3 years)

Lead small teams in product development. Designed and developed customer special software packages most that quickly became corporate software products, and one that provided program-to-program communication in a local- to wide-area computer network – this included design and implementation of a proprietary protocol at several layers, from link-level to application-level. Provided customized system software changes for specific customer needs. Supported field personnel and corporate marketing. Enhanced existing software products. Diagnosed, evaluated and solved operating system problems. Awarded “President’s Award of Recognition” in April 1984.

Systems Programmer / Analyst at First Albany Corporation

January 1981 - June 1982 (1 year 6 months)

Developed applications and systems software to assist financial research analysts. Selected, integrated, and purchased microcomputer components. Designed and developed communications and device interface software. Developed low-level protocol code to provide 3270 emulation from a microcomputer. Supervised one entry-level programmer. Trained users on the use of applications.

Co-op Programmer at Data General

September 1979 - December 1979 (4 months)

Modified syntax parser of COBOL compiler to recognize programs of various levels of COBOL (FIPS flagger).

Programmer at Dial Data Systems

July 1978 - December 1978 (6 months)

Supported accounting applications in BASIC. Developed support programs to meet individual customer needs.

Programmer at Ad Valorem Records, Inc.

January 1978 - June 1978 (6 months)

Developed applications and systems software for an intelligent communications terminal with an embedded microprocessor. Trained operators in use of the applications.


Rensselaer Polytechnic Institute

BS, Computer Science

Activities and Societies: broadcast engineer, DJ, radio, WRPI, Intel 8080, 8080, Zilog Z80, Z80, assembly languages, BIOS, CP/M, PRIMOS, operating system, internals

St. Stephen’s Episcopal School (Austin)

Activities and Societies: BASIC, FORTRAN, Control Data, CDC, 6600, COMPASS, assembly language, kernel level software, SCOPE, operating system, direct console access, supercomputer, University of Texas

Spring Woods High School (Houston)

Activities and Societies: Orchestra, Violin

Other Interests

Cycling, Acting, Photography


[file] daniel_norton_resume.doc10/21/10 12:20 pm27.5 KB
[file] daniel_norton_resume.pdf03/23/09 1:01 pm111.81 KB