CLIFFORD A. FARMER
SKILLS I have been professionally engineering client/server business systems and applications for 35 years, mostly using C#/C++ on Microsoft platforms, including web and database services. I take responsibility for converting vague goals into solid implementations using agile engineering practices, often as technical lead with a small team. Two of my specialties are design for usability (UI) and performance optimization at both high and low levels of operation.
Independent Consulting through my own company: Windmill Software, 2011-2016
3/13-7/16: PCRB—PA Compensation Review Board: developed a new web site and system for the PCRB to replace a national web site called PEEP, for insurance carriers to enter, submit, and review policies covering worker’s compensation; responsible for the requirements, design, and implementation using .Net/C# 4.0, VS2010, Web Forms, Ajax, SOA, SVN, SQL Server 10.5.
Barclaycard US: desktop developer
in a highly structured SDLC, responsible for the
requirements, design, and implementation of new features in a distributed
system for agents’ customer contact support using
.Net/C# 4.0, VS2010, TFS, Oracle9i.
2/12-6/12: Neat: A short-term project to identify and resolve performance bottlenecks in a C#/.Net 3.5 application using VS2010 Performance Explorer and .Net Memory Profiler. The application uses WPF, NHibernate, and SQL CE, and a very agile development environment that utilizes Jira, Review Board, and TeamCity.
7/11-1/12: , a division of Morningstar: developed a new web site for the uploading, management, and review of financial portfolio data via Excel spreadsheets, and supporting documents, using ASP.Net 4.0, EDMX, and SQL Server 10. Most of the code was in C# to process the large Excel spreadsheets using ADO to import into the database and then later retrieve and reintegrate data into spreadsheet templates to be downloaded and augmented.
Susquehanna International Group at Bala Cynwyd, PA
6/00–7/11.: Senior Developer, Electronic Options Trading
I was the technical lead or sole developer on a variety of mostly client-side trading components, integrating market data, pricing parameters, and trade data for high performance control and feedback of quoting and trading activities. Following are some of the larger projects that I was responsible for:
TDI (Trade Data Infrastructure)—I led a small team as well as designed and implemented the capture, processing, and monitoring of 1M trades/day using C#/.Net 4/VS2010, TIBCO Rendezvous messaging, a GigaSpaces transactional repository, and MySql database archiving.
SOQRATES (SIG Options Quoting)—I wrote and was responsible for a large component within a robust trading platform to integrate financial events into options pricing models, using C#/.Net 4/VS2010. Because of the need to provide instantaneous feedback while still processing large amounts of data, this process required a high degree of multi-threading, asynchronous communications, and queueing, along with the commensurate error handling and recovery. The architecture relied heavily on base service creators using strong interfaces for (DI) Dependency Injection as well as TDD (Test-Driven Design) using NUnit that required mocks for many of the disparate components. There were about 20 developers using Perforce, NUnit, and TeamCity build management.
COORS (Customer Option Order Routing System)—programmed client-side control and monitoring of trade routing using C#/.Net 3/VS2008, GigaSpaces/JQuery, MySql, and Infragistics.
QuoteMaster— C++/VS2005 extended an existing option specialists quoting tool for a electronic trading protocol that allows specialists and market makers to automatically step up to competing quotes and orders based on configurable delta, edge/opportunity, size, and timing parameters.
AvgeImpliedVols—designed and developed server-side components and client and configuration front-ends to compute and display the “average implied volatilities” of stock indexes based on the “at-the-forward” volatilities of their members, which are the basis for index options valuations.
MOSES—developed a real-time stock options valuation, opportunity estimator, and trading tool.
Independent Consulting through my own company: Windmill Software, 1990 - 2000
8/97–1/00: NovaCare: Supported the processing of clinic/payer transactions, using VisualC++, SQLServer, on NT. Streamlined processing to triple throughput and ultimately the number of clinics they can handle.
7/95–7/97: Commonwealth Land Title Insurance Co.: Designed and developed the Delta Title Production System, using VisualC++/MFC, SQLServer, Office/VBA, HTML/J++ on Win95. Analyzed operating requirements, designed an extensible order tracking and document preparation system to be used in over 200 branch offices, and managed a team of 15 developers, testers, and documenters. The system includes a configurable data dictionary, a forms designer, forms data entry, document preparation, universal data interchange, and imaging.
7/94–6/95: CLT\National Residential Title Services: Designed and implemented Title Order Manager, incorporating document imaging (retrieval and manipulation), OCR, email, EDI, and work flow technologies, using SQL\Windows 5.0, Visual C++, Sybase on Win3.1 and Win NT.
6/94–9/94: Day One: Designed and implemented Windows-based forms entry software, similar to TurboTax, using Visual C++ 1.5.
9/93–9/94: CLT\Appraisal Services: Designed and implemented an appraisal order management system using SQL\Windows 4.1, Visual C++, Sybase, and Wang Open\image on Win3.1.
1/93–7/93: StarNet: Developed software for the production, delivery and display of multimedia passive and interactive cable TV channels: regional news, TV Guide listings, and PPV 'barker', all now on Suburban Cable systems. (C/SDK/DLL/Targa/VB).
1/93–5/93: Aldus Corp: Implemented the "Printer Styles addition" for PageMaker V5. (C/SDK/DLL).
5/92–12/92: Feith Systems & Software: Developed a workflow system for their document imaging database system, and wrote OLE 1.0 client & server code for mailing/viewing documents. (Win 3.1 SDK/DDE/OLE/Informix SQL).
6/92–8/92: Windmill Software: Published the Win32 API Pocket Guide.
3/92–9/92: Betz Equipment Systems: Developed a water treatment process control front-end. (Borland C++ and Application Frameworks on Windows 3.1)
1/91–12/91: Sadtler Research Labs: Developed Windows-based chemical analysis applications with served databases over Novell and DECnet.
7/90–11/90: Weitzel & Co.; Developed MS-Windows-based real-estate MLS system, DOS & TSX.
Digital Equipment Corporation, Hudson MA, Semiconductor Engineering Group/CAD-Logic Simulation.
1986-1990 Principal Engineer
- System architect for the corporate Logic Simulation system, DECSIM-II; defined group standards for portability, code review, and documentation; prototyped DECSIM-II in C/C++ on VMS and Ultrix.
1983-1986 Senior Software Engineer
- Developed system interfaces for DECSIM's debugger and other system-level operations.
- Designed CAD's Generic WireList format and access routines.
1978-1982 System Architect
- Designed and implemented an interactive, graphics, real-time, multi-display and session recording biofeedback system, using 6502 machine code on an Apple ][.
1978-1982 combined BS and MS in Computer Science 4-year program at Union College in Schenectady, NY 3/15