Robert E. Beaty, Ph.D.
225 North Ave, Naperville, IL
me@bobbeaty.com
http://www.bobbeaty.com/

Tools Expertise

Considering only those tools, applications, methods and practices that have been used in production-level capacities, the list includes, but is not limited to:

  • Operating Systems - RedHat Linux 6.x/7.x/FC 3-7/RHEL 3-5, CentOS 5-6, Ubuntu 10-14, MS-DOS, Windows 3.1/95/98/NT/XP, Solaris, NeXTSTEP, OPENSTEP, MacOS 6.x/7.0/X
  • Development Languages - C, C++, Objective-C, Clojure, Ruby/JRuby, Java, FORTRAN, Pascal, VB/VBScript, 16-bit ASM, PHP, ASP, csh, bash, perl (including CGI)
  • Developer Tools - Git, GutHub, CVS, PVCS, SourceSafe, MQSeries, Sun ONE Message Queue, GNU Make, AutoDoc, JavaDoc, Glade, UML and Rational Rose, Apache
  • Databases - CouchDB, MongoDB, Hadoop, Oracle (PL/SQL), Sybase (T-SQL), SQL Server (T-SQL), PostgreSQL (PL/pgSQL), Paradox 3.5/4.0, Access (VBScript), ODBC, JDBC
  • Networking - TCP/IP, IPX, Novell, Windows NT/2000, NFS, Cisco, NAT, Routers

Representative Projects

Trident Guaranteed Rate
Highlights: As a part of governmental regulation changes (TRID), a system to enable collaboration between the title company agents and the lenderŐs agents needed to be built. This needed to have versioning of the changes, tracking of editors, email notifications, alerts, reporting and management tools.

Design, Development, and Testing of the service/application with security and a UI so that the TRID deadline (5 weeks) was met.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Postgres, Functional design and coding

Polaris Guaranteed Rate
Highlights: To enable other services to have access to the historical, versioned, loan data for any number of purposes - QC (who did what, when), data mining, easy data access for alerting and workflow, etc.

Design, Development, and Testing of the service/application with security and a UI so that developers in the legacy system and new system would have similar access to the company-wide data.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Postgres, Functional design and coding

Sulley Guaranteed Rate
Highlights: To enable other services to call the mortgage pricing service, Optimal Blue, a service needed to be written to help transition away from the monolithic legacy system.

Design, Development, and Testing of the service/application with security and a UI so that developers in the legacy system and new system would have similar access to the company-wide reference service.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Functional design and coding

The Tube Guaranteed Rate
Highlights: To enable other services to call the Fannie Mae automated underwriting service, Desktop Underwriting, a persistent, historical, service needed to be written to help transition away from the monolithic legacy system.

Design, Development, and Testing of the service/application with security and a UI so that developers in the legacy system and new system would have similar access to the company-wide reference service.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Postgres, Functional design and coding

Mulder Guaranteed Rate
Highlights: To enable other services to call the appraisal ordering service, LenderX, a persistent, historical, service needed to be written to help transition away from the monolithic legacy system.

Design, Development, and Testing of the service/application with security and a UI so that developers in the legacy system and new system would have similar access to the company-wide reference service.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Postgres, Functional design and coding

NS Toolkit Guaranteed Rate
Highlights: To enable small services to be written quickly with a highly-reliable infrastructure, a clojure library needed to be created, and maintained, which would allow all other developers to simply access resources (AWS, SQS, databases, other RESTful services) in idiomatic clojure, and therefore focus on the creation of unique business-logic and value.

Design, Development, and Testing of the library including testing and research into internal and external services.
Primary Tools: Clojure, Mac OS X, Linux (Ubuntu 14.04), Postgres, Functional design and coding

Bartender Centro
Highlights: The large number of Ad Servers and sources of external data to Centro got to be a significant load on the existing system, and so a new service was spun up that would be focused on doing just this one task, but in a more universal way so that additional services could easily be added, and the data sent to back-end stores.

