Curriculum Vitae - David A. G. Wilson

Name: David Andrew Graham Wilson Telephone : Witheld
Date of Birth: 30th November, 1966 Email : dave@webartz.com
Place of Birth: Ayr, Scotland Status: US Permanent Resident
Nationality: British Citizen LinkedIn: http://www.linkedin.com/in/dawilson
Current Address: Witheld

Summary

I am an enthusiastic and highly productive software engineer with 20 years of C and assembler experience on PC and embedded systems. I have a track record as an excellent problem solver and extensive experience in system-level debug of particularly tricky problems. While my main professional interest is in design, development, test and documentation of well-architected software, I interact well with others and relish technical interaction whether that be in joint development projects with customers or in presenting training courses.

Employment History

Conexant Systems - Broadband Media Processing (2004 - )

Austin Design Center

Currently leader of the Architecture and Performance working group with responsibility to define and direct software architecture for Conexant settop box silicon products. Additional responsibilities include technical lead on a cable settop box project for a major US customer and mentoring/reviewing/guiding work for several groups of engineers based in India.

With a group of 4 other engineers, developed the Conexant Multi-Instance Architecture and Conexant Set Top Box API , a wide-ranging programming interface forming the low level driver set implemented on all Conexant decoders from 2004.

Designed and implemented a demonstration and system test application for use on Conexant's High Definition reference settop boxes and as a bringup tool for customer platforms. This project involved a control class-based graphical user interface handling system and highly reusable modules for DVB SI parsing and service list management.

Technical lead on various customer settop box integration projects for networks including BSkyB (UK) and Premiere (Germany) and involved in system integration and troubleshooting of projects for networks including Dish Network (USA) and DIRECTV (USA).

Developed and presented various training courses in ARM software development and Conexant's software architecture for internal development groups and customers in Europe, Asia and the United States.

Gained experience in embedded application development, Nucleus+ RTOS, embedded Linux, HDTV systems, DVB, ATSC, H.264, NDS HDI middleware, ARM ADS & RVDS toolchains, Lauterbach Trace32 debugger and low level ARM system debug techniques.

Conexant Systems - Digital Infotainment Division (1997 - 2004)

Austin Design Center

Software Team Leader on project to port OpenTV interactive TV environment to a new DVB digital TV demux/decoder/processor ICs developed in Austin. Code responsibility included Kernel Adaptation Layer (a thin layer above the RTOS providing a standard API and allowing for later RTOS switch without greatly affecting any other code), front panel keypad driver, analog TV tuner driver, OpenTV control task, demonstration, menu and banner applications. Responsible for overall integration of OpenTV ROM image and interfacing with OpenTV engineers in California and customer engineers during board bringup and various stages of product test, validation and network integration.

Experience gained in RTOS use, real time systems, pSOS operating system, ARM assembler and tools, OpenTV EN, EN2 and 1.2 Hardware Porting Kits, OpenTV Software Development Kit.

Developed a flexible project make process from the ground up allowing developers to submit file lists to a central make utility rather than having to develop individual component and testcase makefiles.

Rockwell Semiconductor Systems - Brooktree Division (September 1996 - 1997)

Austin Design Center

Following Rockwell's acquisition of Brooktree, I continued work on PC graphics and video subsystems until March 1997 when Rockwell decided to pull out of this market.

During a transitional period, I developed Win32 video applications for a sister group in San Diego using Microsoft Visual C++ and MFC. These applications, two for TV viewing and one for high quality video stills capture, were based upon a class library I developed to create and manage non-rectangular, bitmap based objects thus allowing an interesting, 3D user interface to be built easily.

Still image capture app (debug build!)

Video still capture application (debug version - final version background was textured grey!). This application allowed users to preview any video source attached to their Bt848 or Bt2164/829 based adapter and capture stills to file in various image formats including JPEG, BMP and TIFF.

XTremeTV application

Advanced TV application including channel name database, internet TV guide, channel surfing, control windows which hide automatically if not being used, point and clickable "LED" control panel.

Brooktree Corporation (September 1994 - September 1996)

Texas Design Center, Austin

