Andrew T. McFadden

(This is a detailed work history that has accreted over time, rather than a carefully crafted résumé, but it'll do for now.)


Things I've done recently:

Employment History

faddenSoft -=- November 2017 - Present

Notable projects:

castAR, Inc. -=- June 2016 - June 2017

Software engineer and architect, developing software for an augmented reality headset system.

Key responsibilities:

As a result of my work at castAR, I am named as an inventor on the following issued patents:

US10621707 2020/04/14 Table reprojection for post render latency compensation

The company went out of business in June 2017. I was briefly employed by CastAR (ABC), LLC during the asset auction period, to help potential buyers understand the value of the intellectual property. (The assets were purchased by Tilt Five.)

faddenSoft -=- December 2014 - June 2016

Reprising my role as founder, chief architect, and head dish washer, I re-founded the 2002-era faddenSoft, LLC as a sole proprietorship.

Notable projects:

Android, Inc. / Google, Inc. -=- May 2005 - June 2014

I started as a Senior Software Architect at Android, a 10-person startup.  The company was acquired by Google in July 2005.

2012 - 2014: System-Level Graphics 2012: (internal stuff) 2011 - 2012: Calendar app 2006 - 2011: Dalvik VM 2005 - 2006: Application Framework

At various times, I learned Java, Javascript, Python, ARM assembly, SWT, and wxWidgets when I needed to use them.

I actively assisted developers on stackoverflow.

As a result of my work at Google, I am named as an inventor on the following issued patents:

Computer application pre-permissioning
Computer application pre-permissioning [continuation]
Debugger connection
Debugger connection [continuation]
Self-signed certificates for computer application signatures
Self-signed certificates for computer application signatures [continuation]
Self-signed certificates for computer application signatures [continuation]

FaddenSoft, LLC -=- August 2002 - May 2005

Founder, member, chief architect, and head dish washer.  I worked on projects that interested me and published them as freeware or shareware on the web, and occasionally did contract work.  Notables:

Technical Consultant -=- March 2005 - April 2006

Provided technical expertise to a law firm during software patent litigation.

Akimbo Systems, Inc. -=- November 2003 - December 2003

(Software engineering contract.)  Developed an event logging system in C# .NET.  Developed an API for engineers to use to log interesting events to a compact binary format.  Wrote log harvesting and aggregation servers, as well as tools for sorting and formatting event logs.

CiderPress -=- initial shareware release March 2003, open-sourced March 2007

Developed CiderPress, a Windows application for manipulating Apple II archives and disk images.  Features include a full set of archive operations (similar to WinZip) as well as Apple II-specific text and graphic file format converters.  The program uses low-level I/O operations to access Apple II hard drives, floppy disks, CF cards, and CD-ROMs.  Five different filesystems are supported.  The project was developed in C++ (about 100K lines of well-commented source code), using Visual Studio 6.0 and the MFC library.  (I did a "refresh" in early 2015 to get it working with modern compilers and tools.)

Moxi Digital / Digeo, Inc. -=- January 2000 - July 2002

Software architect and team lead.  Moxi built a set-top box featuring multi-tuner video recording, CD jukebox, MP3 ripping and playback, DVD playback, and wired or wireless distribution.  The device went on to win Best In Show at the January 2002 CES convention.

Moxi Digital was originally known as Rearden Steel Technologies.  It was acquired by Digeo in May of 2002.

Responsibilities and achievements:

NotifyMe Networks -=- January 2000

Software engineering contract (two weeks with ongoing advisory relationship). Helped design the NotifyMe service.  Developed service launcher and some service infrastructure libraries.

The NotifyMe service used a bank of outbound phone lines to provide automated, interactive customer notifications.  Target customers were corporations that wanted to provide information to their customers and get simple feedback.  Examples include online auction sites and furniture delivery companies.

WebTV Networks, Inc. / Microsoft, Inc. -=- March 1996 - December 1999

Software engineer in the online service development group.  WebTV runs an online service, connecting users to the Internet with a television set-top box.  The service was initially written in C on BSDI, but was primarily developed on Sun Solaris 2.x (SPARC).

WebTV was acquired by Microsoft in August of 1997.

Primary responsibilities:

Other achievements:

Most development had a high level of visibility in Customer Care, Operations, and Business Development.

As a result of my work at WebTV, I am named as an inventor on the following issued patents:

US05838927 1998/11/17Method and apparatus for compressing a continuous, indistinct data stream
US05940074 1999/08/17Remote upgrade of software over a network
US06023268 2000/02/08Reducing latency while downloading data over a network
US06230319 2001/05/08Managing interruption while downloading data over a network
US06259442 2001/07/10Downloading software from a server to a client
US06317792 2001/11/13Generation and execution of scripts for enabling cost-effective access to network resources
US06473099 2002/10/29Automatically upgrading software over a satellite link
US06614804 2003/09/02Method and apparatus for remote update of clients by a server via broadcast satellite
US06779034 2004/08/17Cost-effective access to network resources

Catapult Entertainment, Inc. -=- August 1994 - March 1996

Software engineer in the online service development group.  Catapult created the XBAND Video Game Modem and Network, a device and service that allowed owners of Sega Genesis and Super Nintendo Entertainment System (SNES) consoles to play against other users over a phone line.  (Catapult was later purchased by Mpath Interactive, a/k/a HearMe.)

Major feats:

Lesser feats:

Highland Digital -=- June 1994 - July 1994

Software engineer.  Highland Digital was primarily a Sun value-added retailer (VAR).  They kept a small software team to develop products that addressed specific problems.

In brief:

Amdahl Corp. -=- June 1991 - May 1994

Software engineer in the UTS System Software Group.  Amdahl built IBM-compatible mainframes and software to run on them.  UTS is Amdahl's mainframe UNIX product, based on SVR3 and SVR4.  As demand for mainframes slowed, Amdahl began to move toward Sparc-based systems.

Things I did:

Other Projects

CD-Recordable FAQ -=- March 1996 - 2010(-ish)

Created the Frequently Asked Questions list for CD recording, starting with the list of questions that I wanted to have answered.  The FAQ currently fills about 250+ pages (depending on how you print it), has been translated at various times into Hungarian, Turkish, Italian, French, Russian, Spanish, German, Dutch, and Chinese, and at its peak got several thousand visitors a day.  Customer support organizations at major hardware and software companies regularly referred customers to it as a resource.  I have been interviewed by various newspapers and made a live appearance as a guest on TechTV's "Call for Help" program.

The FAQ is converted from an ASCII text Usenet posting to an indexed, multi-page HTML format using a text-to-HTML program I wrote for the purpose.

NufxLib and NuLib2 -=- February 2000

Designed, implemented, and documented a data archiving library and application. The NufxLib library allows applications to add, extract, rename, delete, and examine the contents of NuFX archives (popular in the Apple II world, mainly for use with software emulators). NuLib2, a replacement for the original NuLib (see below), is a command-line application implemented with NufxLib.  Both are available as source code on GitHub under BSD licenses.

HardPressed[tm] -=- March 1992 - July 1993

Designed and implemented "HardPressed", a transparent file compression product for the Apple IIgs.  Project involved extensive patching of the operating system, development of GUI user applications, and writing lots of code that had to be absolutely reliable.  Sold as a commercial product through WestCode Software.

The complete source code is available here.

Hacking Data Compression -=- October 1992 - January 1993

Developed a 12-part online course for the GEnie online service, entitled "Hacking Data Compression".  The course taught compression theory and algorithm implementation, focusing on lossless data compression for Apple IIgs applications written in C or 65816 assembly.

Netrek Enhancements -=- December 1991 - May 1994

Developed several enhancements to Netrek, a multiplayer space combat game written for UNIX and the X window system.  Among them:

I gave a deposition for the defense in a patent lawsuit (HearMe vs. Lipstream Networks re: US 5,822,523) where Netrek was used as an example of prior art.  And again, when the same patent came up in PalTalk vs. Microsoft.

Optical Disc Jukebox Daemon -=- Spring 1991

Wrote a client library and server application to control an optical disc jukebox that the Berkeley CS department had acquired.

NuLib -=- Early 1989 - 1991

Developed a full-featured file archiver for use with Apple II ".SHK" archives.  NuLib was written in C and ported to a wide variety of different UNIX systems.  The program is still in use, mainly by Apple II emulator enthusiasts, though it has largely been replaced by NuLib2.


Graduated from the University of California at Berkeley with a B.S. degree in Electrical Engineering and Computer Science, May 1991.

Outside interests include martial arts, notably Krav Maga, Muay Thai, and Danzan-Ryu Ju-jitsu. As part of my martial training I am certified in seifukujitsu (massage therapy).

I have been known to perform certain acts of interior decoration.

Last updated: 2020/07/21