Technical Lead Resume
SUMMARY:
- Strong IT Professional with over 15 years of project development, software architecture and team management and hands on Java experience.
- Strong concentration in the financial field working on projects for companies such as RBS, Confidential, Goldman Sachs, Standard and Poor, Prudential Securities and Bank of NY/Convergence.
- Seven years of HTML and web development encompassing all of the major Web technologies such as Dojo, Java Script, DHTML
- Strong experience as a core Java developer as well as working with application servers such as Websphere, Weblogic and JBoss.
TECHNICAL SKILLS:
Web GUI API: Dojo, JavaScript,JSON, CSS, HTML, AJAX, XML, DHTML
Java Web GUI API: JSP, Servlets, JSPX
Java Thick Client: Swing, AWT
Middleware: QuickFix/J, J2EE, EJB, WebSphere, WebLogic, Jboss, StreamBase, Terracotta, RMI
Web Frameworks: SPA,Struts, Spring,JSF Messaging JMS, Tipco EMS, FIX, ActiveMQ, MQSeries
Languages: Java, C#, C, C++
Database: Oracle, MS - SQL, Sybase, DB2, Hibernate
Cache: Coherence
Market Data: Exegy, Spryware, Reuters RFA 6
PROFESSIONAL EXPERIENCE:
Confidential
Technical Lead
Responsibilities:
- Consulted on the Scottrade mobile solutions application. Java/Andriod development for Options trading screens. NodeJS web service development. Conduct code reviews and mentor junior developers in Spring, Hibernate and core Java technologies.
Confidential
Lead Developer
Responsibilities:
- Wrote a Javascript/ DOJO based Bond Option trade caption application. Heavy use of Dojo toolkit version 1.7, Restful Web Services, JSON, JMS and FMPL. This application was based on the Single Page Application (SPA)design methodology with dynamic updating of the user interface via DOJO components and Javascript. JSON was used with various Java based RESTfull webservices to deliver market, position and trade execution information to the user interface. Google GSON library was used for the server side parsing of JSON data. Wrote custom DOJO libraries to simplify development for junior developers. I used JSP includes directives to dynamically include specific GUI views based on user entitlements for security or other regulatory needs. Use of Hibernate for object relational mapping.
- The key benefits of this SPA architecture were dramatically reduced complexity between the server tier and the client. A cleaner decoupling of presentation layer from the data manipulation and business logic tier. Additionally a dramatically reduced code base when compared to the typical web application that incorporated JSF,Struts, Spring or other web frameworks. I was able to reduce the code base from over 40,000 lines of code and configuration files to under 5000 and improved functionality for the end users.
- Worked as Architect in the Software Services Group. Designed & developed a Java based dynamic rules engine to inspect and route Bond Option, OTC derivatives and other complex FPML based trade data to various consumer systems. Additional rules, routes destinations and data inputs could be added dynamically via reflection and implementing abstract input and output stream classes and a core API interface. Heavy use of Java,, Oracle Coherence Caching server & Tibco EMS/JMS and Spring.
- Conducted code reviews with developers and implemented improvements to existing core server side application and internal frameworks. I introduced a token based method to generate extremely large FPML messages to improve memory management and performance. This method also resulted in dramatically reduced code to maintain.
Confidential
Lead Developer
Responsibilities:
- Developed a HTML based dashboard client using a combination of Dojo Java script libraries, AJAX,,DOM and XML,CSS. Heavy use of JSP, Apache/Tomcat.
- Designed Swing multi threaded JMS aware GUI components/templates for clean integration in existing applications and developer re-usability. Employed use of open source Java serialization component library from JBOSS to improve latency and reduce bandwidth requirements. Heavy use of MVC, Observable and Decorator design patterns.
- Trained and mentored new users both internal and external to the company
- Assess product suitability for customers needs. Designed and developed proof of concepts and created project plans. Lead focus groups to gather consensus with users on functionality and communicated the cost/benefit ramifications of requested features.
- Developed a testing methodology for high volume, multi day 24X7 test using simulated order and market data. Personally wrote simulation engines testing using multicast addresses to segregate data volume.
- Wrote multi-threaded C++, Java Market Data real-time consumer for Exegy and SpryWare market data API. Systems typically processed 5000 updates per second over the trading day.
- Designed and wrote equity order routing systems . Heavy use of Streambase core product, C++, pthread library, sockets, java, NIO programming for listening to “indications of interest” request broadcast over multicast addresses.
- Heavy use of Quick Fix and FIX API.
Confidential
Responsibilities:
- Led the mortgage market data aggregation, enterprise integration effort by implement continuous testing and writing a custom high-volume load tester in Java. Worked extensively in the tuning of the market data application JVM memory requirements and garbage collection tuning.
- Heavy use of test driven development and JUnit. ANT and CVS.
Confidential
- Worked to improve the performance of the Reuters RFA/ StreamBase Algorithmic Trading Application. Investigate and resolve JVM compatibility issues with regard to performance and stability of the application .
Confidential
Responsibilities:
- Wrote a Market Data Liquidity detection and ALGO trading framework the featured a plug-gable modules for quick expansion of new trading scenarios. Initial modules supported:
- Inter-market sweep orders
- Implementation Shortfall strategies, Aggressive & Passive Bias strategies
- VWAP executions
Confidential
Lead Developer
Responsibilities:
- Developed Swing based trade capture application for various derivative products such as CDS, CDS Index & High Yield, CDS Options, Index Options, Index Tranche, Swaption, TRS, Baskets, Asset Swaps. Weblogic was used for the application server, Oracle was used for the Database tier
- I introduced a Multicast JMS Enterprise Service Bus messaging infrastructure with dynamic failover for improved redundancy over existing infrastructure. The use of Multicast JMS processing without a central point of failure enabled new clients and producers to be added to the bus without reconfiguration. Heavy use of, ActiveMQ
- Developed a JMS messaging based Service Oriented Architecture for internal java systems to prevent unnecessary parsing of FPML. BEA Weblogic application server was used for non JMS SOA services using XML as transport later.
- Wrote various Swing front-end components to support front office business requirements. Heavy use of Threading with custom DataModel classes
- Wrote a C# Winforms version of the trade capture application with full access to the JMS messaging tier.
- Introduced and implemented Agile Development practices to improve project visibility and deployment reliability.
- Mentored junior developers in Swing, Messaging and database design concepts.
Confidential
Sr. Architect
Responsibilities:
- Responsible for 15 development teams internationally. I maintain oversight responsibility as well as detailed development and prototyping of new technologies and tools for inclusion into the Confidential list of approved technologies and tools. Heavy use of IBM Websphere for SOA/XML infrastructure, Spring, Hibernate, XML Beans, Oracle, ETL tool Abinitio, Oracle Times 10 in memory database.
- Hands on work on enterprise wide real-time collateral allocation to continually monitor exposure by counter-party across business lines for Basel II compliance Heavy use of JMS, threading on the client side to update position information in the GUI. This was a HTML,AWT project with Websphere and MQ Series and Struts
- Translated VaR (Value at risk) C++ code to Java.. Heavy interaction with Quantitative Analyst refining the credit engine performance for implied volatility calculations to determine total risk exposure for a given transaction. Heavy use of Oracle & Oracle in-memory DBMS (TimesTen)
Confidential
Practice Area Manager/Technical Project Lead
Responsibilities:
- Lead a staff of 12 developers on various projects.
- Responsible for managing the P/L of 3.5 million dollars in annual revenue for my group as well as the and project resource assignments.
Confidential
Lead Developer
Responsibilities:
- I was also intimately involved in the Oracle database data modeling effort to help resolve conflicts between the relational model and the object model. I wrote stored procedures to enforce business rules and data consistency. Designed the indexing scheme to maximize database performance. I wrote Multi- threaded Swing for the effort using MQ Series messaging using JMS and Oracle 8i. I wrote classes that converted the Domain Objects into FPML and FIXML. Heavy Use of Websphere Application Server.
Confidential
Architect/Developer
Responsibilities:
- Developed SOA Webservice architecture and wrappers around existing Java applications for the messaging software division. Also developed several moderately thick client applications to access those services using Microsoft C# and Java Swing. Developed a class framework to dynamically generate WSDL files from within the application without calling a third party application from the command line. The core application used reflection as a means to extract methods and other class information. Heavy use of Websphere Application server for Services back-end.
Confidential
Lead Developer
Responsibilities:
- As Lead Developer/Architect completed analysis of several Trading Systems for Prudential Securities.
- Wrote specifications and project plan for a Universal Trading System to consolidate the disparate trading applications under a single unified environment. This system involved a mix of Java technologies that centered on IBM WebSphere 3.5, J2EE Application server. A N-tiered MVC J2EE architecture using Servlets/EJB’s and HTML Java Script. JSP, XML & XSLT were employed to serve the content. For streaming of live data, a thin AWT Applet/Servlet combination was used. DB2 was used for trade data retrieval and MQ Series was used for Mainframe connectivity for account validation and order submissions for back office processing.
- Took over the management and development of a Unit Investment Trust trading application. Designed a new architecture for phase II implementation using IBM Websphere 3.5 and browser based HTML/DHTML AWT components for client side streaming of live trade data. A mix of JSP, Servlets and EJB’s were deployed with both projects. The Servlets were also designed to produce XML for use as a Web Service to other applications. Heavy use of MQ Series for communication with legacy COBOL systems.
- Designed an implemented an AWT-based System monitor to track server-side execution of code and modules with complete integrated logging from JSP’s through EJB calls from with the Websphere environment on a real-time basis. This enabled us to pin point server-side errors and see performance bottlenecks.
Confidential
Lead Developer
Responsibilities:
- Developed specifications for an n-tier server side application Brokerage Back-office System for the processing of NFSC and NSCC file formats for consolidated reporting of trade and settlement information through a unified front-end application. This system was written in Java, C++ and Visigenics CORBA and RMI to manage consolidate trade, bookkeeping, account and security information for the creation of unique payout schedules and the calculation of accurate commissions statements. The Java App read data from Bloomberg trade feed and applied a rules based parsing engine to feed the Data warehouse & front end application. Two versions of the application where written for compatibility with Sybase and Oracle Databases.
Confidential
Lead Developer
Responsibilities:
- Designed an automated system to transmit encrypted files from a legacy VAX system to a Windows CE 2.0 palmtop computer using Java, signed applets, SSL. To extend the Java security sandbox the Netscape Capabilities API was used. Wrote native methods to interface with ppcload.dll to transfer files directed to the Windows CE computer. A Java application was written for the CE OS to view the information. Led a team of 3 developers. Technology used Java 1.02 Symantec Visual Café, Borland C++ Builder.
Confidential
Lead Developer
Responsibilities:
- Led a team of 12 developers to create a web base peer to peer evaluation system for use firm wide. Wrote project specifications and database design. Acted as DBA for the project and mentor for junior staff. System was written in Netdynamics, Java, HTML, XML and Sybase System 11. Wrote a server side Java reporting engine utilizing JDBC. The system incorporated SSL and Kerebos Authentication for security. XML was used to support transfer and presentation of data from the server application to MS Excel spreadsheets for off line editing. Systems supported all 8000 employees.
Confidential
Lead Developer
Responsibilities:
- Designed specification and managed 2 developers to automate the compliance reporting environment using Powerbuilder 5.0,C++, Business Objects and Visual Basic for applications running against a Sybase System 11 database. Wrote DLL’s in C for integration into the companies lotus mail architecture.