Publicis Sapient
100+ Kodam Industries Interview Questions and Answers
Q1. • What is Data Extensions? How it is different from Lists? • What is A/B testing and how to perform A/B Testing? • How do you filter data in Date extension? • What are Automation Studio Activities? • Can you ex...
read moreQuestions related to Salesforce Marketing Cloud features and functionalities.
Data Extensions are tables that store data in Marketing Cloud, while Lists are simple collections of subscribers.
A/B testing is a method of comparing two versions of a campaign to determine which one performs better.
Data in Data Extensions can be filtered using SQL queries or Filter Activities in Automation Studio.
Automation Studio Activities are pre-built actions that can be used to automate marketi...read more
Q2. Next Greater Element Problem Statement
You are given an array arr
of length N
. For each element in the array, find the next greater element (NGE) that appears to the right. If there is no such greater element, ...read more
The task is to find the next greater element for each element in an array to its right, if no greater element exists, return -1.
Iterate through the array from right to left and use a stack to keep track of elements.
Pop elements from the stack until a greater element is found or the stack is empty.
Store the next greater element for each element in the output array.
Q3. 1. remove duplicate from the list of object
Remove duplicates from a list of objects.
Create a new empty list.
Iterate through the original list.
For each object, check if it is already in the new list.
If not, add it to the new list.
Return the new list without duplicates.
Q4. Do you know core values of Sapient?
Yes, the core values of Sapient are People, Collaboration, Innovation, and Excellence.
People - Putting people first, valuing diversity and inclusion
Collaboration - Working together as a team, fostering open communication
Innovation - Encouraging creativity, embracing new ideas and technologies
Excellence - Striving for high quality, continuous improvement
Q5. Create a Login form and validate email input using Vanilla JS.
Create a Login form with email validation using Vanilla JS.
Create a form in HTML with input fields for email and password
Use JavaScript to validate the email input using regular expressions
Display error messages if the email input is not in the correct format
Q6. Count Substrings with K Distinct Characters
Given a lowercase string 'STR' and an integer K, the task is to count all possible substrings that consist of exactly K distinct characters. These substrings are not ...read more
Count substrings with exactly K distinct characters in a given lowercase string.
Iterate through all substrings of the given string and count the number of distinct characters in each substring.
Keep track of substrings with exactly K distinct characters and increment the count.
Return the total count of substrings with exactly K distinct characters.
Q7. How garbage collector identifies which object it should pick?
Garbage collector identifies objects to pick based on their reachability.
Garbage collector starts from a set of root objects and identifies all objects that are reachable from them.
Objects that are not reachable are considered garbage and are eligible for collection.
Reachability is determined by following object references from root objects.
Objects that are referenced by other reachable objects are also considered reachable.
Objects that are not referenced by any reachable obj...read more
Q8. Sql query performance and optimisation ways
Tips for SQL query performance and optimization
Use indexes to speed up query execution
Avoid using SELECT * and only select necessary columns
Use JOINs instead of subqueries
Avoid using functions in WHERE clauses
Use EXPLAIN to analyze query performance
Normalize database tables to reduce redundancy
Use stored procedures for frequently executed queries
Q9. Explain Clean Architecture, how it works?
Clean Architecture is a software design principle that separates concerns and promotes testability, maintainability, and scalability.
Clean Architecture emphasizes separation of concerns by dividing the codebase into layers: Presentation, Domain, and Data.
Each layer has its own responsibilities and dependencies flow inward, ensuring loose coupling and high cohesion.
The Presentation layer handles user interactions and UI components.
The Domain layer contains business logic and u...read more
Q10. Sorting the list of strings based on the count of their occurrences/
Sorting a list of strings based on their occurrence count.
Create a dictionary to store the count of each string.
Use the dictionary to sort the list based on the count of occurrences.
If two strings have the same count, sort them alphabetically.
Return the sorted list.
Q11. Missing number in sequence(choose the best algorithm)
Algorithm to find missing number in a sequence
Use mathematical formula for arithmetic or geometric sequence
For random sequence, use sorting and iteration
Consider edge cases like empty sequence or multiple missing numbers
Q12. What Volume of data have you handled in your POCs ?
I have handled terabytes of data in my POCs, including data from various sources and formats.
Handled terabytes of data in POCs
Worked with data from various sources and formats
Used tools like Hadoop, Spark, and SQL for data processing
Q13. How to verify code before at compile time?
Code can be verified before compile time using static code analysis tools.
Static code analysis tools can detect potential bugs, security vulnerabilities, and coding errors before compilation.
Examples of static code analysis tools include SonarQube, Checkstyle, and PMD.
These tools can be integrated into the development process to ensure code quality and reduce the risk of errors.
Static code analysis can also help enforce coding standards and best practices.
Regular use of stati...read more
Q14. Write a Java String program to replace the characters. Write a Java program for Encapsulation. What is the difference between Comparator and Comparable? In between an Interview, the screen was abruptly closed....
read moreJava String program to replace characters, Encapsulation program, Comparator vs Comparable difference
For Java String program to replace characters, use the replace() method to replace specific characters in a string.
For Encapsulation in Java, use private access modifiers to restrict access to class variables and use public getter and setter methods to access and modify them.
Comparator and Comparable are interfaces used for sorting objects in Java. Comparable is implemented by...read more
Q15. Diffrences between list and tuples, OOPS concepts, Decorators, Mutable vs Immutable, list and tuple which is faster, lamda, reduce, filter,generators and iter objects.
Lists and tuples are both data structures in Python, but lists are mutable while tuples are immutable. OOP concepts include inheritance, encapsulation, and polymorphism. Decorators are used to modify functions or methods. Lambda functions are anonymous functions. Reduce, filter, generators, and iter objects are all related to functional programming in Python.
Lists are mutable, meaning they can be changed after creation. Tuples are immutable, meaning they cannot be changed aft...read more
Q16. microservices various design patterns
Microservices design patterns are architectural patterns used to design and implement microservices-based applications.
Some common microservices design patterns include API Gateway, Service Registry, Circuit Breaker, and Saga Pattern.
API Gateway pattern acts as a single entry point for clients to access multiple microservices.
Service Registry pattern helps in service discovery and registration of microservices.
Circuit Breaker pattern prevents cascading failures by failing fas...read more
Q17. What is difference between apache normal restart and graceful restart?
Apache normal restart stops and starts the server, while graceful restart allows current connections to finish before restarting.
Normal restart stops and starts the server immediately, causing all active connections to be terminated.
Graceful restart allows the server to continue serving current connections until they are finished, then starts a new instance of the server.
Graceful restart is useful for minimizing downtime and avoiding disruption to users.
Normal restart is fast...read more
Q18. How will you design/configure a cluster if you have given 10 petabytes of data.
Designing/configuring a cluster for 10 petabytes of data involves considerations for storage capacity, processing power, network bandwidth, and fault tolerance.
Consider using a distributed file system like HDFS or object storage like Amazon S3 to store and manage the large volume of data.
Implement a scalable processing framework like Apache Spark or Hadoop to efficiently process and analyze the data in parallel.
Utilize a cluster management system like Apache Mesos or Kubernet...read more
Q19. Design Patterns? Types which all worked on
Design patterns are reusable solutions to common problems in software design. Some types include Singleton, Factory, Observer, and Strategy patterns.
Singleton pattern ensures a class has only one instance and provides a global point of access to it.
Factory pattern creates objects without specifying the exact class of object that will be created.
Observer pattern defines a one-to-many dependency between objects so that when one object changes state, all its dependents are notif...read more
Q20. Co-routines how they are light weight?
Co-routines are lightweight because they are non-blocking and do not require a separate thread.
Co-routines are cooperative, meaning they can pause and resume execution without blocking the thread.
They use fewer resources than threads because they do not require a separate stack or context switch.
Co-routines can be used to perform asynchronous operations without the overhead of creating and managing threads.
Example: In Android, co-routines can be used to perform network reques...read more
Q21. When will you decide to use repartition and coalesce?
Repartition is used for increasing partitions for parallelism, while coalesce is used for decreasing partitions to reduce shuffling.
Repartition is used when there is a need for more partitions to increase parallelism.
Coalesce is used when there are too many partitions and need to reduce them to avoid shuffling.
Example: Repartition can be used before a join operation to evenly distribute data across partitions for better performance.
Example: Coalesce can be used after a filter...read more
Q22. 1. Program for Inserting random number in an array and then sort in ascending and descending order. 2. Dynamic x path related questions 3. Maven related questions 4. TestNG annotations..etc 5. Program for rever...
read moreQ23. How would you manage the drift in terraform if services are added manually?
To manage drift in Terraform due to manually added services, use Terraform import, state management, and version control.
Use Terraform import to bring manually added services under Terraform management.
Regularly update Terraform state file to reflect the current state of infrastructure.
Utilize version control to track changes made outside of Terraform.
Implement automated checks to detect and reconcile drift in infrastructure.
Q24. Solid principle with examples
SOLID principles are a set of guidelines for writing maintainable and scalable code.
Single Responsibility Principle - A class should have only one reason to change.
Open/Closed Principle - A class should be open for extension but closed for modification.
Liskov Substitution Principle - Subtypes should be substitutable for their base types.
Interface Segregation Principle - A client should not be forced to depend on methods it does not use.
Dependency Inversion Principle - High-le...read more
Q25. Is live data is life cycle aware. If it's aware what does ViewModel do?
Yes
LiveData is lifecycle aware and can be used to observe changes in data.
ViewModel provides a way to store and manage UI-related data across configuration changes.
ViewModel can hold LiveData objects to provide data to the UI.
LiveData and ViewModel work together to ensure data consistency and prevent memory leaks.
Q26. Sealed Classes where do we use?
Sealed classes are used to restrict inheritance and provide a fixed set of subclasses.
Sealed classes are used when we want to restrict the number of subclasses that can be created.
They are useful when we have a fixed set of subclasses and we want to ensure that no other subclasses are created.
Sealed classes can be used in conjunction with when expressions to provide exhaustive pattern matching.
They are commonly used in Kotlin's own standard library, such as the Result class.
Q27. internals of dictionary
A dictionary is a data structure that stores key-value pairs for efficient lookups.
Key-value pairs are stored in dictionaries.
Keys must be unique within a dictionary.
Values can be accessed using keys.
Dictionaries are mutable and can be modified.
Example: {'name': 'John', 'age': 30}
Q28. 1. What is DoR 2. Difference between Factoring and Bill discounting 3. Explain O2C cycle 4. How does T&M and FP process works 5. Important KPIs in an IT industry
Answers to questions related to finance and IT industry
DoR stands for Declaration of Readiness, which is a legal document that indicates a party's readiness to proceed with a legal action.
Factoring is a financial transaction where a company sells its accounts receivable to a third party at a discount, while bill discounting is a short-term borrowing arrangement where a company borrows money from a bank by selling its bills before the due date.
O2C cycle refers to the order-to-...read more
Q29. Difference between ViewBag and ViewData in MVC ?
ViewBag and ViewData are used to pass data from controller to view in MVC. ViewBag uses dynamic properties while ViewData uses dictionary.
ViewBag is a dynamic object while ViewData is a dictionary object.
ViewBag is a property of the Controller base class while ViewData is a property of the ViewDataDictionary class.
ViewBag is used to pass data from controller to view while ViewData is used to pass data from controller to view and between views.
Example of using ViewBag: ViewBag...read more
Q30. Microservice Architecture vs monolith Architechture
Microservice architecture allows for greater scalability and flexibility compared to monolith architecture.
Microservices are smaller, independent components that can be developed and deployed separately
Monoliths are a single, large application with tightly coupled components
Microservices allow for easier maintenance and updates
Monoliths can be simpler to develop and deploy initially
Examples of microservice architecture include Netflix and Amazon
Examples of monolith architectu...read more
Q31. Write Lambda expression for Sorting , PartitionBy in Java 8.
Lambda expressions in Java 8 for Sorting and PartitionBy
Use Comparator interface with lambda expression for sorting
Use Collectors.partitioningBy() method with lambda expression for PartitionBy
Q32. if any data loss issue, how will you approach to different teams and the your team
I would approach the issue by communicating with all relevant teams and creating a plan to recover the lost data.
Identify the cause of the data loss
Notify all relevant teams and stakeholders
Create a plan to recover the lost data
Implement the plan and monitor progress
Communicate updates to all stakeholders
Q33. What is difference between reload and restart?
Reload refers to reloading the configuration without restarting the service, while restart refers to stopping and starting the service.
Reload is a process of reloading the configuration of a service without stopping it completely.
Restart is a process of stopping and starting the service completely.
Reload is faster than restart as it does not require the service to be completely stopped.
Reload is useful when making minor changes to the configuration, while restart is required ...read more
Q34. How to prevent memory leak?
Prevent memory leaks by properly managing memory allocation and deallocation.
Use smart pointers instead of raw pointers.
Avoid circular references.
Free memory when it is no longer needed.
Use tools like valgrind to detect memory leaks.
Avoid global variables.
Use RAII (Resource Acquisition Is Initialization) technique.
Avoid using malloc and free directly.
Use a garbage collector if appropriate.
Q35. Where SQL Indexes are stored?
SQL indexes are stored in the database's file system.
Indexes are stored in the same filegroup as the table or in a separate filegroup.
They can be stored in the same physical file as the table or in a separate file.
Indexes can also be stored in memory, such as in the buffer pool.
The location of the index storage can affect performance.
Examples of index storage options include clustered, nonclustered, and full-text indexes.
Q36. How you manage pressure
I manage pressure by prioritizing tasks, staying organized, taking breaks, and seeking support when needed.
Prioritize tasks based on deadlines and importance
Stay organized with to-do lists and calendars
Take breaks to recharge and avoid burnout
Seek support from colleagues or supervisors when feeling overwhelmed
Q37. How does viewmodel survive when activity is destroyed on configuration?
The ViewModel survives configuration changes by being retained by the system.
ViewModels are designed to survive configuration changes like screen rotations or language changes.
When an activity is destroyed and recreated, the ViewModel is not destroyed and retains its data.
The ViewModel is associated with the activity's lifecycle and is retained until the activity is finished.
The retained ViewModel instance can be accessed by the newly created activity to restore its state.
Q38. What is OS, explain threading, explain paging, database transactions - acid properties, 2-3 questions related to computer networks
Explanation of OS, threading, paging, database transactions (ACID properties), and computer networks.
OS (Operating System) is a software that manages computer hardware resources and provides services for computer programs.
Threading involves the ability of a program to execute multiple parts concurrently.
Paging is a memory management scheme that eliminates the need for contiguous allocation of physical memory.
Database transactions follow ACID properties - Atomicity, Consistenc...read more
Q39. Explain CICD process/architecture you implemented ?
Implemented CICD process using Jenkins, Git, Docker and Kubernetes.
Used Jenkins for continuous integration and continuous delivery
Git for version control and code management
Docker for containerization and portability
Kubernetes for container orchestration and scaling
Implemented automated testing and deployment pipelines
Enabled faster and more reliable software delivery
Reduced manual errors and increased efficiency
Q40. Why bundling in MVC is needed?
Bundling in MVC is needed to improve performance by reducing the number of HTTP requests.
Bundling combines multiple files into a single file to reduce the number of HTTP requests.
This improves performance by reducing the time it takes to load a page.
Bundling also allows for minification, which reduces the size of the files being sent to the client.
Examples of files that can be bundled include CSS, JavaScript, and images.
Q41. How do you act on the feed back given to you? Have you ever gave feedback on team members? what aspects do you consider before giving feedback?
Q42. writing a recursion program
Recursion program is a function that calls itself until a base condition is met.
Identify the base case and write the code to handle it
Write the code to call the function recursively
Ensure that the recursion terminates eventually
Examples: factorial, Fibonacci sequence, binary search
Q43. Why we use security groups in AWS?
Security groups are used to control inbound and outbound traffic for EC2 instances in AWS.
Security groups act as virtual firewalls for EC2 instances.
They allow or deny traffic based on rules defined by the user.
They can be assigned to multiple instances.
They are stateful, meaning they keep track of the traffic flow and allow the response traffic.
They can be used to restrict access to specific ports or IP addresses.
They are a fundamental component of AWS security.
Example: A se...read more
Q44. 1. Command for find the 30 days old file in linux
Use the find command with the -mtime option to find files that are 30 days old in Linux.
Use the find command with the -mtime option to specify the number of days.
For example, to find files that are exactly 30 days old: find /path/to/directory -mtime 30
To find files that are older than 30 days: find /path/to/directory -mtime +30
To find files that are newer than 30 days: find /path/to/directory -mtime -30
Q45. Sub components and qualifiers in Dagger 2
Sub components and qualifiers are used in Dagger 2 for modularization and dependency injection.
Sub components allow for modularization of dependencies within a larger component.
Qualifiers are used to differentiate between multiple dependencies of the same type.
Sub components are created using the @Subcomponent annotation.
Qualifiers are created using custom annotations with @Qualifier.
Example: @Named("example") String exampleString;
Example: @Subcomponent(modules = {ExampleModu...read more
Q46. how do you achieve data security when saving data persistanly.
Data security can be achieved through encryption, access controls, backups, and regular security audits.
Encrypt sensitive data using strong encryption algorithms.
Implement access controls to restrict unauthorized access to the data.
Regularly backup the data to prevent data loss.
Conduct regular security audits to identify and fix vulnerabilities.
Use secure protocols and communication channels for data transfer.
Implement secure coding practices to prevent common security vulner...read more
Q47. What is NAT and how to configure it?
NAT stands for Network Address Translation. It is used to translate private IP addresses to public IP addresses.
NAT is used to allow devices with private IP addresses to access the internet using a public IP address.
It can be configured on a router or firewall.
There are three types of NAT: static, dynamic, and port forwarding.
Static NAT maps a private IP address to a public IP address permanently.
Dynamic NAT maps a private IP address to a public IP address temporarily.
Port fo...read more
Q48. Which CIDR you are using in your VPC?
We are using CIDR block 10.0.0.0/16 in our VPC.
Our VPC is using the private IP address range of 10.0.0.0/16
This CIDR block allows us to have up to 65,536 IP addresses
We have divided the VPC into multiple subnets using smaller CIDR blocks
Q49. What is memory management?
Memory management is the process of managing computer memory to allocate and deallocate memory resources.
Memory management involves allocating memory to processes that need it and deallocating memory that is no longer needed.
It also involves managing memory fragmentation and ensuring efficient use of memory.
Examples of memory management techniques include paging, segmentation, and virtual memory.
Memory leaks can occur when memory is not properly managed, leading to performanc...read more
Q50. Write a program in Scala/python/Java to print star pattern
Q51. What is the explanation of the coding exercise and the associated unit tests?
The coding exercise involves implementing a specific feature or functionality and writing unit tests to ensure its correctness.
Explain the purpose of the coding exercise and what is expected to be implemented.
Describe the approach taken to solve the problem and any challenges faced during implementation.
Discuss the design decisions made and how they impact the overall code quality.
Explain the unit tests written to validate the functionality of the implemented code.
Provide exa...read more
Q52. How would you safeguard the data and services?
To safeguard data and services, I would implement encryption, access controls, regular backups, and monitoring.
Implement encryption for data at rest and in transit
Set up access controls to restrict unauthorized access
Regularly backup data to prevent data loss
Implement monitoring and alerting to detect and respond to security incidents
Q53. How do you schedule a pod in a certain node in k8s
To schedule a pod in a certain node in k8s, use nodeSelector in pod spec.
Add a label to the node you want to schedule the pod on
Specify the label in the pod spec using nodeSelector
Example: nodeSelector: {key: value}
Q54. What is API testing and how can the body of a response be validated using automation
Q55. How .net manages memory?
Memory management in .NET
Garbage Collector manages memory by freeing up unused objects
Memory is allocated on the heap and managed by the CLR
Finalizers are used to release unmanaged resources
Memory leaks can occur if objects are not properly disposed
Value types are stored on the stack and are automatically managed
Q56. Write your own algorithm to find the numbers from an integer array
Algorithm to find numbers from an integer array
Iterate through the array and check each element
If the element is a number, add it to a new array
Return the new array with all the numbers
JOINS in SQL are used to combine rows from two or more tables based on a related column between them.
JOINS are used to retrieve data from multiple tables based on a related column
Types of JOINS include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN
Example: SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column
Q58. How Dictionary stores data
A dictionary stores data in key-value pairs.
Each key is unique and maps to a specific value.
Keys are used to retrieve values from the dictionary.
Data can be added, removed, or updated in the dictionary.
Examples include Python's dict and Java's HashMap.
Q59. What is SOLID principles?
SOLID principles are a set of five design principles that help make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable with objects of its subclasses without affecting the functionality.
I - Interface ...read more
Q60. Java program to find the missing number from array.
Java program to find the missing number from array.
Create an array of integers.
Calculate the sum of all the integers in the array.
Calculate the sum of first n natural numbers where n is the length of the array.
Subtract the sum of array from the sum of first n natural numbers to get the missing number.
Q61. How many Invoices have you processed in a day?
I have processed an average of 50 invoices per day.
On average, I process around 50 invoices per day.
During peak times, I have processed up to 100 invoices in a day.
I use automated tools to streamline the invoice processing workflow.
Q62. How do you check the OS on which the selenium program is running
You can check the OS on which the Selenium program is running by using the 'System.getProperty()' method in Java.
Use 'System.getProperty('os.name')' to get the name of the operating system
Use 'System.getProperty('os.version')' to get the version of the operating system
Use 'System.getProperty('os.arch')' to get the architecture of the operating system
Q63. Use of Vaccum in delta tables in terms of performance
Vaccum in delta tables helps improve performance by reclaiming space and optimizing file sizes.
Vaccum operation helps optimize file sizes by removing small files and compacting larger files.
It helps improve query performance by reducing the amount of data that needs to be scanned.
Vaccum operation can be scheduled to run periodically to maintain optimal performance.
It is recommended to run Vaccum on delta tables after major data deletions or updates.
Example: VACCUM delta.`tabl...read more
Q64. AAS vs PAS vs IAS in Azure
AAS, PAS, and IAS are different types of authentication services in Azure.
AAS (Azure Active Directory Authentication) is used for authenticating users and applications in Azure AD.
PAS (Managed Service Identity) is used for authenticating resources within Azure services.
IAS (Identity Provider Authentication) is used for authenticating users through external identity providers like Facebook or Google.
Each service has its own use case and can be used in combination with others f...read more
Q65. let val = {a: {b: 5}}, display the value 5 and freeze the val so that it cannot be changed to another number.
Q66. Coding question - Flatten 3 integer lists into one single list using streams and flatmap
Flatten 3 integer lists into one using streams and flatmap.
Use flatMap to transform each list into a stream of integers
Collect all the integers into a single list using the collect method
Q67. How will you handle synchronization issues in selenium
Q68. Best deployment strategy to use for kubernetes deployments?
The best deployment strategy for Kubernetes deployments is to use rolling updates.
Rolling updates allow for zero downtime deployment by gradually updating pods.
Canary deployments can also be used to test new versions on a small subset of users.
Blue-green deployments can be used to switch between two identical environments.
Deployment strategies should be chosen based on the specific needs of the application.
Other strategies include A/B testing and feature flags.
Q69. command to copy the data from AWS s3 to redshift
Use the COPY command in Redshift to load data from AWS S3.
Use the COPY command in Redshift to load data from S3 bucket.
Specify the IAM role with necessary permissions in the COPY command.
Provide the S3 file path and Redshift table name in the COPY command.
Ensure the Redshift cluster has the necessary permissions to access S3.
Q70. What is “stat” in dispatcher?
Stat is a command in dispatcher that displays statistics about the current state of the system.
Stat is a command used in dispatcher to display statistics about the current state of the system.
It can be used to view information about the CPU, memory, and disk usage.
For example, 'stat -u' displays CPU usage statistics.
Another example is 'stat -m' which displays memory usage statistics.
Q71. Find output related to inheritance program
Inheritance program output
Inheritance allows a subclass to inherit properties and methods from a superclass
The output of an inheritance program will depend on the specific implementation
The program may output the values of inherited properties or the results of inherited methods
Q72. How you handle security in your application?
Q73. Exception Handling in Python Programming in case of class with subclass
Exception handling in Python for classes with subclasses involves using try-except blocks to catch and handle errors.
Use try-except blocks to catch exceptions in both parent and subclass methods
Handle specific exceptions using multiple except blocks
Use super() to call parent class methods within subclass methods
Reraise exceptions if necessary using 'raise'
Q74. Open any eommerce website and write xpath for a certain element
Q75. How you tackle various problems
I tackle various problems by breaking them down into smaller tasks, conducting research, collaborating with team members, and seeking feedback.
Break down the problem into smaller tasks to make it more manageable
Conduct research to gather relevant information and insights
Collaborate with team members to brainstorm ideas and solutions
Seek feedback from peers and mentors to improve problem-solving approach
Q76. Scala-Spark code to perform some extract, transform and load data.
Q77. what is the importance of knowing js internals
Understanding JavaScript internals is important for optimizing performance, debugging, and writing efficient code.
Helps in optimizing performance by understanding how JavaScript engines work under the hood
Aids in debugging by knowing how different data types are stored and manipulated
Enables writing efficient code by understanding concepts like event loop, closures, and prototypes
Q78. Interface vs Abstract
Interface defines a contract while abstract class provides partial implementation.
Interface only contains method signatures while abstract class can have both abstract and non-abstract methods.
A class can implement multiple interfaces but can only inherit from one abstract class.
Interfaces are used for loose coupling while abstract classes are used for code reusability.
Example of interface: Comparable interface in Java.
Example of abstract class: Animal class with abstract met...read more
Q79. Lifecycle of react class based components, hooks, pure & impure components
Q80. Use of Controller in WebApi
Controllers in WebApi are used to handle incoming HTTP requests and provide appropriate responses.
Controllers are responsible for handling specific HTTP requests and returning appropriate responses.
They contain action methods that are invoked when a specific HTTP request is received.
Controllers can also be used to implement authorization and authentication logic.
Example: A UserController can handle HTTP requests related to user management such as creating, updating, and delet...read more
Q81. Collections and difference between the different collections, hashmap
Explanation of collections and difference between them, with focus on hashmap.
Collections are data structures that store and manipulate groups of objects.
ArrayList, LinkedList, HashSet, and TreeMap are some examples of collections.
HashMap is a collection that stores key-value pairs and allows for fast retrieval of values based on their keys.
HashMap uses hashing to store and retrieve values, while TreeMap uses a red-black tree.
HashMap allows for null values and keys, while Tre...read more
Q82. How Workload Identity Federation works in GCP
Workload Identity Federation in GCP allows workloads running on GCP to authenticate using external identity providers.
Workload Identity Federation enables workloads to use external identity providers like Active Directory or LDAP for authentication.
It allows workloads to obtain short-lived credentials from GCP's Security Token Service (STS) using their external identity provider's credentials.
This helps in centralizing identity management and simplifying access control for wo...read more
Q83. Explain MVVM and LiveData
MVVM is a design pattern that separates UI from business logic. LiveData is a data holder class that is lifecycle-aware.
MVVM stands for Model-View-ViewModel
Model represents the data and business logic
View represents the UI
ViewModel acts as a mediator between Model and View
LiveData is an observable data holder class
LiveData is lifecycle-aware and only updates the UI when the app is in the foreground
LiveData automatically manages the lifecycle of the data
LiveData can be used to...read more
Q84. How can you help to publicis sapient..?
I can contribute to Publicis Sapient by utilizing my AEM development skills and experience to deliver high-quality solutions.
I can work on AEM projects and deliver them on time and within budget.
I can collaborate with cross-functional teams to ensure seamless integration of AEM with other systems.
I can provide technical guidance and support to junior developers.
I can stay up-to-date with the latest AEM trends and technologies to ensure that Publicis Sapient remains competitiv...read more
Q85. How can you make your class immutable?
Q86. A scenario to automate and check if iframe is displayed.
Automate scenario to check if iframe is displayed
Identify the iframe element using its locator (id, class, xpath, etc.)
Switch to the iframe using driver.switchTo().frame() method
Verify if the iframe is displayed using driver.findElement() method
Q87. How to call multiple API calls?
Q88. What is the coroutines? Lazy and lateint Sealed classes
Coroutines are a way to perform asynchronous programming in a more structured and readable manner in Android development.
Coroutines are lightweight threads that can be used to perform long-running tasks without blocking the main thread.
They simplify asynchronous programming by allowing developers to write code that looks synchronous, making it easier to understand and maintain.
Coroutines can be used for tasks like network requests, database operations, and other IO-bound oper...read more
Q89. How does SSL pinning works?
SSL pinning is a security technique that ensures a client only communicates with a server using a pre-defined public key.
SSL pinning involves hardcoding the server's public key in the client's code or configuration.
During the SSL handshake, the client checks if the server's public key matches the pinned key.
If the keys match, the connection is established; otherwise, it is rejected.
Pinning prevents man-in-the-middle attacks by verifying the server's identity.
Q90. Where to save encription key?
Encryption keys should be securely stored in a separate key management system.
Encryption keys should not be stored alongside the encrypted data.
Use a dedicated key management system (KMS) to store and manage encryption keys.
Implement strong access controls and authentication mechanisms for the KMS.
Consider using hardware security modules (HSMs) for added security.
Regularly rotate encryption keys to minimize the impact of a potential compromise.
Q91. Which reporting tool have you worked on
Q92. Code Inheritance in Javascript using parent child concept
Q93. write a vba code convert 2/2/2022 in text
Use VBA code to convert 2/2/2022 into text format.
Use the Format function in VBA to convert the date into text.
Specify the desired format within the Format function.
Example: Format(#2/2/2022#, "mmmm d, yyyy") will convert 2/2/2022 to February 2, 2022.
Q94. Finding second largest number in an array
Find the second largest number in an array
Sort the array in descending order
Return the element at index 1
Q95. Design patterns you have used in your project
Q96. Securing a REST API
Securing a REST API involves implementing authentication, authorization, encryption, and rate limiting.
Implement authentication using tokens or API keys
Use HTTPS to encrypt data transmitted over the network
Implement authorization to control access to resources
Implement rate limiting to prevent abuse or DoS attacks
Q97. What is custom function in VBA
A custom function in VBA is a user-defined function that performs a specific task or calculation.
Custom functions are created by the user to extend the functionality of Excel or other Office applications.
They can be used to perform complex calculations, manipulate data, or automate tasks.
Custom functions are written in VBA code and can be called from within Excel formulas.
For example, a custom function could be created to calculate the average of a range of cells or to format...read more
Q98. Solutioning of assignment
Solutioning of assignment
Understand the problem statement thoroughly
Identify the requirements and constraints
Brainstorm possible solutions
Evaluate and select the best solution
Create a detailed plan of action
Implement the solution and test it
Document the solution and present it to stakeholders
Q99. How to handle security in api.
Security in APIs is crucial for protecting sensitive data and preventing unauthorized access.
Use authentication methods such as OAuth or API keys to verify the identity of users accessing the API.
Implement encryption to secure data transmission between clients and servers.
Set up rate limiting to prevent abuse and protect against denial of service attacks.
Regularly update and patch the API to address security vulnerabilities.
Monitor API usage and logs for suspicious activity t...read more
Q100. difference between remember and rememberSaveable
remember is used to store a value in a composable function, while rememberSaveable is used to store a value that survives configuration changes.
remember is used to store a value that does not survive configuration changes
rememberSaveable is used to store a value that survives configuration changes, such as rotation of the device
rememberSaveable is typically used for storing view model data in Jetpack Compose
Top HR Questions asked in Kodam Industries
Interview Process at Kodam Industries
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month