Software engineering professional with a proven track record of leading teams to design, build and ship commercial software products and releases. During my career I have been part of more than 40 product releases for the following product lines (IDT ATRT Analysis Manager, SAP ESP, Aleri CEP, Rational RSA, XDE, Rose). To every assignment I will bring a passion for software development, experience in product development and the grit and commitment required for completing the job.
Strengths
Codify sketchy requirements into functional software
Autonomous, hands-on development lead which also fosters an environment of team hustle
Lead and mentor engineers and work with local and virtual engineering teams
Effectively articulate and defend ideas that evolve into practical project plans
Embrace, absorb and become productive in new technologies
Lead senior software architect for IDT’s Core Product Team (CPT). The CPT has the responsibility of developing
C++, Java and Typescript common frameworks, services and libraries upon which all the ATRT-AM products are built upon.
The team is also responsible for defining an efficient software development process, build system and testing environment for
the team of Software and System engineers residing in Mt Laurel NJ, Arlington VA and Fall River MA.
Manage career development for team up to 4 engineers since 2016
SME: General SW Engineering Services: Scalability/Extensibility/Reliability/Performance/Architecture Oversee & advise on how core product overall architecture and services interoperate and behave with regards to Scalability/Extensibility/Reliability in the larger ATRT ecosystem. Review & advise on technical proposals with regards to architecture, overall design, complexity, alternative solutions, effort estimates, risks and implementation. Proactively advise Core Reboot team of potential issues. Oversee runtime performance for long term and short term goals across entire product. Coordinate with CI testing to collect optimal metrics. Ensure runtime performance issues get proper attention.
SME: C++ ATRT backend services
Mentor system and software engineers (new graduates thru experienced) on software engineering best practices including software design/continuous integration/unit testing/performance tuning/integration/coding in C++/Java
Frequently collaborate with the product owner/program manager and the product teams to ensure requirements are definedadequately and functionality can be built and delivered in a timely manner
Lead numerous innovation efforts including
formal definition of a domain specific language for IDT system engineering (IDTML)
design/codify code-generation framework based on Java SPI
design/codify embedded script engines (lua and v8) to enable the plug and play of dynamic ATRT-AM functionality
design/codify an approach for efficient Event Reconstruction data structure design and data marshalling using FlatBuffer's
design/codify FlatBuffer code-generator used to generically access dataset data in call behavior scripts
design/codify standalone analysis and data-loading services using proxy jobs infrastructure (protobuffers over Websockets and later ZMQ)
design/codify multithreaded Job management service and push notification mechanism (json over websocket) for long running REST based operations
re-architect monolithic C++ thick client application to a set of data-loading, analysis and reporting REST services with a browser based front-end
Ensured team members stayed on task, monitored health of code base, assigned coding tasks, raised issues on development velocity and quality, and altered project course as necessary to meet aggressive schedule dates
Establish software engineering best practices and transition software engineering teams from svn to GIT
Remove and decouple all UI dependencies from backend monolithic C++ application
Port BMD & AAW specific data loading and event reconstruction plugins to work in the new REST based architecture
Mentor system and software engineers (new graduates thru experienced) on software engineering best practices including software design/continuous integration/unit testing/performance tuning/integration/coding in C++/Java
Develop/support data loading components for Aegis, BMD and Patriot programs. C++ custom binary files, csv files, Java Serialized Objects
Performance tuning of BMD/Aegis data loading components (C++ 30% improvement, Java 100% improvement)
Build infrastructure for data-loading internal profiling C++ Profiling tool (_penter/_pexit) & Java Profiling (jvisualvm)
Analyse and fix memory leaks in C++ event reconstruction component
Part of core team that lead effort to move ATRT core product from monolithic C++ tool to a browser based front-end and C++ backend
Back-end Infrastructure for from ATRT web client (C++, JNI, json)
Continuous integration of ATRT code base between multiple sites
Codify various core features including (Data loading ease of use, database backup)
Reduce/refactor core infrastructure for consistency to eliminate development/production environment inconsistencies
Support monthly release deliveries to multiple clients of ATRT Analysis Manager product
Lead development activities (design, scoping, scheduling, and implementation) for all current shipping releases of SAP ESP Studio and Hana ESP Studio plugins. Serve as development lead and development architect for standalone ESP Studio and Hana ESP plugins. Manage virtual ESP Studio team of 2-4 software engineers. Acting scrum master of ESP team and participate in other ESP scrums to resolve UI end to end dependencies. Represent ESP team as part of larger Hana Studio team, resolving issues of graphical tool harmonization and standard UI behavior.
Architected, designed and lead development of SAP ESP Studio 1.0-present releases as a standalone eclipse rich application and as a feature plugin to Hana Studio.
Designed and implemented graphical editor (eclipse GEF + EMF) and associated eclipse UI editing components including: tabbed property pages, actions, commands, preferences, wizards, menus, toolbars, graphical notation meta-model (eclipse EMF) for storing visual model.
Designed and implemented rich text editor for CCL language (xText) and the patented mechanism to switch between the textual and graphical representation of CCL (Text-to-Visual Switching and Mapping No. 13234616).
Designed and implemented UI infrastructure for compiling and running ESP models thru ESP cluster manager.
Improved productivity and quality as only architect from original Aleri team, defining ESP roadmap since original release by staying on board, assisting in building new Sybase ESP product, maintaining workflow, utilizing prior product knowledge, ensuring completion and bringing product to market in timely manner.
Collaborated with engineering team and product management team on usability improvements and deliver continuous usability improvements as part of engineering release cycle.
Enhance product development by coordinating studio-tooling effort, facilitating cross-global teams, including ESP team members in Dublin, CA, Waterloo Canada, Beijing China, and Waldorf Germany.
IDE/GUI Lead Software Architect - Aleri
Led ground-up development of IDE for Aleri complex event processing platform called Aleri Studio. Served as IDE architect and development lead on all release of Aleri Studio product until company was acquired by Sybase in 2010(Sybase acquired by SAP 1 month later).
Architected, designed and lead development of Aleri Studio 1.0-last release as standalone eclipse rich application.
Designed and implemented graphical editor (eclipse GEF + EMF) and associated eclipse UI editing components including: property pages, actions, commands, preferences, wizards, menus, toolbars, graphical notation meta-model (eclipse EMF) for storing visual model.
Designed and implemented a number of IDE components for running and testing event streaming models including: table based stream-viewer, data flow based graphical performance monitor and event tracer, model debugger and watch window, manual data input and file based playback tools.
Collaborated with architecture team, product manager and CTO to define product roadmap for the Aleri Streaming Platform.
Collaborated with engineering team and product management team on Studio usability improvements and deliver continuous usability improvements as part of engineering release cycle.
Performed the planning, scoping, requirements, design, documentation and testing of Aleri Studio product.
As a member of the ISSR I have engaged with various clients in the NJ, NY, PA area (Lockheed, Telcordia, Verizon Wireless, MCI, Navy, PJM, Och-Ziff, Vanguard, UPS, etc.) as a senior software engineering consultant. As a senior consultant I have performed the following duties at various clients:
Design/Construction of eclipse plugins
OOAD mentoring assignment at Lockheed Martin on Aegis Open Architecture project
Mentoring/consulting on software engineering best practices and the Rational Software Development platform, with a focus on Rational Software Architect (RSA), Eclipse (WebSphere) plug-in development, XDE, Rose and UML
Led ground-up UI development of a number of different products including Rational XDE 1.0, VSM 1.0, Rational , Rose/J, Rose/CORBA and Rose/Oracle8 , Rose/PowerBuilder and RoseSQLWindows in addition I also designed and delivered a number of new features to the Rational Software Architect and Rational Rose products.
Designed and implemented UML Communication Diagram feature and action bar floating context toolbar for Rational Software Architect 1.0.
Development lead on Rational XDE 1.0 and Visual Studio Modeler 1.0 teams (10+ engineers).
Designed and implemented numerous features in the UI for Rational XDE And Visual Studio Modeler including: drawing surface shapes/connectors, active-x control wrapping, UI extensibility, UI error handling, interface with the rational model server and UML meta-model, UML sequence diagram component , selection container, model explorer, property browser, command handling and various other user interface related widgets. In addition I made significant design and coding contributions in many parts of the user interface and also spent a certain percentage of my time focusing on UI performance tuning.
Designed and implemented coding template meta-language and design pattern tool.
Designed and implemented round-trip engineering framework used by Java, CORBA & XML Addins for Rose 4.0.
Designed and implemented Rose/J, Rose/CORBA and Rose/Oracle8 reverse engineering components.
Designed and implemented Rose AddIn architecture, OLE automation extensibility, model browser and drag and drop in Rose 4.0.Designed and implemented round-trip engineering components for Rose/PowerBuider (4.0, 3.0, 2.7) , RoseSQLWindows (2.7).
Education
Widener University
Master of Engineering, Computer and Software Engineering
Widener University
BS, Electrical Engineering
Nova Southeastern University
Ph.D. Candidate Computer Science (ABD)
Unpublished dissertation proposal entitled "FreshLook: A reactive visualization tool for exploring UML object models". (C++, DirectX)