Design, Development, and Testing of the system to access multiple external sources of client data, handle fail-overs, retries, and storage so that systems could refer to this data internally, as opposed to hitting external sources.
Primary Tools: Clojure, Mac OS X, Linux (CentOS 5), Kafka, Redis, Postgres, Functional design and coding

Unified-Click Stream, Disruption Detector, Finch Analytics Groupon
Highlights: The volume of data flowing through systems at Groupon got to the point that nightly jobs to aggregate, analyze, and report on data were simply too little too late, and a new generation of tools and systems were needed. Real-time - based on the output of all client-facing systems, fast, reliable, and immediately available to all business interests in the organization. These projects are the first in that next generation of analytics.

Design, Development, and Testing of the system to process all real-time log data from all client-facing internal systems, create a unified, coherent data stream from this, calculate and store all results for historical retrieval, and serve this data to several internal groups.
Primary Tools: Clojure, Mac OS X, Linux (RHEL 5), Kafka, Storm, Redis, Postgres, Functional design and coding

Dark Magic Groupon
Highlights: As Quantum LeadŐs need for ever more advanced and complex processing of the incoming demand grew, it was decided to break out that part of Quantum Lead into a separate project - Dark Magic. It was also decided that several new technologies: clojure, Storm, and Hadoop would be used in this project to establish their capabilities in production systems.

Design, Development, and Testing of the system to process demand data from internal systems, merchant data from Salesforce.com, store all calculations for historical retrieval, and serve this demand into Quantum Lead.
Primary Tools: Clojure, Mac OS X, Linux (RHEL 5), Hadoop, Storm, Functional design and coding

Quantum Lead Groupon
Highlights: Having captured the buying habits of Groupon's customers as well as the geographical data they provide, as well as the merchant deals and capabilities, it is a natural fit to mate up the anticipated demand with the available merchants to make the sales representatives far more efficient than guessing what would benefit the merchant as well as the customer. QuantumLead is a system that does this matching and feeds the best leads back into the system for a nice, tight, feedback loop.

Design, Development, and Testing of the system to extract demand data from internal systems, merchant data from Salesforce.com and write updated info to Salesforce.
Primary Tools: Ruby, Mac OS X, Linux (RHEL 5), CouchDB, OOA&D.

DataBusII PEAK6
Highlights: Ever increasing messaging rates from OPRA, NASDAQ feeds meant a new kind of system needed to be designed and built to allow for automatic A/B arbitration, preferred side flipping in case of line outage, and downstream conflation for slow clients, so that fast clients got every message, and slow clients didnŐt overload, or over-burden the upstream systems

Design, Development, and Testing of a toolkit for exchange data processing. Including modular exchange codecs, lockless queues and NBBO engine.
Primary Tools: GCC (C++), Linux (Ubuntu 10), ZeroMQ, MMD, OOA&D.

PricingServerII PEAK6
Highlights: Ever increasing data rates from exchange feeds meant a new pricing (greeks) engine needed to be designed and built to allow for faster throughput, allowing for fast consuming clients as well as slow, and adding the what if scenario capability not present in current systems

Design, Development, and Testing of a pricing (greek) engine taking embedded DataBusII ticker plants, event-driven processing with lockless data structures to enable minimal delays in processing for both high-speed clients and slower, on-demand, clients. To minimize additional components, a request/response what if capability was added to give clients additional capabilities through the same interface.
Primary Tools: GCC (C++), Linux (Ubuntu 10), ZeroMQ, MMD, OOA&D.

MMD PEAK6
Highlights: SOA is fine, but service location, load-balancing, and API mismatches creates difficulties in growing an infrastructure of many diverse services. MMD, or Magic Middle Dude, is PEAK6Ős attempt at solving these issues. Using distributed erlang, services connect to a local MMD node that replicates the services they publish, connects them to services on other nodes, balances the load of all services, and provides API conversion for websocket clients.

Development, and Testing of several local erlang services including accessing mongoDB using erlmongo.
Primary Tools: erlang, mongoDB, erlmongo, Linux (Ubuntu 10).

