Deutsche Telekom
10+ PDM Engineering Interview Questions and Answers
Q1. Share your screen, write a API to get the logs of a spring boot application in kibana way, reading from the back.
API to get logs of a Spring Boot app in Kibana way, reading from the back.
Use Spring Boot Actuator to expose endpoints for log retrieval
Configure Logstash to read logs from the application and send to Elasticsearch
Use Kibana to visualize and search logs
Implement pagination to read logs from the back
Q2. Find the largest number in an Array without DS and loop in Java 8?
Use Java 8 Stream API to find the largest number in an array of strings without using additional data structures or loops.
Convert the array of strings to a stream of integers using map() and parseInt()
Use reduce() with Math::max to find the largest number in the stream
Q3. Exceptions encountered during Automation.
Exceptions encountered during automation testing can include element not found, timeout, invalid input, etc.
ElementNotVisibleException: When an element is present in the DOM but not visible on the page
TimeoutException: When a command takes longer than the timeout specified
NoSuchElementException: When an element could not be found in the DOM
StaleElementReferenceException: When an element is no longer attached to the DOM
InvalidInputException: When invalid input is provided to a...read more
Q4. Write java program to reverse a string.
Java program to reverse a string
Create a char array from the input string
Use two pointers to swap characters from start and end of the array
Convert the char array back to a string and return
Q5. Find all the permutation of the Array?
Permutations of an array of strings are all possible arrangements of the elements.
Use recursion to generate all permutations.
Swap elements to create different permutations.
Base case: when only one element is left, add the permutation to the result.
Example: Array ['A', 'B', 'C'] has permutations ['ABC', 'ACB', 'BAC', 'BCA', 'CBA', 'CAB'].
Q6. difference btwn paralle stream and stream
Parallel stream allows processing elements concurrently, while stream processes elements sequentially.
Parallel stream can improve performance by utilizing multiple threads for processing.
Stream processes elements one by one in a sequential manner.
Example: stream().parallel() vs stream().sequential()
Q7. API error codes meanings.
API error codes are numerical or alphanumeric codes that indicate the type of error that occurred during an API request.
API error codes help developers identify and troubleshoot issues with their API requests.
Common API error codes include 400 Bad Request, 401 Unauthorized, 404 Not Found, 500 Internal Server Error.
Each API error code has a specific meaning and can provide valuable information for debugging.
Q8. Design ZoomCar
Design a car rental platform like ZoomCar.
Create a user-friendly website and mobile app for booking cars.
Integrate GPS and other technologies for easy tracking and navigation.
Offer a wide range of cars for rent, from hatchbacks to luxury cars.
Provide flexible rental options, including hourly, daily, and weekly rentals.
Implement a secure payment gateway for hassle-free transactions.
Ensure proper maintenance and cleaning of cars before and after each rental.
Offer 24/7 customer ...read more
Q9. Difference btwn jdk , jre and jvm
JDK is a development kit that includes JRE and tools for developing Java applications. JRE is a runtime environment for executing Java programs. JVM is a virtual machine that runs Java bytecode.
JDK (Java Development Kit) includes JRE (Java Runtime Environment) and development tools like compiler and debugger.
JRE (Java Runtime Environment) is a software package that provides the libraries and components necessary for running Java applications.
JVM (Java Virtual Machine) is an a...read more
Q10. what is final keyword
Final keyword is used in Java to declare constants, prevent method overriding, and prevent class inheritance.
Used to declare constants - value cannot be changed once assigned
Prevents method overriding - method cannot be overridden in child classes
Prevents class inheritance - class cannot be extended
Q11. what is stream used for
Streams are used in Java to process collections of objects in a functional style.
Streams allow for concise and readable code when working with collections.
They support operations like filter, map, reduce, and collect.
Streams can be sequential or parallel, depending on the processing requirements.
Example: List
names = Arrays.asList("Alice", "Bob", "Charlie"); names.stream().filter(name -> name.startsWith("A")).forEach(System.out::println);
Q12. difference btwn static and volatile
Static variables are shared among all instances of a class, while volatile variables are used to indicate that a variable's value will be modified by different threads.
Static variables are initialized only once at the start of the program and retain their value throughout the program's execution.
Volatile variables are used to ensure visibility of changes to variables across multiple threads.
Static variables are accessed using the class name, while volatile variables are acces...read more
Q13. what are types of Dispatchers
Types of Dispatchers in Android include Main, IO, Default, and Unconfined.
Main Dispatcher: Handles UI-related tasks and runs on the main thread.
IO Dispatcher: Handles IO-related tasks such as network or disk operations.
Default Dispatcher: Used for CPU-intensive tasks that don't block the main thread.
Unconfined Dispatcher: Executes the coroutine in the caller thread until the first suspension point.
Q14. differences between MVVM and MVC
MVVM focuses on separation of concerns, with ViewModel acting as a mediator between Model and View. MVC has tighter coupling between Model, View, and Controller.
MVVM separates concerns by introducing a ViewModel layer to handle presentation logic.
MVC has a tighter coupling between Model, View, and Controller, leading to potential code duplication and difficulty in testing.
In MVVM, the ViewModel exposes data and actions to the View through data binding, reducing the need for c...read more
Q15. How to troubleshoot
Troubleshooting involves identifying, isolating, and resolving technical issues to ensure smooth operation of applications.
Identify the issue by gathering information from users or logs
Isolate the problem by testing different components or configurations
Resolve the issue by applying fixes or workarounds
Document the troubleshooting process for future reference
Q16. What is postman API
Postman API is a collaboration platform for API development, testing, and management.
Postman API is a tool used for testing APIs by sending requests and receiving responses.
It allows users to create and save API requests, organize them into collections, and share them with team members.
Postman API can be used to automate testing, monitor APIs, and collaborate with team members on API development.
It supports various authentication methods, environments, and integrations with o...read more
Interview Process at PDM Engineering
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month