Ben Kuehmichel

Senior Software Engineer, Team Lead at Google

How does this work?

Specialties: C++, Java and Python Development, data quality, sql optimization, algorithm analysis, workflow processes and automation, scalability and fault tolerance, reliable software.

Ask me about
Protocol Buffers
Java Development
Google Cloud Spanner
Work experience

Jun 2018 - Present


Senior Software Engineer

Leading/designing/implementing initiative to decouple intent from execution for certain types of work to enable industrial automation efforts to have process flexibility from human driven processes. Designing and leading implementation of deprecation of certain execution related dB tables. This is a multi year, multi team effort that will allow simplification of existing processes and free industrial automation efforts to optimize for robotics solutions. It also enables sharded software stacks which will improve Google’s infrastructure reliability by eliminating use of a global, single point of failure.


Aug 2011 - May 2018


Senior Software Engineer

Designed and implemented (a component of a larger effort) automated ordering pipeline for network hardware (8-9 figures of orders per year) which significantly shortened the network deployment cycle saving Google 10s of millions per year. Member of core implementation team for a Java based workflow engine used by hardware lifecycle software and handling 100k transitions per day (circa 2014). Created C++, Java and Python client APIs and designed and implemented undo functionality into workflow engine. Designed and implemented monitoring and graph visualization UI in Python. This workflow engine is now widely used by a variety of Ops teams at Google for managing workflows and automation and is considered the greatest success of the broader Datacenter Software team. Participated in the design and rewrite of a Python/Java based hardware deployment, repair and decommissioning workflows used by Operations Technicians. Designed and implemented automated weekly release cycle (greatly reduced developer work in weekly release), rewrote old buggy decommissioning system and designed and implemented cross team config based system for overrides (removing need for developers to manually, in code, perform overrides). After refactor, team was able to shrink from 5 members to 3 while increasing development velocity by over 100%. Served in on-call rotation to assure repair workflow service SLA.


Oct 2007 - Jul 2011


Senior Software Engineer

C++ UI developer for EIM software using MFC. Java developer for an N-tier business user data quality product using Apache Lucene for search results, Apache Axis web services, Apache Derby embedded DB and implementing data analysis and machine learning algorithms for data inference.


2003 - Jul 2011



Own and operate small IT business providing PC support and service, small network setup and maintenance, custom PC building, application training and custom software creation.


Apr 2006 - Oct 2007

Business Objects

Software Engineer

C++ development in Data Quality. Research in Java and Flex technologies. Some tool development with Python.


Jun 2005 - Apr 2006


Software Engineer

C++ development of Data Quality UI using QT library.

Jun 2002 - Jan 2005

Acuity Insurance

IT Intern

Various IT work from help desk, system replacement and IT administrative tasks to application programming in Java.


2005 - 2009

MS, Computer Science

2000 - 2005

BS, Computer Science

Talk to Ben

@ Copyright 2020 OfficeHours Technologies Co.