Falcon Chicago Trading Company
Highlights: Large datasets of risk and greek data for the enterprise, Fast retrieval of large datasets to many web clients with minimal load on the client. Directly delivering to and supporting risk managers and portfolio managers, Meeting Tight Deadlines and Delivering New Features Weekly

Design, Development, Testing and Support of a very large, live, ticking data visualization and data reporting tool for risk positions.
Primary Tools: Linux (RedHat RHEL5), Google Chrome, Java (J2EE), JavaScript, 29West, OOA&D.

MarketMash UBS O'Connor
Highlights: Large Systems Integration issues, C++ Server, J2EE and JMS along with RMI and other middleware technologies, Directly delivering to and supporting traders, Meeting Tight Deadlines and Delivering New Features Weekly

Design, Development, Testing and Support of a multi-tiered, clustered, live, ticking data visualzation and data reporting tool for risk positions in the Hedge Fund.
Primary Tools: Linux (RedHat RHEL3), NT/XP, C++ (GCC), Java (J2EE), MQ Series, Sun ONE Message Queue, JMS, InfoShop (see below), many thrid-party packages, scripting tools (sh, csh, make, etc.), OOA&D.

InfoShop UBS O'Connor
Highlights: Large Systems Integration issues, J2EE, CORBA, MQ Series, JMS, along with RMI and other middleware technologies, Delivering to and supporting infrastructural systems, Meeting Tight Deadlines and Delivering New Features Weekly

Design, Development, Testing and Support of a collector/organizer/aggregator/distributor of non-fast-tick data throughout the organization to provide to other systems at a minimal cost and maximal convenience.
Primary Tools: Linux (RedHat RHEL 3), Java (J2EE), CORBA, RMI, JDBC, XML, Sun ONE Message Queue, many thrid-party packages, scripting tools (sh, csh, perl, make, etc.), OOA&D.

MarketData Server UBS O'Connor
Highlights: MarketData Vendor APIs, C++ server talking to Bloomberg API, Reuters RMDS, CacheStation (see below), and in-house historical data sources, Directly delivering to and supporting infrastructural systems as well as user scripts/apps, Meeting Tight Deadlines and Delivering New Features Weekly

Design, Development, Testing and Support of a MarketData server that allows applications in the organization to use one API (C++/Java/perl) to a single server for getting a large variety of market data.
Primary Tools: Linux (RedHat RHEL 3), C++ (GCC), several thrid-party APIs, scripting tools (sh, csh, perl, make, etc.), OOA&D.

CacheStation UBS O'Connor
Highlights: Reuters RMDS price feed conditioner and cache, Java server talking to in-house API to Reuters RMDS for tick data, caching results and applying rules to get the best market price for each ticker, Directly delivering to and supporting infrastructural systems, Meeting Tight Deadlines and Delivering New Features Weekly

Design, Development, Testing and Support of a caching that allows applications in the organization to obtain a consistently good price from a Reuters data feed.
Primary Tools: Linux (RedHat RHEL 3), Java, in-house APIs, scripting tools (sh, csh, perl, make, etc.), OOA&D.

OneCard BankOne
Highlights: Total Life-Cycle Development, Interconnection via MQSeries Middleware, Meeting Tight Deadlines, Large Java Development.

Architecture, Design, Development and Testing of the back-end systems for a web-based credit card management system for the Commercial Card Services group.
Primary Tools: NT, Solaris, Java, MQSeries, SQL Server, scripting tools (sh, csh, perl, make, etc.), OOA&D.

CellAnalysis The Man from S.P.U.D.
Highlights: High Performance Image Processing, Web Server integration, Unique solutions and algorithms to complex problems.

Architecture, Design, Development and Testing of a server-based image processing system that quantitatively identifies cancerous and non-cancerous cells in multiply stained processes for cancer screening system.
Primary Tools: Linux, Solaris, C, GTK, PostgreSQL, Apache/PHP, scripting tools, OOA&D.

