Ian L. Kaplan
Independent Software Consultant and Founder
Topstone Software Consulting
Bonaire, Dutch Caribbean

Contact Information

Cell (East Coast Time Zone): 925-337-1924
Home (East Coast Time Zone): 925-245-1262
Bonaire: 011-599-717-0495
Skype: ianlkaplan

I am the founder of Topstone Software. Topstone Software provides a variety of software consulting and development services for companies in the United States and Europe. Please visit the Topstone Software web site for details on our services and our articles on software development.

Software Consulting Services

Amazon Cloud Computing

I have extensive experience in the architecture and implementation of large scale web applications on the Amazon Web Services (AWS) Cloud. I can work with your organization to design AWS cloud based applications and move existing applications to the AWS Cloud. I have deployed large scale Java web applications that leverage a variety of AWS services. These include:

The nderground social network (www.nderground.net) is an example of how I have leveraged AWS services to build a large, scalable web application. nderground is a social network that is designed for privacy and security. nderground has been live since 2015.

Full stack web application development in the Java Ecosystem

When I built the nderground social network I used the Grails framework. After completing nderground, I have focused on full stack Java web application development using the Spring ecosystem (Spring Boot and Spring MVC).

Database Applications

Faceted Search and natural language processing

Compiler and custom language processor design and development

I have developed compilers for C, Fortran 90, Verilog HDL and Java. I can provide:

Quantitative finance

Other services and Experience

Programming Languages

Fluent in the Java, C++ and the R language.

Professional Experience

Before founding Topstone Consulting I designed and implemented software for a variety of industry and US Government organizatons.

October 2002 to July 2017, Staff Computer Scientist, Lawrence Livermore National Laboratories, Livermore CA

June - August 2008, Intra-day Trading System

I designed and implemented an intra-day trading system for a start-up hedge fund. The trading system used the Interactive Brokers platform for order execution.

August 2000 to July 2002, Senior Software Engineer, Prediction Company, Santa Fe, New Mexico

February 1996 to July 2000, Cadence Design Systems, San Jose, CA

Designed and implemented native compilers for behavioral Verilog and VHDL.

I am a United States citizen and I am authorized to work in the United States. I have held and maintained high level US government security clearances.



Industry Publications

  1. Value Factors Do Not Forecast Returns for S&P 500 Stocks, by Ian Kaplan (March 10, 2014). Available at SSRN: http://ssrn.com/abstract=2407303
    Additional material can be found on Topics in Quantitative Finance
  2. Implementing Graph Pattern Queries on a Relational Database by Ian L. Kaplan, Ghaleb M. Abdulla, S Terry Brugger, Scott R. Kohn, Lawrence Livermore National Laboratory, January 8, 2008, LLNL-TR-400310 (PDF format)
  3. A Semantic Graph Query Language by Ian Kaplan, Lawrence Livermore National Laboratory, October 17, 2006 UCRL-TR-255447 (PDF format)
  4. A Reconfigurable Logic Machine for Fast Event-Driven Simulation by Jerry Bauer, Michael Bershteyn, Ian Kaplan and Paul Vyedin, Proc. 35th ACM/IEEE Design Automation Conference, 1998

Web Publications

  1. A Java Intra-Day Trading system This describes work that I performed as a consultant on an intra-day equity trading system.
  2. Wavelets and Signal Processing. This is an extensive set of web pages on wavelets, wavelet applications and the Fourier transform. A large body of extensively documented Java and C++ source code implementing wavelet, Fourier transform and statistical algorithms is published on these web pages.
  3. String Container Class and Reference Counted Objects. This is a set of C++ reference counted classes that supports a string class (this software was developed before the C++ Standard Template library std::string class was mature).
  4. The ANTLR Parser Generator. This set of Web pages discusses why the ANTLR parser generator should be used and provides a set of examples showing how ANTLR grammars can be used to generate parsers. These Web pages have been cited as references on the main ANTLR web site

Professional Interests

Academic Achievements

back to home page