Deutsche Bank - Java Backend Developer - AVP (5+YOE) | Pune
Java Backend Developer - AVPDeutsche Bank - Java Backend Developer - ASSOCIATE (3 YOE)
Java Backend Developer - ASSOCIATEDeutsche Bank TDI Internship – Interview Experience (Oncampus)
TDI InternshipInterview Experience - Deutsche Bank
summer intern, tech-analystSummary
Successfully cleared all rounds of Deutsche Bank interview for Java Backend Developer AVP role in Pune with 5+ years of experience. The interview process included 4 rounds focusing on core Java, DSA, cloud technologies, and behavioral questions.
Full Experience
I recently received an interview opportunity at Deutsche Bank for a Java + AWS role with 5+ years of experience. I have completed my B.Tech from a leading engineering institute in Maharashtra and currently work in a product-based environment. Sharing my interview experience below to help anyone preparing for similar roles.
Round 1 – Technical Round (Virtual)
Core Java and Fundamental Concepts: Questions covered OOP principles, design patterns, Spring internals, HashMap implementation, and concurrency concepts. I was also asked about functional programming in Java 8 and immutability.
Coding and DSA
One coding problem based on HashMap (medium difficulty). I was also asked about experience-based discussions on the most challenging project handled end to end.
Round 2 – Technical Round 2 (Virtual)
Medium-level problem: Longest Substring with At Most K Distinct Characters. The round also covered cloud, DevOps, security, Kafka usage, and Java concepts like error vs exception, HTTP methods, and proxies.
Round 3 – F2F Techno-Managerial Round (In Office)
No technical questions as previous round feedback was strong. The discussion focused on career goals, reasons for choosing Deutsche Bank, and key strengths.
Round 4 – HR Discussion (Virtual)
<Compensation discussion and policies were covered. I received the offer today after 10 days.
Interview Questions (2)
Implement a custom HashMap, specifically a LinkedHashMap.
Find the length of the longest substring that contains at most k distinct characters.
Summary
I recently had my L1 virtual interview for a Java Backend Developer - Associate role at Deutsche Bank in Pune. The round covered topics like Java 8 features, database optimizations, REST API performance, and a coding challenge. I was selected for the next round, which will be an in-office F2F interview.
Full Experience
I secured an interview opportunity for a Java Backend Developer - Associate position at Deutsche Bank in Pune through an employee referral. The L1 round was a virtual interview conducted on Microsoft Teams. The interviewer was very polite, patient, and knowledgeable, providing assistance whenever I got stuck. They asked a range of questions covering Java 8 features, functional interfaces, lambda functions, and stream API usage. We also discussed database optimization techniques, handling high-volume events, and optimizing query performance. REST API performance, HTTP status codes, and testing using Junit and Mockito were also part of the discussion. Towards the end, my experience with AWS services and handling production breaks was explored, along with a coding challenge. I was pleased to be selected for the second round, which will be an in-office, face-to-face interview.
Interview Questions (14)
Explain why Comparable is not considered a functional interface, while Comparator is, in Java.
Given a list of integers, find and print the frequency of each element using Java Streams.
What is the return type of the Predicate functional interface in Java?
Describe the database optimization techniques you are currently using or have used in your projects.
How would you handle a scenario where producers generate events faster than consumers can process them? Discuss strategies to manage this backpressure.
If a database is overwhelmed, what strategies would you employ to optimize query performance?
Discuss how you have achieved high performance in REST APIs in your previous work.
What HTTP status codes are typically returned in response when a new resource is successfully created?
Under what circumstances would you expect to receive an HTTP 204 (No Content) status code in a response?
Describe your experience and approach to using JUnit and Mockito for testing in your projects.
What percentage of test coverage do you typically aim for in your current project, and why?
Are you using AWS in your current work? Do you have access to the AWS console? What specific AWS services are you utilizing?
In a production break scenario, outline your approach to identify, analyze, and fix the issue.
Summary
I interviewed for a TDI Internship at Deutsche Bank through an on-campus process, which included an online assessment and three interview rounds. The internship offers a stipend of 75,000 per month, with a PPO compensation package around 20.2L annually upon conversion.
Full Experience
There were a total of four rounds in the selection process for the internship. The first round was an Online Assessment that consisted of MCQs (based on core Computer Science subjects) and two coding questions. The remaining three rounds were interviews.
🧠 Online Assessment:
The test consisted of 10 MCQs based on core Computer Science subjects such as OOPs, DBMS, OS, CN, and SQL. Each question carried 4 marks, with no negative marking.
There were 2 coding questions:
Problem 1:
You are given an array and two integers, K and M. There is an operation where any number of elements in the array can be incremented by 1 in a single operation. This operation can be performed at most K times. The goal is to find the maximum number of elements in the array that can be made divisible by M after all operations.
Problem 2:
This was a LeetCode hard-level question based on Sliding Window and Binary Search.
Reference: The question was this one.
Round 1 – Technical Interview (35 min):
- Online round focused on core CS subjects — Data Structures, OOPs in C++, OS, and DBMS.
- No DSA asked. Included 4–5 MCQs and a puzzle.
- Also had resume discussion and a short chat about Cricket.
Round 2 – Professional Fitment (30 min):
- Offline round with a friendly and interactive interviewer.
- Focused on situation-based and behavioural questions like team conflicts, handling workload, fraud scenarios, and client issues.
- Also included “Why DB?” and your strengths/weaknesses.
Round 3 – HR Round (25 min):
- Focused on behavioral and situational questions — future goals, regrets, mistakes, work pressure, and compensation.
- Ended on a positive and friendly note, with a handshake and mutual excitement about joining Deutsche Bank.
Interview Questions (2)
You are given an array and two integers, K and M. There is an operation where any number of elements in the array can be incremented by 1 in a single operation. This operation can be performed at most K times. The goal is to find the maximum number of elements in the array that can be made divisible by M after all operations.
This was a LeetCode hard-level question based on Sliding Window and Binary Search. I was referred to this problem.
Preparation Tips
- Be clear about basics of programming.
- Brush up on CS subjects.
- Deutsche Bank focuses on personality, clearing the coding round was the toughest part.
Summary
I interviewed for a Summer Intern, Tech-Analyst role at Deutsche Bank, which involved coding, technical, and HR rounds. Despite some challenges in the technical round, I successfully secured a Summer Internship offer.
Full Experience
Deutsche Bank visited our campus to hire Summer Interns for tech-analyst roles. The basic shortlist criteria required a CGPA of 4/10 or greater.
Round 1: Coding Round
The first round was a 2.5-hour coding test with two questions and 20 multiple-choice questions. The coding problems were:
- A slightly modified version of the Trapping Rainwater problem. If I had solved it before, it would have been easy; otherwise, it was a medium-difficulty problem.
- An easy mathematical problem based on Binary Search, which could also be solved with brute force.
The MCQs were medium to hard difficulty, covering Database Management Systems, Computer Networks, Time Complexities, and Graphs. Out of 200 students, 40 were shortlisted for Round 2.
Round 2: Technical Interview
This round had some irony. Many students before me were asked relatively easy questions on topics like BSTs, Linked Lists, Arrays, and some math puzzles. However, when it was my turn, I was immediately hit with a backtracking question: Find all subsets of array. I also faced a question on finding the Inorder successor in a Binary Tree, which I answered correctly. The interviewer then delved into OOPS concepts, asking about types of inheritance, a brief explanation of each, and the usefulness of inheritance. Finally, I was given a mathematical puzzle, for which I provided a satisfactory solution, though not the best one. I felt a bit low after this round, as I perceived others had performed better. To my surprise, I received a call informing me that I was the first person to be shortlisted for the HR round!
Round 3: HR Interview
The HR interviewers were incredibly friendly. I arrived two minutes late, so I apologized and waited for permission before sitting down. The interviewer's first statement was, "Your resume was one of the most unique that I have come across in my career." I was thrilled, as I had indeed curated a diverse resume with projects in Android and Front-End Development, startup internships, and roles in both my institute's E-Cell and Dance Club. It later became clear that my unique resume played a significant role in my HR round shortlisting, despite my less-than-stellar technical performance. The interviewer asked me about my projects, my motivations behind them, and how they stood out. I did my best to explain them simply. She also asked why I chose Kotlin over Java for Android Development—a question I had prepared for exhaustively! I articulated my points as succinctly as possible. Next, she inquired about my ability to bond with people from different cultures. I explained that I focus on knowledge rather than background, citing challenges I'd worked on with developers globally. Finally, she posed a situation-based question: "What would you choose from? Protecting the security of your company, or leaving it and saving the life of someone?" Having read many interview experiences, I knew this type of question tests composure and critical thinking rather than a single "right" answer. My response was, "I would call/shout for someone to look into either of those. Also, I would make it a point to install a system that would save my work and encrypt it at a button's click." She seemed satisfied. When asked if I had any questions, I inquired about areas for improvement in my profile. She laughed and said, "The comments will keep coming. You are just getting started!" I left the interview feeling very positive. After four hours of intense pressure, the results were declared. Out of 16 finalists, 8 of us were offered a Summer Internship at Deutsche Bank, India.
Interview Questions (7)
Find the inorder successor of a node in a Binary Tree.
Discuss types of inheritance, explain each in brief, and explain why inheritance is useful.
Explain the reasons for choosing Kotlin over Java for Android Development.
Describe how I interact and bond with people from different cultures, including challenges and experiences.
Situation-based question: 'What would you choose from? Protecting the security of your company, or leaving it and saving the life of someone?'
Preparation Tips
I always strive to keep my cool and never lose hope, even after facing rejections. I ensure my Data Structures and Algorithms concepts are crystal clear, and I'm meticulous about only including information on my resume that I can thoroughly explain. Consistent practice on LeetCode is also key to my preparation.