We provide IT Staff Augmentation Services!

Senior Developer Resume

New York, NY

SUMMARY:

  • Highly motivated, result - oriented technology executive with over 20 years of project management and software development experience.
  • Extensive knowledge in managing the Software Development Life Cycle (SDLC) for application development.
  • Delivers efficient and reliable IT solutions and excels in building/leading teams in high-pressure environments.
  • Committed to professionalism, highly organized, able to see the big picture while paying attention to small details, and exhibits excellent communication skills.
  • Being involved in a project from evaluation, conception and completion
  • Ability to provide leadership, motivation and strategic direction to a multifaceted team
  • Excellent interpersonal, collaboration, and problem solving skills
  • Strong understanding of Agile software development, SDLC, and Business Analysis practices
  • Proven ability to achieve results in very high pressure environments and to keep teams motivated
  • Extensive knowledge on off: shore team management, development and testing management

TECHNICAL SKILLS:

  • Expert in building client/server, web-based and financial applications for Front/Middle Office
  • SOA architecture and design
  • Object oriented analysis, design and development
  • Extensive knowledge in web application development using Java and J2EE technologies and architectures
  • Automated Test Implementation
  • Extensive knowledge in the development and implementation of standards and procedures (SDLC)
  • Deep understanding in Straight Through Processing, with extensive knowledge on swift messages

COMPUTER SKILLS:

Languages: Java, C#, C/C++,, XML, XSLT, JavaScript, Visual Basic, HTML

OSs: Unix (SunOS v5.x, Solaris v2.x), Linux (Redhat 6.2 & 7.0), Windows 95/98/2000/NT/XP, MS-DOS

Protocols: TCP/IP, SOAP, SNMP, Telnet, SSH/SSL, HTTP, FIX, SWIFT

Databases: Oracle, Sybase, MySQL, MSSQL, MS Access

Security: Intrusion Detection Systems: Snort, tcpdump, ethereal

Penetration Testing: NMap, Nessus

Web/App Servers: Apache Tomcat, IIS, Oracle Application Server, WebLogic, Websphere

Financial software: Charles River IMS, Advent Geneva,, Omgeo CTM, QuickFix/J

Other: Spring Framework, Spring Integration, Spring Batch, Hibernate, JPA, AspectJ, Axis, SOAP, Apache ECS, Xerces, Struts, ILog JViews, SAX, DOM, Clearcase, IMake, MKS Tools, Purify, Oracle JDeveloper, JBuilder, LDAP, Talarian SmartSockets, Tibco, MQSeries, JORAM, JMS, Solace, Hibernate, OpenSSH, OpenSSL, Snmpwalk, Mib replicator, Crystal Report, MS Office, XMLSpy, WebCrawl, Network Monitor, Visual Studio .NET, Vi & Emacs editor

EXPERIENCE:

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Lead 4 offshore developers - including work distribution, code review architect, design and develop stock loan applications and equity derivative using Java and .Net technologies
  • Gather business requirement from traders, translate into technical requirement; supply development scope and effort estimate to the management
  • Support 6 traders (stockloan) and 2 traders (equity derivatives) on a daily basis
  • Support and maintain 25 applications by 4 offshore team members and myself
  • Migrated some of old legacy applications to micro-services architecture.
  • Migrated SunGard LFA system to SLS StockLoan Finance Allocation System, which offers proper tracking and allocating cost / revenue pertaining to Failed trades, ability to create manual charges for late settlements scenarios, etc.
  • Developed “Open Contract Rate Scan” function, used to scan open contracts to extract mispriced contracts relative to the current market rates. The Stockloan Desk can then make a determination as to whether these contracts should be Recalled or Returned in an effort to obtain a more advantageous rate on the position.
  • Developed Hanweck adapter for receiving Hanweck marketdata feed, sent down to Murex system
  • Developed pricing engine using Murex pricing API, applied interpolation and extrapolation methology for volatility fitting
  • Developed Fix adapter for communicating execution reports from WEX/FLEX trading systems to Murex
  • Technologies used: Core Java 1.8, Spring, MSSQL, .Net framework 4.5, ActiveMQ, Hazelcast, QuickfixJ
  • Vendor systems used: Murex pricing API, eTradepad, Totem

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Functional and non-functional requirements analysis, application design, and development.
  • Application support, ensuring stability of production systems and incident root cause analysis
  • Architected, designed and developed 2 major projects from scratch: 1) FIXSTP 2) HFT FIX Assist.
  • Trades are fed from 2 trading systems, messages are transformed into TradeCaptureReports and are sent to FIX clients via TCP/IP.
  • Affirmations are supported, and are received from external FIX clients.
  • Underneath QuickFixJ is used as the FIX engine, Tibco as the backend messaging bus communication for internal systems.
  • Currently support 2500 messages per second from end to end.
  • Trades are fed from HFT middle office trading system, transformed into TCR like message, and sent to FIX gateway. Messages are transmitted via Solace bus in JSON format.
  • Technologies used: Core Java 1.8, Oracle 11, Spring Framework, OpenJPA, QFJ, Tibco, Solace messaging, JSON.

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Developed a program that schedules a task for calculating NPVfor all indices daily, using SQL queries, excel, and quartz scheduler
  • Generated reports in XML formats and excel spreadsheets for distributing to different systems
  • It also performed reconciliation to compare against data provided by Markit

