Job Summary & Responsibilities
The Credit Technology team is responsible for systems that assess, monitor, and control the firm’s counterparty credit risk. The group is a talented mix of developers, architects, functional analysts, and quants who maintain a technology friendly environment where quality software is emphasized over excessive documentation and user satisfaction is the goal. We leverage test-driven development and other agile development practices to deliver quality software the first time out.
The team collects transactions from across the firm, leverages a compute farm to complete 30 billion re-pricings each day to calculate forward-looking exposure, and then summarizes that data on-the-fly using an in-memory caching architecture running on massively parallel custom hardware. We deliver web-based applications and do most development in Java.
We are looking for talented Java developers to build and maintain the applications which manage the firm’s credit risk. You will gather functional requirements, participate in technical design sessions, and interact with other technology teams within our Risk, Legal, and Controller areas to deliver consistent, accurate risk measurements to our Credit users. The role will allow you to gain an understanding of credit risk and the broad array of products traded at the firm, including our OTC derivatives, loans, and funding businesses. The successful candidate will participate in all phases of a project lifecycle and work with extremely bright, motivated individuals, who focus on Java development and strive for continuous process improvement.
- 3-8 years of object-oriented design and analysis skills
- 3-8 years of server-side, multi-threaded Java programming experience
- Experience in test-driven development and agile methodologies
- Outstanding communication and interpersonal skills with a self-directed approach to work
- Enterprise-class relational database experience (e.g. Sybase, Oracle or UDB
- Hibernate or other object-relational framework
- Spring framework or other dependency injection containers
- Low-level Java, e.g. memory management, optimization and performance tuning
- Experience of large scale caching applications
- JSP & Struts or comparable web framework
- Large-scale code refactoring techniques
- JMS, web-services, RMI or other “integration” technologies