Michael Bushe




MICHAEL PATRICK BUSHE
 Michael@Bushe.com
10 Valleywood Road
Hopkinton, MA 01748

508.625.1235



Bushe Enterprises, Inc.
Software Consulting

SUMMARY

Creative, seasoned professional with a long track record of success.  Balance of soft skills with extensive technical knowledge.  Sweet spot is leading RIA development, working with users, UI designers and domain developers to deliver effective user interfaces and middleware quickly.

SOCIAL CREDIBILITY

Open source activities include the popular EventBus publish/subscribe library and SAM - the Swing Action Manager.  Played a committer role on SwingFX, currently contributing to Apache Pivot RIA.  Contributing news writer to the InfoQ architecture queue.  Presentations include JavaOne 2006.  Delicious Bookmarks. 

TECHNICAL SKILL SET

Application Domains:

Trading Applications including Equity, FX, Bonds, Derivatives and Market Book Trading; Network & Device Monitoring and Control; Network Security; Scientific Computing; Insurance; ERP; B2B, B2C, Inventory; Content Management, Sales Engineering, Psychoacoustics, Baseball

Platforms:

Java EE & Java SE, Spring, Windows, Linux,.Net (some), COM, CORBA

Methodologies:

Agile, Scrum, XP, User-Centered Design, Rational Unified Process (RUP)

Architectural Skills:

Design Patterns for Solution Architectures, Model-Driven Architectures, UML,  Domain-Driven Design, General wide knowledge of technology

Client Technologies:

HTML, CSS, Javascript, AJAX, ExtJS, JQuery, Direct Web Remoting (DWR), Swing, WebStart, SWT, JSF, EventBus, OpenAjaxHub, NetBeans RCP, Eclipse RCP, eFace, WPF, JSP, JSF, Struts, Servlets, .Net, ASP

Middleware Technologies:

SOA, Web Services, REST, Messaging, EDA, Java EE, Spring, DI, AoP, JBoss, Tomcat, WebLogic, Glassfish, Geronimo, httpd, XML, EJB 3.0, JPA, Hibernate, JDBC, JAXB, SOAP,  XML Schema, DOM, SAX, JAX-B, Messaging (JMS), MQ, TIBCO Rendevous, JMX, JNDI

Security Development:

Single Sign On, SPEGNO, GSS, Kerberos v5, IPv6, IPv4, mod_ssl, mod_auth, WinSock, java.io/nio/net, SSH, Putty/Plink (development), SSL, WS-Security, SAAJ, JAAS, Active Directory, LDAP

Languages:

Java, C++, C, M, Javascript

Databases:

Oracle, PostgreSQL, Derby, MS SQLServer, Versant, ObjectStore

Testing & Performance:

TestNG, JUnit, Abbot, Jemmy, some Selenium, JProbe, Optimize IT

Configuration Management:

SourceForge, AnthillPro, CruiseControl, JIRA, Maven, Ant, Git, Subversion, CVS, PVCS, AccuRev, Visual SourceSafe, ClearCase, Emma, Clover

IDEs:

IntelliJ IDEA, Eclipse, NetBeans, Visual Studio

C/COM Libraries:

Bloomberg, FX Connect, Bridge2Java, JIntegra

EXPERIENCE

Convexity Capital Management
Software Process Consultant

Bushe Enterprises, Inc.
March 2008 – Present

Leveraging technological breadth, created custom collaboration and continuous integration solution for a young hedge fund company.  Collaboration system was used by all workers to manage the day-to-day IT and software operations, improving issue visibility and resolution. Consulted with CIO to create unique workflow processes that shielded business users from technical details while aligning IT work with business priorities. Custom collaboration solution was based on Collabnet TeamForge (SourceForge Enterprise), with a lively custom Web 2.0 interface, replacing the static TeamForge UI in most day-to-day work.   Engaged a wide variety of front-end and back-end skills, including ExtJS, JQuery, AJAX, HTML, CSS, JSON, DWR (Direct Web Remoting), OpenAjaxHub (TIBCO PageBus), RESTful APIs, JSP's, Velocity, http-client, POI (Excel and MS Project), JAXB, James, Single Sign On (SSO), SSL, Kerberos, bash scripting, JBoss, Tomcat, Apache, JMX, ehcache, SOAP, PostgreSQL & mod_rewrite, and XML.  Worked with architects to create an application and deployment model of client's operational systems, to enable a declarative-based deployment and management system.  Worked with software architect to customize Anthill Pro to deliver Continuous Integration and automated deployment system.  Integrated TeamForge, AnthilPro, project tracking and time tracking applications.

Lumension Security
Networking Consultant

Bushe Enterprises, Inc.
February 2008 – August 2008

Led team of 3 consultants in updating client’s IPv4 network scanning product to support IPv6.  Presented strategy for sensible scanning in a world with 2128 IP addresses.  C, C++, Visual Studio 2008, Scrum, MS Project.

The MathWorks, Inc.
UI Building Platform Architect


September 2006 – February 2008

