Charles Hayden


     5930 Mont Blanc PLace NW
     Issaquah, WA 98027


    425 522-3776
    alt: 425 647-7574

Photo of charles hayden 


New Stuff

bullet.gif (943 bytes) Trekking in Nepal
bullet.gif (943 bytes) My Northwest Hiking blog
bullet.gif (943 bytes) CloudMaster Overview
bullet.gif (943 bytes) CloudMaster (open source AWS job manager)
bullet.gif (943 bytes) MRToolkit (open source Hadoop toolkit)
bullet.gif (943 bytes) Memorable Adidas Ads
bullet.gif (943 bytes) Photo Gallery

Hikes and Adventures -- With Pictures

s97-icon.jpg (1848 bytes) My hikes and adventures
Windham High Peak Catskill hikes and adventures



bullet.gif (943 bytes) Eliza in Java
bullet.gif (943 bytes) My Software
bullet.gif (943 bytes) My Resume
bullet.gif (943 bytes) Family Photo Gallery
bullet.gif (943 bytes) Asterisk@Home Setup
bullet.gif (943 bytes) Per Brinch Hansen Archives

bullet.gif (943 bytes) Places to Run
bullet.gif (943 bytes) Near Lincroft Avaya
bullet.gif (943 bytes) Near Holmdel Bell Labs
bullet.gif (943 bytes) Near Murray Hill Bell Labs
bullet.gif (943 bytes) Navesink Area
bullet.gif (943 bytes) Fair Haven
bullet.gif (943 bytes) Running with a GPS
bullet.gif (943 bytes) Memorable Adidas Ads
bullet.gif (943 bytes) Driving to work (Sonus)
bullet.gif (943 bytes) Scheme Interpreter, Feb 2003
bullet.gif (943 bytes) My Job,

Other Illustrated Subjects

bullet.gif (943 bytes) Ben's Rice Graduation (May 2000)
bullet.gif (943 bytes) Family Snapshots (October 1999)
bullet.gif (943 bytes) Silver Wedding Anniversary (June 1999)
bullet.gif (943 bytes) Philadelphia Marathon (November 1999)
bullet.gif (943 bytes) Jersey Shore Marathon (April 1999)
bullet.gif (943 bytes) Family Snapshots (December 1988)
bullet.gif (943 bytes) Family Snapshots (1997)

bullet.gif (943 bytes) Building a house (1992)
bullet.gif (943 bytes) Pictures taken at work (Bell Labs)
bullet.gif (943 bytes) Aerial photos of New Jersey
bullet.gif (943 bytes) Panoramas

bullet.gif (943 bytes) Carrie's Home Page
bullet.gif (943 bytes) Ben's Home Page
bullet.gif (943 bytes) Our Dogs' Page


My Interests

bullet.gif (943 bytes) Running, Basketball, Ballroom dancing.
bullet.gif (943 bytes) Hiking, Backpacking.
bullet.gif (943 bytes) Maps, navigation, GPS.
bullet.gif (943 bytes) Distributed software systems. Currently I am working with Amazon Web Services as a platform.
bullet.gif (943 bytes) Embedded languages, especially for use in distributed applications.  I have a particular interest in scheme.
bullet.gif (943 bytes) Ruby and Rails. I like ruby because it combines the simplicity and elegance of scheme and smalltalk with the practicality and pragmatism of C++, Java, and PHP. I like Rails because it does away with so much of the tedious "busy work" of web based applications, and lets me get right to the interesting parts.

My Job


I am having a great time working at Microsoft.  The ambition and the talent here are impressive.  I am working on the software that connects one Messenger user to another.  Hundreds of milions of them.  A truly demanding challenge.  

New York Times Digital

The New York Times is a wonderful company to work for.  Stimulating environment, a lot of smart, dedicated, and energetic people.  It is really rewarding working where people believe in the mission of the company.  The management there treated me with great respect, even though I was brand new in the industry.  I was really starting to contribute, working with Hadoop on EC2 gleaning information from the massive log files.  I built a computation framework on top of Hadoop, inspired by (but better than) Google's Sawzall.  Using the framework, I could create log analysis programs in a page of code or less.  I hope that this framework can be released as in open-souce project.


