I live with my wonderful wife and children in the western suburbs of Chicago. I've lived in
the Chicagoland area since 2000.
I've been into technology ever since I can remember, and have been writing code since I was in junior high.
I work for Bank of America Merrill Lynch as a software development manager. Before that, I worked at BEA Systems (now Oracle) as a consultant, and at the US National Security Agency. I graduated from Michigan State University with a BS in Computer Science in 1997.
Manage a team of 40+ multidisciplinary developers, QA, and managers across 5-6 simultaneous in-flight projects.
Oversee all aspects of architecture, design, estimation, implementation and testing of the CashPro FX and FX payments platforms, which is a $650+MM/year business.
Drives the design and strategy of the FX Payments platform by instituting and hosting a biweekly working group meeting with senior business stakeholders.
Responsible for a $8MM+ technology budget encompassing personnel as well as technology & infrastructure.
Effectively manages the technology relationship with the Consumer, Treasury, and Global Wealth Management groups within the bank, in part by taking ownership of the FX team’s strategic FIX API, which provides for FX trading and settlement.
Reduced operating budget by effectively managing offshore development teams for critical tasks. Ingrained the US team’s Agile development process into the offshore team, and orchestrated end-of-day handoffs to keep the process running smoothly.
Grows talent as hiring manager by mentoring junior and senior team members alike, encouraging and participating in pair programming, performing code reviews, and leading recruitment efforts for the FX team. Administered and developed a Java-based ‘exercise’ for interview candidates.
Served as the BAML Global Markets head of recruiting at University of Illinois Chicago from 2009 - 2012.
Guides career growth of team members by giving them more opportunities to face off with the business, leading to several promotions within the team.
Ensured regulatory compliance by leading FX technology’s effort to be Dodd-Frank § 1073 compliant. Notably involves providing ability to perform automated FX contract cancellations.
Served as Agile evangelist for B of A Global Markets. Travelled onsite to meet consult with several teams struggling with agile adoptions and provided recommendations to ease their transition.
Led team of 8 developers to deliver FX technology portion of a bank wide “payment rewrite” initiative ahead of schedule.
Aligned the FX API to allow various teams and workflows to use it for all internal FX trading.
Simplified Bank of America’s acquisition of LaSalle Bank by leading the effort to enhance GFX’s settlement platform as required by LaSalle’s customers. Specifically implemented the settlement splitting feature of CashPro FX.
Developed and deployed GFX’s first web service to production, using Apache Axis.
Developed web-based delivery mechanism to deploy a third-party FX Trading application to seamlessly integrate it into FXTransact.com (CashPro FX’s former branding) using a custom made single-sign-on implementation.
Responsible for maintaining overall architecture of a multifaceted FX trading system, encompassing dozens of machines and over 100 deployed Java/J2EE applications. Required working knowledge of heterogeneous network and messaging infrastructure which included WebLogic JMS, MQ Series, and Tibco RV.
Designed and implemented an automated performance testing suite, which measures latency of FX rates and trades as they move through various system components. Spring/Hibernate-based configuration that communicates with all GFX components to initiate performance tests, collect metrics in real-time, and report statistics. Performance tests written in a custom JRuby-based domain specific language.
Initial Architect of Environment Deployer, an automated build and release system that dramatically improved the frequency and reliability of GFX releases. This custom-built Java application maintains configuration for all aspects of a running environment, including deployed artifacts, machines, WebLogic containers, and all the necessary configuration to build a new environment from scratch. With one ‘button push’, this system can redeploy the entire GFX stack and report on its health.
Enhanced and maintained critical infrastructure frameworks, including messaging (JMS/Tibco RV) and configuration subcomponents. Built centralized configuration server for GFX applications to obtain their configuration data at runtime.
Developed web-based, AJAX and RSS-enabled document management system to easily store and retrieve GFX architecture documents. Employed a web 2.0 style tagging system.
Responsible for mentoring 100+ developers across three continents in Agile methodologies including Test Driven Development, Continuous Integration, and Mocking frameworks. Gave presentations on best practices to developers. Performed architecture and code reviews for new projects.
Designed and developed online forum software for community platform.
Created blogging, private messaging features for platform.
Added RSS support for all aspects of community content.
Technical lead for two full life-cycle JEE projects for large clients deploying to WebLogic Server using RUP methodology.
Led development of rapid re-implementations of poor-performing JEE code for clients in need of quick fixes.
Performed numerous architecture assessments for JEE projects of all sizes.
Supplied troubleshooting assistance to over 25 Fortune 500 companies in two years.
Lead developer on Swing-based analysis tool, as a front-end to a Sybase DBMS.
Responsible for highly customized UI subsystem of the tool, as well as business logic for that subsystem.
Webmaster for NSA’s Software Engineering Knowledge-Based Center.
Responsible for large Apache-based web site and creating dynamic Perl and Java based content.