Responsible for creating strategy and plan for future direction of MATLAB user interface development platform, used by millions of scientists and engineers for visualizing data and creating user interfaces for technical applications.  Worked with organizational leaders to assess current offering, identify key markets and trends, and evaluate competition.  Evaluated and prototyped rich client frameworks and tools for technological applicability.  Presented strategy and road map for state-of-the-art UI development framework and tools for MATLAB to senior management.  Separately, led specification effort for the first official table component in this 25-year-old matrix software system. Aided development effort by leading adoption of agile processes, delivering higher quality and predictability. Submitted invention related to user interface frameworks through the company’s patent process. Led monthly Java information sharing sessions. Coding in C/C++, Java Swing, WPF, XAML, eFace and M.

Wellington Management, LLC.
Architect/Technical Lead

Bushe Enterprises, Inc.
February 2003 – July 2006

Performed in multiple roles for a trading workstation project for this portfolio investment company. 

·         Presentation Layer Technical Lead

Led architecture and design for Swing UI client and interfaces with J2EE server.  The multithreaded Swing framework featured simple, bulletproof development patterns for a lively client trading application that interfaced with a WebLogic server via Commands while synchronizing server models through JMS messages.  Created client framework including UI Container architecture based on true component development and Inversion-of-Control, a plugin framework, and a multi-screen docking environment.  Special emphasis on manageability, testability, consistency and ease-of-development.  Lead and mentored product teams on use of the framework.

·         Architecture Team Member

As member of architecture team, influenced application architecture for multiple trading products based on J2EE, EJB and JMS.   Responsible for the core transaction synchronization with JMS and client/server tiers.  Defined UML modeling process and standards for RUP environment.  Created and reviewed designs for various trading products.  Involved in creation of team development processes.  Implemented clustering improvements and transaction coordination components.

·         Currency and Fixed Income Trading Products Team Member

Responsibilities included reviewing use cases for Fixed Income and Foreign Exchange (FX) trader products with Business Analysts, creating Analysis and Design models following RUP using Rational Rose, creating development schedules, managing risks and deliverables, mentoring, coding and testing. 

·         Senior Software Developer

Worked on multiple trading and portfolio management products in many roles.  Wrote Swing client screens, core business logic in Session and Message-Driven EJBs, integrated business rule compliance engine through XML message processing and performance enhancements.  Contributed to the development of two other existing portfolio management applications by creating session and entity EJBs, implemented clustering improvements, and creating Swing components.  Developed C code to interface with Bloomberg data feeds.  Wrote Java to COM modules for State Street FX Connect.

EMC
Architect/Senior Software Developer

Bushe Enterprises, Inc.
October 2000 – December 2002