Produced Windows 3.1 Display Control Interface (DCI) driver for the Brooktree BtV MediaStream 2115 graphics and audio controller product. This has been widely regarded as the most functional and bug-free DCI driver on the market. Other Windows 3.1 drivers produced for Video for Windows draw handlers and a pixel format conversion library.

Wrote the first DirectDraw display driver for Windows 95 developed outside Microsoft for the BtV2115 and later ported it to the next generation 2164 controller. Part of this development was carried out during an 8 week stay in Redmond.

Acted as Brooktree's technical interface to the DirectX, Broadcast PC and ActiveMovie groups in Microsoft and participated in many design reviews and porting labs. Suggestions made by me were incorporated into the DirectDraw architecture.

Developed a DirectDraw Video Port Extensions driver for 2115 and 2164 for use by Microsoft Broadcast PC group and several customers. This work was carried out in close collaboration with the VPE architect in Redmond.

Attended many conferences and trade shows demonstrating Brooktree products. This work has also involved demonstration development. One such demonstration was used by Microsoft during WinHEC 96.

Developed a Win32 TV display application for Windows 95 and Windows NT for a specific Brooktree customer. This application was very well received and helped close several sales for Brooktree video decoder ICs.

IBM (UK) Laboratories Ltd. (April 1993 - August 1994 )

Networking Systems Conferencing Products - Future Products

Responsible for defining the real-time video subsystem architecture for future collaborative working products. Work involved defining an application programming interface and an installable video codec support interface.

Additional responsibilities included implementation of the architecture on several video codecs, taking part in reviews of other programmers' designs and providing support to customers of IBM Person to Person/2.

IBM (UK) Laboratories Ltd. (December 1991 - April 1993)

Advanced Communication Products - Multimedia Communications

Responsible for defining and implementing video support for IBM Person to Person products on both the OS/2 2.x and Windows 3.1 platforms.
Gained experience of OS/2 version 2 and Windows 3.1 subsystem development, digital video handling and, specifically, the AVK interface to IBM/Intel's ActionMedia II adapter.

IBM (UK) Laboratories Ltd. (December 1990 - December 1991)

European Distribution Development - Communications Software

Developed the NetBIOS server system for use in an X.25-over-LAN project.

Experience included OS/2 1.3 and NetBIOS programming in C.

IBM (UK) Laboratories Ltd. (September 1988 - December 1990)

Personal Systems Products - Display Adapters Engineering

Responsible for IBM Image Adapter/A scanner and printer interface hardware and software, and support of internal users in Canada, USA and Japan.

Co-developed and supported a library of image processing functions running on the Image Adapter/A onboard processor. This code was used in the development of image processing and document imaging applications by business partners. I was also responsible for a substantial OS/2 Presentation Manager application demonstrating the power of Image Adapter/A. This software was widely used at trade shows including Comdex.

Experience included assembler programming, display adapter hardware, asynchronous communication hardware and software, image processing techniques, Presentation Manager and Windows 3.0 programming.

Technical Skills

Education

Degree:

University of Glasgow, 1988

B.Sc. (Combined Honours, First Class) in Physics and Electronic Engineering,
Final Year subjects included Microprocessors and VLSI Design.

Sponsored throughout degree by ICI Chemicals and Polymers Division (Control Engineering).

Secondary School:

Lanark Grammar School, Lanark, Scotland

Scottish Certificate of Education, Certificate of Sixth Year Studies (1984)
Physics, Chemistry, Numerical Analysis and Computing, Algebra, Calculus
Scottish Certificate of Education, Higher Grade
6 subjects including Music (1984) and French (1983).
Scottish Certificate of Education, Ordinary Grade
7 subjects including History (1982).

Outside Interests

Photography

I am a very keen photographer and have exhibited work in various exhibitions. Although previously very keen on 35mm monochrome and transparency work, I have migrated to a fully digital darkroom now and am a confirmed Photoshop addict.

Choral Singing

I have sung bass and tenor for several choirs and enjoy participating in performances across the whole spectrum of choral music.

Web Site Design

I have been very interested in web site design and have developed many sites for friends, local non-profit organisations and commercial clients over the last 12 years.

Referees

Available on request.