AKit BankOne
Highlights: Design Patterns, Reuse-focused Development, User-focused Deliverables, Internal Sales and Marketing.

Member and Manager of a Technical Architecture Group which focused on all aspects of reuse within the Capital Markets Group - including the creation of AKit. These infrastructural libraries, applications and documentation saved starting groups approximately 10 man-years.
Primary Tools: NeXTSTEP, OPENSTEP, Solaris, NT, Obj-C, Sybase, scripting tools, OOA&D, Management and Sales Skills.

CSPUD++ The Man from S.P.U.D.
Highlights: Large Sparse Matrix Techniques, Topology Analysis, Simulation, Advanced OOA&D.

Architecture, Design, Development and Testing of a C++-based SPICE-like circuit simulation program for traditional Electrical Engineering academic work. This included handling several issues that SPICE didn't handle well - open nodes, looped inductors at DC, and a much improved plotting system.
Primary Tools: Amiga, C++, PlPlot, OOA&D.

Calumet Office System Port-to-Port Consulting
Highlights: Complete Business Modeling, Full life-cycle Development, Business Re-engineering.

Delivered product managed everything about business operation except payroll. This included manufacture, field tank storage, shipping, order processing and rail car management for the company.
Primary Tools: Paradox 3.5/4.0, DOS/Windows, VB, Cicso MPR, Netware 3.11, Co-Session

BKit BankOne
Highlights: Porting from NeXTSTEP/OPENSTEP to Java, Re-useable Object Development, OOA&D.

Ported much of the AKit to Java to facilitate faster development using tested object models.
Primary Tools: NT, Solaris, Visual Age for Java, Visual J++

North Hollow Farm The Man from S.P.U.D.
Highlights: Complete eCommerce Site, Full life-cycle Development, User Interface Development.

Complete eCommerce site for business tailored to their needs including order tracking, credit card acceptance and automatic mailing.
Primary Tools: Linux, Irix, Apache, PHP, PostgreSQL, gimp, vi

Community Projects

perl www.perl.com

Found a bug in the 5.005_03 source that effected Solaris and submitted it for inclusion. Patch was incorporated.

gaim gaim.sourceforge.net

Introduced patch for perl 5.005_03 that gets around non-patched perl versions in perl plug-in. Also patched response parser for the Yahoo IM client.

xchat www.xchat.org

Introduced patch for perl 5.005_03 that gets around non-patched perl versions in perl plug-in.

bidwatcher bidwatcher.sourceforge.net

Patched buffer-overflow bug in one release... added dynamically created buffers in another release... added compile-time UI options in a recent release.

DKit github.com/drbobbeaty/DKit

Created GitHub-hosted project to share atomic and lockless container work in C++. Having been the recipient of works like boost and TBB, it seemed only fair to give back in a way that I havenŐt seen the need filled.

CorePlot code.google.com/p/core-plot

Replaced CoreAnimation encoding problems with NSDecimals to use non-struct-based objects (NSDecimalNumer objects) and retrofitted changes into code for minimal impact

Employment History

January 2015 - Present

Centro - Chicago, IL

Senior Principal Engineer working with existing teams to off-load the gathering of daily Ad Server data from external services, as well as other daily metrics for offline data analytics and analysis.

July 2012 - January 2015

Groupon - Chicago, IL

Expert Engineer in Sales and Planning Group creating demand-merchant matching and demand processing software hooking into the Salesforce.com data as well as internal demand generation systems to enable the sales representatives to be more efficient with their time.

June 2010 - March 2012

PEAK6 - Chicago, IL

Senior Software Architect in Messaging and Data Feed Group creating next generation firm-wide ticker plants and greek pricing server using direct exchange data feeds, as well as in-house valuation libraries and an overall architecture emphasizing low-latency processing.

March 2009 - June 2010

Chicago Trading Company - Chicago, IL

Senior Developer in newly created Risk Analytics Group creating firm-wide risk and P/L applications for senior management. Duties include design, development and support of live, ticking, risk display and reporting tools.

June 2001 - March 2009