Made major and lasting contributions to EMC Control Center, a cornerstone in EMC’s strategy that transformed it into a software-focused company.   Widely used software received “Enterprise Software of the Year” award.  Made significant contributions to core architecture enabling very large team to rapidly develop and integrate dozens of applications into one framework.  Framework and APIs still used as customer plugin architecture, supporting new back-end and front-end technologies.  Architected and designed metadata-based core services and subsystems.  Metadata services were key components in fat and thin client UIs, middle tier services, OEM APIs, and cross-tier communications.  Architected Swing UI component framework, based on metadata services.  GUI allowed development of very sophisticated views and their interactions to be described by XML rather than coded by hand, delivering a high-quality consistent UIs, while saving scores of developer-years and allowing EMC to bring the product to market far sooner than analysts’ expectations.  Received three patents (#6978422, #6966033, #7401298) for techniques that leverage metadata to allow a high level of usability in multi-faceted applications where users interact with large numbers of different objects of many different types.  Lead design and development of metadata-based UI services and base UI components.  Framework interpreted hundreds of XML descriptions of views, menus, tasks, and commands and displayed them interactively in a consistent manner, producing one of the most rich and fully-functional GUIs written in Java.  Framework included subsystems for the automatic query, filter, streaming, and ordering of information by integrating with Oracle database using a generic metadata-based query mechanism for an Object-to-Relational mapping tool (TopLink). Framework reused metadata, infrastructure and presentation rules with an entirely different presentation technology (Nexaweb).  Created future vision and architecture proposals for the next generation of the system using J2EE, TIBCO Messaging, and metadata.  Other contributions included UI design and usability; system architecture, system documentation, functional specifications, SCM process improvements, unit and integration testing methodologies; performance testing; and mentoring.   Technologies used included UML, Together ControlCenter, Oracle8i, XML Schema, DOM, Java, Swing, TopLink, JClass Components, JBuilder, JProbe.

eBusiness Technologies
Senior Software Developer

Oxford Global Resources, Inc.
September 1999 – October 2000

Made key contributions to architecture, design and development of a sophisticated J2EE XML-centric content management and delivery system that was ahead of its time.  The J2EE application created a virtual versioned file system on top of an Oracle8i database, centered on structured XML storage and retrieval including versioning, branching and dynamic viewing of content, similar to ClearCase.  Working closely with the CTO, helped design the distributed application and public APIs.  Implemented most of the core J2EE content management command components for version document storage and retrieval and the document-level security layer from conception through FCS.  Architected the Enterprise Java Beans components for content management.  Aided in the database design and architecture of the delivery and workflow layers, which used JSP custom tags, servlets and JNDI.  Technologies used include J2EE and J2SE SDKs, DOM, XPath, JBuilder 3.5, Tomcat, WebLogic and JProbe. 

The NASDAQ Stock Market, Inc.
Senior Software Developer


Renaissance Worldwide Inc.
January 1999 – July 1999

Involved in architecture, design and development of advanced message-aware Swing JavaBeans for the NASDAQ-AMEX trading floor workstation, replacing legacy terminal-based solution.  Designed and developed GUI Components configured using a metamodel created from TIBCO Rendezvous publish-subscribe message definitions. Created framework using Java’s InfoBus for local management of data and events.   Developed specific complex Java GUI Swing beans. Delivered components on time under a very aggressive schedule. 

ABB Asea Brown Boveri, Ltd.
Architect/Senior Software Developer

Microtech, Inc.
May 1998 – January 1999
 

Architect and led development for an e-commerce application enabling power plant engineers to order power plant parts over the web via drill-down browser displays of power plant schematics. Architected entire system including J2EE server and integrations with multiple back end systems, including a Windchill Parts Data Management system (PDM) via CORBA and two pluggable ERP systems – a custom AS/400 system and its J.D. Edwards-based replacement.  Using UML (Rational Rose) and relying on Coad-Yourdon methodology and standard design patterns, design component-based problem domain and server-side Java components that ran on IBM WebSphere. Designed and implemented an object database for persistence storage of web components using Versant ODBMS via ODMG APIs.  Lead development of Java classes, CORBA IDL for problem domain, Java servlets, persistence layer, system integration packages, and digital certificate security. Implemented portions of presentation layer using Java Server Pages, HTML, and client-side JavaScript. Other duties included some Rational ClearCase Administration; mentoring developers; creating proposals for new projects; creating and presenting project reports to the highest levels of management including the CIO of this Fortune Global 100 company.  Evaluated and recommended rejection of multi-million dollar proposal from third-party consulting company; instead created solution in-house with 4 employees in 8 months.
  

The Hartford
Software Engineer / Release Engineer

PRT Group
May 1997 - May 1998
 

Played a dual role in the development of an object-oriented enterprise reinsurance application:

§         Software Engineer
Responsible for the design and implementation of an application sub-system that processed EDI transactions for accounting and insurance claim functions. Designed using Rational Rose 4.0 and written in Borland C++ 5.01, the system leveraged industry standard object-oriented design patterns, interfaced with a C++ component-based Application Framework, and persisted to an Oracle 7.3 database.

§         Software Release Engineer
Created a software development environment supporting a team of 40 developers. Developed a multithreaded MFC MDI application using Visual C++, interfaced to version control systems, allowing developers to build versioned components from application source code at different code maturity levels. Integrated application with an automated daily build process, which updated an Intranet website with the build status of the project. Also responsible for PVCS version control administration and the automated packaging of the application for release.

General Electric, Electrical Distribution & Control
Team Lead / Software Developer

 Nov 1995 - May 1997

Team lead for a Windows order entry, engineering, and sales system. Software was delivered on time and under budget. Systems analyses, specification documentation, GUI interface design, ER modeling, project planning. Managed offshore development team for a module.  Maintained C code for the legacy system including conversion of DOS C executables into dynamically linked libraries using Pharlap.

Major League Fantasy Baseball
Wearer of All Hats

Nov 1993 – present

Currently creating an advanced rich internet application for the fantasy sports market.  In 1995, created Major League Fantasy Baseball, the first interactive web application for tracking fantasy sports leagues. Multithreaded C++ ISAPI extensions, ODBC, ASP, ADO, VBScript, JavaScript, HTML, Perl, SSL, IIS, SQL Server. 


U.S. Naval Medical Research Labs
Software Developer

GEO-Centers, Inc.
May 1993 - Dec 1995
 

Created a psychoacoustic Virtual Reality environment written in C++ and Turbo Pascal. Implemented Digital Signal Processing, data collection, UI, and statistical analysis libraries for VR sonar enhancement experiments.


Yale University
Programmer

Mar 1992 - May 1993

Data collection, statistical analysis and C programming for neural activity studies of the rat brain hippocampus.


University of Massachusetts, Amherst
Programmer

December 1987 - February 1992

Created a neural network computer simulation and visualization in Pascal on PC.  Developed computer simulations of human motor control processes written in Pascal on Mac. First author on paper in tech publication. 


EDUCATION
B.S.,
University of Massachusetts, Amherst, Neuroscience, 1990

 


Member number:10412
Additional Contact information is available on the Information Page.
Software Contractors' Guild (www.scguild.com)
Copyright(c) 1995 - 2006 Michael Bushe and Software Contractors' Guild, 3 Country Club Dr., #303, Manchester, NH USA 03102