Robert E. Beaty, Ph.D.
132 N Sleight Street, 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, Ubuntu 10, MS-DOS, Windows 3.1/95/98/NT/XP, Solaris, NeXTSTEP, OPENSTEP, MacOS 6.x/7.0/X
  • Development Languages - C, C++, Objective-C, 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 - 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

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.

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

June 2010 - Present

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