Client description
DB Global Technology develops cutting-edge software applications for the Deutsche Bank’s global operations and represents a platform for highly skilled software engineers. The team members specialize in Software Application Development, IT Architecture, Quality Assurance and Testing, Functional/Business Analysis and Project Management.
About Corporate Bank Technology
Corporate Banking is a technology-centric business, with an increasing move to real-time processing, an increasing appetite from customers for integrated systems and access to supporting data. This means that technology is more important than ever for the business.
Responsibilities/Tasks
Java Software Design:
- Designs application components to meet the requirements of a business and documentation of the design;
- Defines integration strategy including rationale, integration environment requirements, and determines product-component integration sequence;
- Assesses and identifies mitigation for risks, including those related to high level design, integration, and data quality;
- Participates/Lead in design reviews;
- Contributes to the definition of development and SW standards to implement/reflect DB guidelines (naming conventions, encryption, and security settings) and ensures that standards are adhered to;
- Ensures that architectural changes (as defined by Architects) are implemented;
- Provides Level 3 support for technical infrastructure components (i.e., databases, middleware and user interfaces);
- Contributes to root cause /problem analysis.
Java Software Development:
- Develops source code, including descriptions, for all Software Components in accordance with Detailed Software Requirements specification, the functional design and the technical design document or backlog;
- Participates and resolves findings in reviews (4 eyes principle) of developed source code;
- Integrates software components following the groups integration strategy;
- Verifies integrated software components by unit and integrated software testing according to the software test plan. Software test findings must be resolved;
- Ensures that all code changes are tracked and recorded through the groups change management process and that development is scheduled and approved;
- Develops methods to deploy Change Items (CIs) to the target environments;
- Provides Release Deployments on non-Production Management controlled environments;
- Capture Build and Deployment notes, develop Software Product Deployment & Operating Instructions;
- Supports creation of Software Product Training Materials, Software Product User Guides, and Software Product Deployment Instructions;
- Checks consistency of documents with the respective Software Product Release;
- Performs technical change requests scheduled according to Release Management processes;
- Fixes software defects/bugs;
- Measures and analyses code for quality;
- Collaborates with Functional Analysts and technical Specialists to complete work, as required;
- Develops mathematical calculations which perform to expected results and handle negative test case scenarios.
Management Tasks:
- Helping team to design and develop quality software;
- Help team prioritize tasks;
- Involve in SDLC life cycle;
- Ensure applications are developed and maintained in accordance to the Bank’s operational, risk and compliance requirements.
As people manager:
- Ensure employees have SMART objectives aligned with the Division’s strategy plans;
- Conduct performance reviews and ensure every individual receives actionable feedback;
- Provide input and guidance to employee’s individual and career development plan; ensure they are captured in db specific tools;
- Ensures that all team members know where to access the relevant policies, procedures and understand why it’s important to complete all mandatory training;
- Identify training needs, adapted to each person specifics.
Experience/Exposure
- Participate in Agile planning and development of new features and system maintenance;
- Experience with structured design, development, and implementation of new computing architectures;
- Ability to operate independently while establishing strong working relationships with co-workers, cross-functional teams, work in virtual teams and in matrixed organizations;
- Strong organizational and prioritization skills;
- Demonstrate critical attention to detail and deadlines, and are self-motivated;
- Ability to write high quality code according to DB standards;
- Strong analytical skills and ability to solve business or production problems;
- Proficient written, communication skills, and English language skills (written/verbal);
- Excellent team worker that can keep pace with technical innovation.
Technology exposure
Expertise in:
- Back-end Engineer;
- Java;
- Spring Framework, Jenkins/Teamcity, Maven/Gradle, Kafka, JSON, Kubernetes;
- Github.Experience with RESTful services.
Good to have:
- Back-end Engineer;
- OpenShift;
- Front-end Engineer;
- REACT JS or Angular;
- Web Technology – HTML, XML, CSS, Javascript.
General requirements:
- Test-driven development – Test tools (e.g. Mockito, Cucumber, Fitnesse);
- Agile process fundamentals;
- Database : Oracle 10G or higher;
- Dev-Ops: Maven (Build tool), SONAR (Code Quality), TeamCity (Automation), Jenkins (Automation);
- OS: familiarity with UNIX Commands;
- Service/ Micro-service orientated architecture patterns;
- Data Visualization (e.g. D3);
- Multi-threaded design experience.