Specialist, Full-Stack Developer
Asset Servicing Technology-HR07302
 New York, NY

BNY Mellon Asset Servicing provides global solutions tailored to meet our clients’ unique needs to help enhance the management, administration and oversight of their entire investment process and deliver the tools they need to expand their ability to process, monitor and measure investment data from around the world.

This position is part of an Asset Servicing to grow our Custody technology. This investment will position Custody to initiate a target state architecture that supports all elements of Custody by building modern distributed applications over our existing technologies.

Consults with internal business groups to provide appropriate application software development services or technical support. Provides application software development services or technical support in more complex situations. May also be responsible for requirements gathering and BRD/SRD preparation. Has thorough knowledge of the Software Development Life Cycle. Conducts reviews of the test Plan and test Data. May allocate/ coordinate work within a team/project. The job holder leads the technical design, development and documentation of cross-functional, multi-platform application systems. S/he analyzes, defines and documents requirements for data, workflow, and logical processes and interfaces with other systems. S/he also ensures that expected application performance levels are achieved by coordinating, coding, testing, implementation and documentation. Must have thorough and demonstrative knowledge on or both the user-side frontend of a website, as well as the backend, server-side that powers the user-side. Additional requirements include intermediate understanding of security principles, relational databases and architecture design principles. Programming well-designed, testable, efficient code. Analyze, design and develop tests and test-automation suites. Develop flowcharts, layouts and documentation to satisfy requirements and solutions. Maintain software functionality and currency (technical debt and gain). Actively participate in code reviews. Integrate software components into a fully functional software system. Apply security and privacy principles. Execute full lifecycle software development. Develop software verification plans and quality assurance procedures. Troubleshoot, debug and upgrade existing systems. Ensure software is updated with latest features. Participate in deployment process following all change controls. Provide ongoing maintenance, support and enhancements in existing systems and platforms. Provide recommendations for continuous improvement. Active learning engagement. Complete all required mandatory training / policy awareness curricula on time. Use learning tools such as Pluralsight to complete both recommended and aspirational targets set in personal development plans. Demonstrate team work. Leverage existing products/functionality and promote reuse. Work alongside other engineers on the team to elevate technology and consistently apply best practices. Collaborate closely with all the other members of the team to take shared responsibility for the overall efforts that the team has committed to. Collaborate cross-functionally with data engineers, business users, project managers and other engineers to achieve elegant solutions. Utilize local meetups to gain and share knowledge. Compiles documentation written by more senior developers of all procedures used in system. Acts as mentor to junior level engineers. Prior experience with using a specific application development toolkit and knowledge of front end and backend development coding languages such as Java, HTML, NodeJS, CSS, JSON, Angular, JavaScript. Must also have proficiency in Core Spring, ANSI, Docker. Contributes to the achievement of area objectives. Job holder must have understanding interdependencies and business impact of future IT plans. S/he must have prior lead experience selecting and implementing vendor-specific methodologies and prior consulting experience with structured methodologies. Job holder must have broad experience with multi-platform development tools and toolkits.

Required skills and experience:

  • Bachelor's degree in computer science engineering or a related discipline, or equivalent work experience required
  • 5 to 7 years of experience in software development required. Deep understanding of full software development life cycle (SDLC).
  • Experience with complex system integration projects.
  • Java, Spring, Spring Boot, Spring Cloud, J2EE Design Patterns, REST services
  • Front End Technologies like JavaScript and Angular version 8/9, CSS2/CSS3, HTML
  • Strong Knowledge of SQL, JDBC, Unix commands
  • Hands-on Database experience in relational (Oracle/DB2) and No-SQL (MongoDB)
  • Hands-on experience in caching frameworks – Redis / Hazelcast
  • Hands-on experience on working / deploying application on Cloud
  • Hands-on experience in code testing tools like Junit / Mockito / Cucumber
  • Deployment Acquaintance in Apache Tomcat
  • Expertise in Test driven development (Junit, JMeter), Continuous Integration (Jenkins), Build tool (Maven) and Version Control (Git), Development tools (Eclipse, IntelliJ)
  • Excellent communication skills (written and verbal), ability to work in a team environment.
  • Excellent analytical and problem-solving skills and the ability to work well independently.
  • Experience working with business analysts, database administrators, project managers and technical architects in multiple geographical areas.
  • Knowledge on SWIFT message types is a plus.
  • Experience in the securities or financial services industry is a plus.