UBS O'Connor - Chicago, IL

Consultant/Developer on Risk Management applications for the trading floor. Duties include design, development and support of live, ticking, risk display and reporting tools delivered through a three-tier, clustered system based in Java (J2EE), RMI, CORBA, JDBC, XML and associated datasources.

February 1996 - June 2001

BankOne - Chicago, IL

Vice President/Senior Systems Architect in the Commercial Banking Systems Group at BankOne, Chicago IL. Projects and activities at this position have included development, management, organization and syndication.

June 1991 - February 1996

Port-to-Port Consulting - Indianapolis, IN

Founding Partner, Executive Vice President, Technical Director and System Consultant, Port-to-Port Communications Corporation, Indianapolis, Indiana. Duties included advising clients on Personal Computer hardware and software purchase decisions, developing database and telecommunications applications.

August 1988 - June 1991

Auburn University - Auburn, AL

Assistant Professor of Electrical Engineering, Auburn University, Auburn, Alabama. Position involved teaching, research, publication, and supervision of graduate students. Total contract dollars overseen in excess of $450,000.00.

February 1982 - Present

The Man from S.P.U.D. - (various)

Owner, Operator, Developer. This company has been the umbrella under which considerable academic, public domain, Open Source, and charity development and systems work has been accomplished. Projects run the gamut from circuit simulators to eCommerce web sites to talking alarm clock/calendars to decrypting software.

Education

Bachelor of Science in Electrical Engineering, May, 1982; Purdue University, West Lafayette, Indiana

Master of Science in Electrical Engineering, May, 1984; Purdue University, West Lafayette, Indiana

Doctor of Philosophy in Electrical Engineering, August, 1988; Purdue University, West Lafayette, Indiana

Publications

R. E. Beaty, J. C. Suhling, C. A. Moody, D. A. Bittle, R. W. Johnson, R. D. Butler and R. C. Jaeger, "Calibration considerations for piezoresistive-based stress sensors," Proceedings of the Electronic Components and Technology Conference, pp. 797-806, May 1990.

D. A. Bittle, J. C. Suhling, R. E. Beaty, R. C. Jaeger and R. W. Johnson, "Structural analysis of electronic packages using test chips with integral piezoresistive stress sensors," 1990 ASME Winter Annual Meeting, paper 90-WA/EEP-12.

R. E. Beaty, R. W. Johnson, J. C. Suhling, D. A. Bittle, J. C. Pope and R. C. Jaeger, "Stress measurement in electronic packaging using silicon piezoresistive sensors," SRC TECHCON Digest, pp. 413-416, October 1990.

D. A. Bittle, J. C. Suhling, R. E. Beaty, R. C. Jaeger and R. W. Johnson, "Piezoresistive stress sensors for structural analysis of electronic packages," Journal of Electronic Packaging, pp. 203-215, September 1991.

J. C. Suhling, R. E. Beaty, R. C. Jaeger and R. W. Johnson, "Piezoresistive sensors for measurement of thermally-induced stresses in microelectronics," Proceedings of the 1991 Spring Conference of the Society for Experimental Mechanics, pp. 683-694, Milwaukee, WI, June 10-13, 1991.

R. E. Beaty, R. C. Jaeger, J. C. Suhling, R. W. Johnson, and R. D. Butler, "Piezoresistive coefficient variation in silicon stress sensors using a four-point bending test fixture," IEEE Trans. Components, Hybrids and Manufacturing Technology, vol. 15, no. 5, pp. 904-914, October 1992.

D. M. Richey, R. E. Beaty and R. C. Jaeger, "Observations on low temperature NPN bipolar transistor simulations using BILOW," Proceedings of the 1991 ECS Symposium on Low Temperature Electronic Device Operation, pp. 75-81.

R. D. Butler and R. E. Beaty, "MOS fabrication process integrating self-aligned polysilicon gate and post-processed metal gate devices on a single die," Proceedings of the 1991 University/Government/Industry Microelectronics Symposium, pp. 75-81, 1991.