Lead Software Engineer - Java/J2EE
Senior, hands-on, technical lead who will be responsible for development and delivery of an application which provides financial pricing and valuation capabilities for fixed income mortgage loans. This is a strategic application which calculates daily prices for various mortgage loans, including conventional agency loans, home equity loans, and rate locked loans. The pricing is delivered to multiple downstream clients such as retail consumer mortgage bank branches, external investors, and internal business partners. Additionally, the application utilizes a complex optimization platform to maximize revenue on the delivery of mortgage loan products, while still adhering to Agency and internal constraints. Numerous user interactions and processes are enabled by the application, such as daily P&L generation, competitive bid pricing, and customizable optimization parameters. As the lead for this application, the candidate will be part of the Global Securitized Products Group (SPG) technology group, in a highly specialized team working in a fast paced, timeline-driven environment. The team is dedicated to the delivery of functionality that drives revenue for the bank, as well as increasing business automation and efficiency while maintaining focus on strategic solutions for business users.
The candidate will have responsibility for a global team of developers. She/he must have demonstrable leadership and management skills and be able to understand, prioritize, allocate, and execute tasks strategically. The candidate must be flexible and resilient.
The candidate will drive the SDLC for the application, including planning, design, implementation, and testing, and must have a sound grasp of development best practices adhering to JP Morgan's standards and policies.
The candidate will demonstrate proficiency in technical and business areas required for the role and must possess excellent verbal and written communication skills to partner with our stakeholders, with the ability to clearly articulate ideas and issues, provide accurate status updates, and describe business functionality in both financial and technical terms. Responsibilities:
- Manage a global team of developers to deliver in an Agile fashion
- Coordinate and collaborate across multiple stakeholders, including external groups, business users, senior management, and team members
- Analyse business and functional requirements and provide IT solutions
- Be a proactive participant in initiatives for cyber, compliance, risk, and controls
- Estimate level of effort to develop code to meet acceptance criteria
- Document and lead design reviews, provide input to the design recommendations.
- Document detailed application current and future state specifications
- Review, analyse, and modify programming systems, including coding, testing, and debugging
- Ensure technical documentation accurately reflects software components developed and delivered
- Ensure adherence to continuous improvement practices as required to meet quality / time to market imperatives
- Share best practices and improve processes within and across teams
- Provide support of software solutions as needed
- Attract and retain the best talent
- 10 years of mortgage loan pricing and valuations experience
- 10 years of hands-on experience building mission critical enterprise applications using JAVA 1.5 /J2EE, with a proven delivery track record
- 10 years of hands-on experience working on messaging technologies like JMS, MQ, TIBCO, AMPS etc.
- 10 years of hands-on experience working on database technologies like Oracle, Sybase etc.
- Deep understanding of Java, data structures, concurrency and multi-threading, run time VM, garbage collection, web-based request handling, servlets and filters in J2EE, and distributed architecture
- Strong knowledge of design patterns and their application in problem solving
- Strong knowledge of industry standard development tools like Eclipse, Jenkins, JUnit, Maven, GitHub etc.
- Leadership skills and experience in the role of a hands on and technically proficient development lead
- Excellent communication, organizational, and collaboration skills
- Ability to follow complex design and development standards
- Experience working in multi-time zone development team
- Experience with iterative development, for example Agile
- Proactive approach to problem solving
- Bachelor of Science in Computer Science
- Front, Middle & Back Office experience