The Avail Foundation |
Madison, Wisconsin |
2011 to present |
|
Role: |
Software Engineer, Co-Founder, Chief Financial Officer |
Environment: |
Windows 7 / Windows 8, Mac OS X 10.5 — 10.10, Linux. Java, Avail, Git, Eclipse Galileo / Helios / Indigo / Juno / Kepler / Luna/ Mars. |
(N.B. The Avail Foundation formally came into existence in 2012, but I began working on Avail in 2011.)
- Assists in the design and implementation of the Avail library.
- Develops primitives in Java for the Avail virtual machine.
- Develops example applications in Avail such as the first Avail DSL.
- Designed and implemented the Avail abstract codec infrastructure including UTF-8 support.
- Developed Stacks, a comment parser that analyzes Avail source code to generate web-ready library documentation.
- Creates documentation and website content.
- Initiated and managed the legal creation of the Avail Foundation, LLC.
- Manages the finances and the business operations for the Avail Foundation, LLC.
|
|
My Coverage Plan |
Madison, Wisconsin |
June 2016 to Present |
| Role: |
Senior Application Developer |
Environment: |
Mac OS X, IntelliJ, Java, Apache Cassandra, Avail, Typescript, Javascript, WebSockets, JSON, Git, Atlassian JIRA, Atlassian
Crucible, Atlassian BitBucket, Gitlab, JUnit |
Design, implement, maintain, and support commercial products related to the Guruler platform, an application development platform that integrates a
powerful rule engine with a high-performance server and a distributed database. The platform tightly integrates: a compiler for a strictly-typed,
high-performance domain-specific language (DSL) designed to enable non-technical subject matter experts (SMEs) to develop complex rulesets and
formulae; a suite of development tools, including visualization tools for understanding networks of rules and associated state variables; a
customizable, asynchronous, parallel rule engine; a high-throughput, deadlock-free, asynchronous, WebSocket-enabled application server; a fully
auditable, blob-oriented, distributed, multi-tenant database that automatically generates and maintains indices and data stores in accordance with
query and reporting rules defined in the DSL; user-customizable data exports; data aggregation; and a skinnable modern web client. The system supports
live and automated intake by multiple simultaneous users, potentially editing through disparate semantic views, and generates appropriate reports,
alerts, and events. The system implements a uniform security policy that crosscuts all application layers. The main product built on the platform is
the eponymous Advocus™, a customer decision support tool intended to help advocates and patients to secure healthcare benefits.
- Architected and developed interface for dynamic generation of database tables and indices that integrate into a fully auditable, blob-oriented,
distributed, multi-tenant database; developed Cassandra driver to interact with the Guruler platform.
- Architected and developed a system that supports live and automated intake by multiple simultaneous users, potentially editing through disparate
semantic views with shared state.
- Architected and developed a data export system with an extensible export format interface which allows users to define custom-savable data exports
on the client in order to export data from the system.
- Architected and developed a concurrent data injection system with dynamically code generated client-defined data filters for injecting select data
from the database into both the data export system and the data aggregation system.
- Architected and developed a configurable concurrent data migration tool that reads targeted data from the database and passes it down a user-defined
operator pipeline that transforms the data before rewriting it back to the database.
- Architected and developed a notification system that processes email notifications to users in near real-time.
- Developed the majority of the asynchronous, continuation-passing message processor for communicating with clients.
- Developed centralized, server-side, continuation-passing, in-memory data store used for caching database data by all active client channels.
- Developed client channel-specific free list cache that cooperates with the main server data store to provide shared data and channel specific data
to the client.
- Architected and developed a watchlist system for managing user worklists that tracks changes to items in the watchlist, optionally notifying users
of updates via email notifications.
- Architected and developed a templating language for configuring tenant-specific content.
- Architected and developed a DSL for defining unit tests for subject matter expert (SME) authored rule-sets, that code generates Java test classes
that can be run in the JUnit 5-based automated test runner.
- Participated in the institutionalization of IT technical infrastructure of My Coverage Plan, Inc.
- Participated in business development relative to the My Coverage Plan product suite.
|
Great Lakes Higher Education Corporation |
Madison, Wisconsin |
November 2015 to June 2016 |
| Role: |
Senior Programmer Analyst |
Environment: |
Windows 7, Eclipse, Java, J2EE, Spring, Maven, Websphere, DB2, Mainframe, HTML, CSS, Javascript,
Angular, Atlassian JIRA, Atlassian Fisheye, Atlassian Crucible, SVN, REST, JSON, SQL |
Great Lakes Higher Education is non-profit student loan servicer with a large technical infrastructure for developing and supporting forward facing
borrower web applications as well as internal data-driven business applications.
- Served as technical lead:
- Interfaced with clients to establish project goals.
- Architected solutions based upon client requirements.
- Combined client requirements and solution architecture to develop technical project plans.
- Created technical tasks and assigned them to appropriately-skilled team members, including myself.
- Designed test plans to test application functionality to ensure compliance with product specifications.
- Acted as a technical mentor to help junior team members develop both technical and project management skills.
- Inherited and re-architected products in order to address client’s evolving needs.
- Designed and developed a framework for a flexible type-safe copybook generator/parser that could transform Java objects into correctly formatted
copy books for input into COBOL stored procedures as well as instantiate Java objects from copybook files.
- Designed and developed framework for automatically transforming timestamps between UTC and localized time zone to compensate for variations due to
lack of UTC support in DB2.
- Acted as a technical resource for other developers to discuss design and implementation strategies for projects external to my own.
|
MIOsoft Corporation |
Madison, Wisconsin |
2009 to 2015 |
| Role: |
Software Engineer |
Environment: |
Windows XP / Windows Vista / Windows 7 / Windows 8 / Server 2003 / Server 2008 / Server 2012, Mac OS X, Ubuntu, VisualWorks® Smalltalk 7.4 / 7.6 / 7.8 / 7.9 / 7.10, JavaScript, Java. |
MIOsoft's MIOedge® cloud platform subsumes a very large scale, high-performance parallel/distributed database engine.
- Designs, implements, and manages the operations of customer database applications.
- Designed and implemented a framework for developing database applications. The framework provides support for
- Security via authorization and authentication of users and services
- Managing and processing client API calls to the server application over REST and WebSocket
- Error handling and reporting for client API calls to the server utilizing system defined status codes
- Generating client code for calling server APIs
- Automatic unit testing for self-contained services
- Automatic launch of debugging software upon a server error in a development environment
- Automatic creation of JSON responses to client API requests
- Generating Universally Unique Identifiers per RFC 4122
- Building correct JSON with detailed error reporting
- Designed and developed a generic user account management system that allows for both individual and organizational accounts in the same application
- Separates the user and the account allowing a single user login to have access to multiple accounts
- Account level access restricted via configurable account permission profiles allowing users to have different permissions per account
- Compartmentalizes user session by account via management of session cache to prevent access to unauthorized account operations
- Provides API integration to Stripe to enable credit card payments at the account level
- Designed, developed, and implemented a generic, versioned, metadata-driven business logic engine.
- Designed and developed a MIOedge-based client profile delta calculus to concurrently process point-in-time client data.
- Utilizes MIOedge for large-scale data integration originating from a variety of disparate sources.
- Designed and developed a generic, metadata-driven XML generator for use on the MIOedge platform.
- Designed and developed a data visualization package engine for the MIOedge platform.
- HIPAA-compliant system design, development, and operations management.
- Provides code maintenance on MIOedge as well as MIOedge platform applications.
- Designs and provides technical training for use of MIOsoft's tools.
- Manages development/operations team across three continents.
- Manages operations staff and interns.
|
|
Progressive Insurance |
Mayfield Heights, OH |
2006 to 2009 |
|
Role: |
Data Analyst |
- Helped lead an effort to implement policies that increased claims efficiency by 14%, resulting in $134 million in annual staff savings.
- Used SAS to redevelop claims staffing model that determines staffing levels for a 10,000-employee field claims organization.
- Transferred national claims workload forecasting process from a manual, error-prone, Excel-based process to an error-free automated SAS process.
- Led project to transition reporting environment for business operations to a new environment specific to the new claims staffing model.
- Served as the principal liaison to the field claims organization for all data reporting and analysis regarding the impact and the rollout
of the new centralized claims unit.
- Served as the staffing and capacity expert on a select team assembled to hone the company's competitive edge by refocusing the structural, technological, and cultural assets of Progressive.
- Responsible for apportioning the $1.7 billion Progressive Claims Organization's FY2008 budget.
- Received companywide award for developing interactive budgeting tool that ran staffing-based cost scenarios for senior management.
- Acted as lead analyst for the majority of claims staffing operational reporting.
- Developed interactive monthly report for the CFO, detailing various staffing, workload, and financial metrics for all U.S. states.
- Redeveloped, enhanced, automated, and effectively reduced the size of several workload and claims staff reports to increase usability for analysts
and managers in the claims organization.
|
|
Progressive Insurance |
Bradenton, FL |
2005 to 2006 |
|
Role: |
Special Lines Insurance Adjuster |
- Adjusted insurance claims across all Progressive product lines.
- Completed property damage estimates for all Progressive product lines.
- Received Quarterly Customer Service Award, for having one of the highest rated customer service index scores of Progressive insurance adjusters nationwide.
- Was member of Special Lines Team recognized in three different quarters for having one of the highest nationwide customer service satisfaction ratings.
|
|