Until recently, I worked at Avaya.  I designed and built software that provides the SIP infrastructure for a whole range of switching products.  I was responsible for a provisioning system, whic kept al the sbscriber information and distributed it to the run-time components in the system.  Then I designed and built a duplex redundancy system, which would take over in seconds if the primary system failed.  Finally I designed a geo-redundancy system that was more loosely coupled but more resiliant to failures. 

The latter depended on a data replication system that I designed (and patented) that distributed data in a database among members of a distributed system. The replication system, which did far more than any commercial system available, could do transparent upward and downward (master to slave and also slave to master) replication, could replicate subsets of the data to different replicas, could translate on the fly between schema versions (to later or eralier versions), was based on updates as well as audits (so it would converge given any combination of starting states), and was reconfigurable without any administration (new nodes coul come online without changing any config files or running any commands on the master).

Obviously I am very proud of this replication system, which handles many real-world problems that existing systems ignore: needing to upgrade a distributed network a piece at a time while continuing to offer service, the ability to back up and restore any network element (master or replia) and have the replication cope by converging, handling unreliable cmmunication, etc.  And all of this took care of itself -- no administration was needed or exposed -- because the customer wants a phone system, not to become a distributed database manager.

My Patent at Avaya:

bullet.gif (943 bytes) Data Distribution in a Distributed Communication Network (pending)

My thoughts on Avaya (2008)

In its first few years after spinoff from Lucent, Avaya retrenched, paid down the big debt they inherited, and did well by introducing successful new products.  I was part of that, and it felt good to be producing products of value.  Now the company direction seems to have been captured by a succession of true believers, which take the products in their chosen drection.  First decentralization, then centralization, then decentralization, now centralization.  First pure SIP, then SIP as an interface to traditional telephony, then pure SIP.  First a hardware/software turnkey solution, then a software-only product for use on customers' own hardware, then back to a bundled solution.  First, "let's be standards compliant" then "let's be leaders in establishing standards" then "let's ignore standards and make our own extensions."  At the end, the company leadership was taken over by people from a sales background, who hired more salespeople and laid off most developers, intending to OEM products from other suppliers.


Before that I worked at Sonus Networks, building a class 5 softswitch for IP-based telephony.  This was fun because we started with a clean slate -- nothing but bare hardware with Solaris, and built everthing.  I designed the switching application framework and the fundamental telephony features (two way calling, call hold, feature access codes, call forwarding, and three way calling).  

The DotCom crunch affected Sonus, and they had to mothball the class 5 softswitch project for a while, but they revived it and it is still going strong.  Last I heard they have never found a bug in my application framework, and each time they need to add a feature, they go in and find that I had already thought of that.  Son in five years, it has never needed any enhancement. 

My thoughts on Bell Labs (2000):

I used work at Bell Labs -- part of Lucent Technologies. After 20 years with the company, I finally gave up hope that it would get its act together, so I left.  For many years I was content to design and build great products that were doomed to failure in the marketplace because of poor marketing or sales.   What finally convinced me to leave was when we couldn't even design good products.

Since I left Bell Labs, it has seen one disaster after another: its stock has fallen 80% 90%, it has fired its CEO, it has come under SEC investigation, it has restated its earnings several times.  Now I wonder if it will survive (Note: it didn't -- it is now Alcatel, an continuing to suffer).  I am really sorry to see it come to this - so much squandered.

My patents at Bell Labs:

bullet.gif (943 bytes) Computer Telephony User Interface 4,653,090
bullet.gif (943 bytes) Audiographics Teleconferencing 4,953,159

My Projects at Bell Labs:

bullet.gif (943 bytes) The last project I worked on was the Lucent Softswitch.  I was involved in providing an external programming interface for it.  The first step was making the standards, which means I was heavily involved in JTAPI, JAIN, and Parlay.
bullet.gif (943 bytes) Before that I worked implementing VoiceXML, a language for programming telephone media systems such as voice response systems.
bullet.gif (943 bytes) I  worked for a time as an internal consultant to teams in Lucent who were exploring the adoption of Windows NT and especially COM and DCOM.  I helped organizations who wanted to use this technology in their products.
bullet.gif (943 bytes) In 1997 and 1998 I was part of a team developing the Virtual Telephone.  We announced this product at CTExpo in March 1998, and I was there to demonstrate it in action.  Unfortunately, Lucent cannot see the value in this product, and has decided not to market it.

Bookmark and Share