Technologies: Core Java, heavily used Oracle SQL

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Coordinated, managed and developed one of the most critical Fedwire components, which provides fund transfer and settlement service. The component supports 2000 transfers per second.
  • Performed objective assessment of the SDLC processes and capabilities to effectively mitigate risk and test the component.
  • Worked with database administration team to create logical and physical design of database and ER diagrams. Worked extensively on forward and reverse engineering processes. Created DDL scripts for implementing data modeling changes.
  • Weekly meeting with project managers for development progress, prototyping and presentation, and provided recommendation for application improvements.
  • Developed test-driven development (TDD) strategy guiding use of the Junit unit testing framework.
  • Provided code review on the existing codebase.

Technologies used: Core java, Spring core, Spring Integration, JUnit,Wwebsphere, MQSeries, H2, Hudson, Maven, Eclipse, Oracle.

Senior Developer

Confidential, Jersey City, NJ

Responsibilities:

  • Responsible for coordinating, managing and maintaining projects.
  • Provided code review for the entire application with about 10 components (e.g. CTM Adapter, Oasys Adapter, numerous schedulers, etc.)
  • Identified performance bottlenecks, and provided recommendations for short term and long term solutions on system architecture and application design. (For example, database partition, system clustering/load balancing, message re-distribution, jvm garbage collector configuration)
  • Led numerous aspects of enhancements to CTM Adapter (e.g. migrating from poll mechanism to push mechanism for TradeLevel, TradeDetail, MTLR, MTDR, etc.
  • In-depth knowledge on STP processing cycle (specifically on FX, EQ, FI, FD)
  • Developed STP for Fixed Deposit (FD) from scratch, usage of SWIFT messages to custodian, brokers, interested parties, and accounting system.
  • Swift messages used are MT320, MT321, MT304, MT541, MT543, MT545, MT547, MT548, MT202, MT210
  • Developed a simulator to communicate with CTM host via TCP/IP socket for testing purpose.
  • Developed a GUI Swing tool for monitoring and analyzing trade processing.
  • IBM MQ queues are used through out the application. Application is based in spring framework (dependency injection for manipulation business logic).

Technical Project Manager

Confidential, New York, NY

Responsibilities:

  • Coordinated, managed and maintained 2 projects simultaneously.
  • Provided project leadership to an offshore development team in France (6 developers), including: production timetable, status reporting, client/project team coordination, quality assurance, release management, and technical guidance.
  • Gathered business requirement, translated into technical requirement; supplied development scope to the team for technical discussion, and development effort estimate
  • Involved with technical architecture and design decisions
  • Closely collaborate with clients’ business and development teams to create functional specifications and technical design documents.
  • Bi-weekly meeting with senior leads onsite with clients for development progress and business/technical spec analysis
  • Wrote daily report to onshore development and management team on any new issues raised (e.g. jiras, new requirements) and development progress
  • Client support on-site, including application deployment support, troubleshooting (performance issues, application issues)
  • Responsible for business functionality testing, integration testing with client’s application during dev cycle.
  • In-depth understanding of trading protocol and trading algorithm (private/public/clearing time) for MBS, Agency, Treasury and Bills.
  • In-depth knowledge on trading execution work flow, using market data snapshots, execution reports, negotiation notifications and trade reports for different trading scenarios in different order types using different matching criteria (e.g. dark pools).
  • Developed components on market data client and incremental market data snapshot filters with different algorithms.
  • Developed enhancement to support FIX by using QuickFIX/j. Developed several FIX messages, including MarketDataSnapshot, Execution Report, New Order Single, etc.
  • Developed new features and maintained existing code.
  • Performed code review of existing codes from off-shore team
  • All developments are done in core java with spring framework, hibernate, and aspectj. Order flows communications are via tcp, http or jms.

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Provided a mechanism to optimize the complex trade cycle into streamedlined process within a single platform.
  • Challenges: Build a platform that simulates STP within a tight schedule. System should be easy to extend and flexible, in terms of adding new enhancements, and modifying business logic, with small or no impact on the existing features, and workflow. Performance has been highly emphasized on day 1. In addition, reuse existing/legacy components/business workflow to reduce development costs.
  • Solutions: SOA approach - developed a messaging framework, business logic is provided as independent service, either built from scratch or built wrapper to reuse existing codebase. Trade message is wrapped in xml as Map message, which flows from OMS (Charles River) to Accounting system (Geneva) and post trade processing (Omgeo). System is designed in large transactions volume in mind.
  • Gathered business requirement from business groups (trade operations, trade support, traders and project managers)
  • Architected, designed and implemented the entire backend trade processing work flow framework, using Tibco EMS / IBM MQ Series as the backend messaging bus.
  • Configured and set up Charles River Trade Gateway for trade connectivity and Omgeo Trade Suite for trade matching.
  • With good understanding of Charles River functionalities (Trade Blotter, Trade Gateway export administration setup, and database schema)
  • Developed reports (Confirmed/Affirmed/Matched/Unmatched, Compliance Alerts, Late Trade) utilizing Charles River database schema using Crystal Reports, and CRD reporting functionalities. Reports are installed in CRD, and exported on Charles River Trade Blotter.
  • Framework simulates XML-RPC server/client calls, which all JMS internal mechanisms are encapsulated from application users. Trade messages (in Map structure) are designed based on FIX concept (e.g. in Tag/Value format to represent NOS, OCRR, etc.)
  • Framework is built with trade processing in mind, which includes trade monitoring, trade metrics/statistics calculation, trade patterns capture, trade replay, and business error exception handling.
  • Caching is heavily used for storing static data (e.g. accounts, market data, etc.) and a small amount of transactional data (e.g. trade data from OMS. Data is stored for T+5 days, then data is archived) in memory. Real-time cache synchronization is implemented. It is useful for intra-day accounts setup, which all accounts data is stored in cache. Oracle Coherence is used.
  • System resources monitoring are integrated in services via JMX, for monitoring threads, memory usage. Operations are exposed for services maintenance (e.g. restart, pause, clear cache, thread dump, etc.)
  • Designed, and implemented Webservices interface, which acts as a proxy to delegate calls to Services in messaging framework. Webservices are implemented using apache Axis2, spring framework.
  • Designed and implemented a GUI C# Client (.net 2.0), which provides an interface for business users for account setup, addresses management (which is used to import to Geneva database), charts for displaying trades activity, and statistics, and an interface for trade replay.
  • Design patterns, AOP are used extensively
  • Responsible for all build, deployment, and release management
  • Provided support to traders, trade support and trade operations on/off office hours

Team Lead/Senior Developer

Confidential, Jersey City, NJ

Responsibilities:

  • Led team designing, creating, and supporting the web application.
  • Improved the overall system’s stability, scalability, and maintainability.
  • Project’s problems: 1) Consistent applications’ crashes. 2) Out of memory issues, object dead lock issues. 3) Database long running queries, lock issues. 4) Logging misuse, redundant logging and insufficient logging . 5) Insufficient web security protection. 6) No or little coding standard 7) No or little build and deployment management
  • Solutions: Introduced extreme programming focusing on unit testing with JUNIT. Migrated existing Visual SourceSafe to Subversion. Performed weekly code review, and pair programming. Reviewed existing codebase. Troubleshot dead lock issue with Thread dump, and identified dead lock issues from existing codebase. Evaluated web security model, and recommended new design for securing application. Evaluated existing infrastructure (weblogic servers, clusters), and recommended new design (migrated to a cluster of 4 application servers). Rewrote all build and deployment scripts using ant. Worked with DB team to troubleshot database issues.
  • Architected, designed and implemented an asynchronous Web Services framework using Apache Axis 2, Spring framework, Spring AOP, Hibernate, Tibco JMS and Oracle Coherence, running on Weblogic.
  • User management / Access control - responsible for authentication and authorization on the web method level
  • Data access layer / Cache manager - responsible for communicating with the database, and provide an abstract layer of caching data
  • Scheduler - responsible for any batch and long running processes.
  • Business components
  • Evaluated and analyzed existing current TAC web application. (Improved TAC performance, and reduced system down time dramatically.)
  • Re-architecture TAC infrastructure, by introducing a new Weblogic domain to handle TAC requests asynchronously using MDB.
  • Migrated complex SQL statements to stored procedures.
  • Added performance tracking feature in the code, used as a benchmark for performance analysis and evaluation.
  • Coordinated with the firm’s QA team, and heavily involved with load testing using Mercury Performance Center 8.1.
  • Troubleshot performance bottleneck by analyzing network traffic across multiple servers;
  • Analyzed java threaddump, and identified potential dead locks, and expensive calls.
  • Analyzed, enhanced and optimized oracle sqls to improve performance and minimize deadlocks (using explain plan).
  • Added system monitoring and alerts to capture metric and running events.
  • Created threat modeling by Identified, evaluated and mitigated risks on current system (codebase, and infrastructure)
  • Improved web security by adding LDAP authentication.
  • Analyzed and re-factored TAC codebase - data validation, data encryption on sensitive data, access restriction on database level, and file storage level.
  • Increase security on internal systems communication. (For example, added SSL between TAC and Tibco, added SSL between TAC and oracle).
  • Added data archiving periodically
  • Responsible for documenting and coordinating Disaster Recovery Procedures for TAC system, which includes Oracle primary and backup databases, Weblogic servers (with 5 domains, 8 servers - 6 servers are clustered)
  • Responsible for coordinating system (hardware, and software) upgrade
  • Worked as an advisor with the developers in India and in the US. Provided code review, and monthly peer programming practice.

