Job DescriptionThe Impact You will have in this role:
The Development family is responsible for creating, designing, deploying, and supporting applications, programs, and software solutions. May include research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities related to software products used internally or externally on product platforms supported by the firm. The software development process requires in-depth subject matter expertise in existing and emerging development methodologies, tools, and programming languages. Software Developers work closely with business partners and / or external clients in defining requirements and implementing solutions. The Software Engineering role specializes in planning, documenting technical requirements, designing, developing, and testing all software systems and applications for the firm. Works closely with architects, product managers, project management, and end-users in the development and enhancement of existing software systems and applications, proposing and recommending solutions that solve complex business problems.
Your Primary Responsibilities:
- Develop applications in compliance with functional and non-functional requirements
- Construct unit test cases that ensure compliance with functional and non-functional requirements
- Follow design and code standards, contributing to continuous improvement discussions
- Create and maintain system documentation
- Align risk and control processes into day to day responsibilities to monitor and mitigate risk; escalates appropriately
- Contribute to the design of components or individual programs
- Provide production support for applications as needed
- Work with subject matter experts reviewing technical designs and specifications
- Apply different software development methodologies dependent on project needs
- Work with peers to mature ways of working, continuous integration, and continuous delivery
- Aligns risk and control processes into day to day responsibilities to monitor and mitigate risk; escalates appropriately
**NOTE: The Primary Responsibilities of this role are not limited to the details above. **
Qualifications: - Minimum of 4 years of related experience
- Bachelor's degree preferred or equivalent experience
Talents Needed for Success: - Java/J2EE Technologies and Design Patterns: Java 17+, J2EE, JDBC, JMS, Multithreading, Distributed Systems, Microservices Architecture.
- Java Frameworks: Spring Framework, Spring Boot, Spring Security, Spring Data, Hibernate, JPA.
- Messaging Technologies: IBM MQ, Apache Kafka, Enterprise Messaging Patterns, Event-Driven Architectures.
- Cloud Platforms: AWS (EC2, S3, IAM and related services) and/or Microsoft Azure.
- Container Technologies: Docker, Kubernetes, OpenShift (OCP4).
- Front-End Technologies: Angular, React, TypeScript, JavaScript, HTML5, CSS3, Bootstrap.
- Databases: PostgreSQL, Oracle
- API Development: RESTful Services, SOAP Services, JSON, XML.
- DevOps & CI/CD Tools: Git, Bitbucket, Jenkins, Maven, Ant, SonarQube, Continuous Integration and Continuous Delivery Practices.
- AI-Assisted Development Tools: Kiro, GitHub Copilot or similar AI-based software development platforms.
- Application Servers and Runtime Environments: WebSphere Liberty, WebSphere Application Server, Tomcat.
The salary range is indicative for roles at the same level within DTCC across all US locations. Actual salary is determined based on the role, location, individual experience, skills, and other considerations.
About the TeamServes as a dedicated technology resource for advancing DTCC's business opportunities and providing industry thought leadership for leveraging new technology. The goal of this new department is to partner internally with IT, our business and regulatory divisions and externally with clients, regulators, and fintech vendors, to help build new platforms and business models to advance DTCC's mission to support the financial markets.