Summary
An accomplished, adaptable software engineer specializing in user interface design and implementation, with extensive experience in ActionScript and Java and a strong quality assurance background. Seeking a software engineering or architecture position with an emphasis on user interface design and implementation.
Experience
Senior Software Engineer
Centrifuge Systems, Inc. (funded by Novak-Biddle)
April 2008 – April 2012
Lead user interface engineer for interactive data visualization and analytics product. Responsible for Adobe Flex thin client and web service endpoints on J2EE backend. The user interface presented data sets via multiple interactive visualizations, including link analysis graphs, charts, and timelines, allowing customers to quickly discover insights and take action from their data.
-
Created interface for integrating data from disparate data sources. The feature enabled users to drag and drop data tables onto a canvas, and then join or append those blocks (nesting as needed) to form a single result table. Collaborated with backend developers to design data model and APIs. Feature was well received, as it allowed non-technical customers without knowledge of SQL to produce complicated data sets.
-
Researched, designed and implemented feature to find one or more shortest paths between two vertices in a graph. Created UI mockups in Balsamiq and integrated feedback from stakeholders into design. Adapted open source implementation of algorithm to work on undirected graphs and to allow path length limitations. Users can easily find, highlight, and select paths, and the UI smartly exposes additional options for more advanced use cases. Internal feedback has been very positive.
-
Designed modular architecture for a large-scale JavaScript application using the Asynchronous Module Definition API and require.js . Primary design concerns were loose coupling for code reuse and abstraction of external libraries to ensure future flexibility.
-
Led effort to redesign product interface for major version release. Gathered requirements from customer advocates and created paper wireframes to demonstrate possible implementations. Refined designs based on internal feedback, then implemented redesign along with four other developers.
-
Upgraded product capabilities with design and implementation of prototype integrating a third-party charting library with the Dojo Toolkit and the product constraints.
Senior Software Engineer
Software AG (formerly webMethods, Inc.)
2005 – 2008
Designer and senior software engineer on internationally distributed team responsible for user interface for enterprise-class integration software products.
-
Led effort to evaluate development of a new user interface on an existing version of J2EE web portal instead of a rewrite (then under development). Recommended adoption of new version, leading to successful release.
-
Designed new web UI to replace existing Swing UI for an enterprise-class trading network administration and monitoring application, encompassing both existing and new functionality.
-
Produced detailed and realistic design and technical specifications for communications, feature tracking, and effort estimations.
-
Coded UI using JSF and AJAX technologies on proprietary J2EE web portal from the ground up in an agile development environment.
-
Created extensive UI mockups using Visio for presentation and discussion with product management and end users.
Senior Quality Assurance Engineer
Software AG (formerly webMethods, Inc.)
1999 – 2005
Senior QA Engineer for a Java-based enterprise integration software suite.
-
Served as only quality engineer on business-to-business trading network administration and monitoring product for several years.
-
Created automated regression and database migration test suites using QuickTest Pro, Jemmy, and in-house testing tools.
-
Produced extensive automated test suite for multi-byte flat file parsing using pure Java and hand-generated test documents in multiple encodings.
-
Responsible for QA of entire major release of Trading Networks product, including scheduling, resource management, test planning, and test execution.
Education
University of Maryland at College Park (1995 - 1999)
Bachelor of Science, Computer Science
College Park, MD