Senior Developer

Confidential, New York, NY

Responsibilities:

  • Provided a distributed caching layer for all Prime Brokerage applications
  • Problems: 19 applications in Prime Brokerage department. Each application connects to its own database, and data is copied across multiple databases, which is redundant, and causes synchronization issues.
  • Solutions: A distributed caching layer is developed, which caches most of the data. It also provides a small set of transaction data which allows read through and write behind mechanism.
  • Architected, designed and implemented a distributed, clustered data cache layer. Cache layer requirements to support at least 10 millions of objects distributed on 4 dedicated cache servers (2 in London, 1 in NY, 1 in Tokyo). Tangosol coherence features are heavily used to provide a clustered data grid, and improved performance.
  • Designed data model
  • Developed new features for a J2EE web-based Loan Trading System. Features are provided via web services.
  • Researched on grid computing / Open Grid Service Architecture

Java Architect

Confidential, New York, NY

Responsibilities:

  • Provided a common interface for 2 different application platforms.
  • Problems: A legacy Visual C++ application and a 1 year old web based Java application is in place. Business requirements are needed to be implemented on both C++ and Java systems.
  • Solutions: SOA approach - Services are developed and hosted on a separate, individual host, which services both C++ and Java systems with single implementation.
  • Architected, designed and implemented a synchronous and asynchronous Web Services framework using Apache Axis and WebLogic queues. Developed Web Services code generator which generates code skeleton for writing web services. Axis, WebLogic, Sybase, JMS, JDBC, JNDI, XML Binding, and XSLT were used. Spring framework, hibernate, aspect objected programming and design patterns are heavily used.
  • Led J2EE/Java-based online hedge fund trading system in development, maintenance, and new feature improvements.
  • Business services developed include:
  • Risk simulation service, which monitors portfolio risk estimates based on different scenario analysis.
  • Performance reports service which displays clients portfolio performance, by strategy and liquidity.
  • Position reconciliation service, which reconcile statements positions in a monthly basis.
  • End of day process scheduler service, which schedules to feed actual and estimated prices from flat files to database.
  • Trained members of the team in new and evolving technologies.
  • Coordinated with production supports, QA and business analysts to ensure development and requirement accuracy.
  • User support to internal traders, and external clients

Application Software Developer

Confidential, New York, NY

Responsibilities:

  • Architected, designed and implemented an AutoUpdate Engine which starts multiple listeners to listen to Reuters data source in real time, processes the messages, sends messages to a queue and dispatches to multiple vendors by scheduling web services. XML, SAX parsing, Queue messaging, multi-threading, SOAP and web services were used. Design pattern were used extensively.
  • Worked closely with Reuters technical supports for system design and compatibility issues.
  • Designed and implemented a message aggregator using MQ Series.
  • Modified and developed code for several Java-based sub-systems including Informa Global Market front end user interface, reporting system and lock server. EJBs, Applet, Struts, JSP, MQSeries, JMS, Multi-threading, SOAP, Web Services, XML, XSLT were used.
  • In-depth knowledge on Reuters 3000 Xtra, Kobra, PowerPlus Pro.

Hire Now