Pat Helland

Pat Helland arrived at UC Irvine in September of 1973 as a math major and took his first college programming class, ICS 1. He fell in love with programming. He was distraught to realize that he would not have access to the Xerox Sigma 7’s teletypes over Christmas. So, he appealed to the ICS department chairman, Martin Kay, for an account. Dr. Kay arranged for access over the break and gave Pat a programming assignment. In January of 1974, Dr. Kay enrolled Pat in his first graduate class in computer science. Pat began flunking his math classes due to lack of attention.

Soon, Pat found part time work as an operator on the Dec PDP-10 and Xerox Sigma-7 within the ICS building. This allowed him access to unlimited programming time. He began life on a 36-40 hour day to maximize time programming and, occasionally, attend class. He took most of the computer science classes that he could but found little reason to take English, History, and other such nonsense.

In the Fall of 1975, Pat was 19 and met a waitress working graveyards at the Spires at the corner of Main and MacArthur. She was 23 and had 3 kids aged 5, 3, & 3. By December, there was a surprise on the way and Pat needed a job to feed an instant family. So, at age 20, he dropped out of UCI after 2-1/2 years and got a crappy job to pay the bills.

In 1978, Pat moved the family to Silicon Valley to get a programming job at BTI Computer Systems. He and a friend from UCI were chartered to build a database management system and proceeded to study what that was. We learned a lot from the literature and built major portions of a simple DBMS. They were especially interested in the papers written by Jim Gray of IBM and then of Tandem. Soon, the small company was getting smaller… That led Pat to realize he should work at Tandem with Jim Gray.

So, in July of 1982, Pat turned down an offer to join a 30 person company called Oracle and went to Tandem. There, he inherited major portions of a product called TMF (Transaction Monitoring Facility). TMF provided the database logging and recovery for the most successful fault tolerant system of its time. The NonStop System was a message based multiprocessor that provided extreme high availability and ran many stock exchanges, federal funds transfers, and other major enterprises. Pat rewrote TMF, evolving it in place, to turn it from the least reliable portion of the NonStop System to the most reliable. In addition, he built many major components of NonStop SQL, the first commercial shared nothing database system. Starting at Tandem, Pat benefitted in countless ways from the guidance of Jim Gray who introduced him to presenting, writing, and to the academic world.

Realizing that Tandem would not be succeeding as it had been, Pat moved to HaL Computer Systems which was largely owned by Fujitsu. When it became apparent the efforts into advanced transaction processing were stuck behind the efforts in hardware design, Pat moved quickly to drive the architecture and design of the 64-bit Memory Management Unit for the SPARC V9 system. It turns out you don’t have to know anything about hardware if you can talk to people that do. You need to ask questions, drive agreement and write stuff down. Once the MMU was into detailed design, Pat set out to build a scalable CC-NUMA (Cache Coherent Non-Uniform Memory Architecture) multi-processor for SPARC V9. This was shipped by Fujitsu a few years later.

In 1994, Pat decided to move to Seattle to work for Microsoft building an enterprise platform. This was a bold move since Microsoft was really only focused on little tiny desktop PCs at the time. He led the architecture for the first N-tier transactional system. The products were called Microsoft Transaction Server and Distributed Transaction Coordinator. Soon after, Pat decided N-tier transactional systems were brittle and he started advocating programming models that would soon be known as service oriented architectures.

Starting in 2000, Pat drove the architecture and design of a high-performance, exactly-once, transactional messaging system called SQL Service Broker. This system, built deeply into SQL Server, delivered as much as 180,000 transactionally correct messages per second. He was asked to work on the WinFS project, combining database and filesystems, which was a mess. That stunk. Soon, he moved on to an 18 month stint of Architecture Evangelism (i.e. telling stories to customers). After this, he quit and went to Amazon.

After being widowed in 2004, Pat decided to move to Amazon in 2005. That year, he met and married his wife, Lisa. At Amazon, Pat worked on distributed systems and service oriented architecture. He helped with the initial design of the Dynamo storage system and worked on the Product Catalog team, a massively complex data transformation and collation system. After all attempts to publish academic papers were consistently denied, he waited for his first vest and quit, walking from a ton of money.

Returning to Microsoft in 2007, Pat worked to edit the SIGMOD record describing the lifetime achievements of his mentor, Jim Gray, who had recently gone missing at sea. Soon, he was working on enhancing COSMOS, the massively scalable big data analysis engine behind Bing. His first project added database technology to the data representation and processing in COSMOS with indexing and data affinitization within the cluster. These techniques reduced to computational needs of a 50,000 server system by 50%. The second project provided event driven distributed atomic transactions over petabytes of data. This was designed to support over 1 million atomic transactions per second to support crawling the web.

In 2012, Pat started at Salesforce where he has been working on novel database, storage, and datacenter architectures.

Pat holds 31 US patents and has authored or coauthored over 20 papers. He was recently asked to write a regular column for ACM Queue. Pat has chaired numerous conferences including being the permanent co-chair for HPTS, the High Performance Transaction Systems workshop.