i
Cognizant
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Walk-in and was interviewed in Nov 2024. There were 3 interview rounds.
Optimization techniques in Apache Spark improve performance and efficiency.
Partitioning data to distribute work evenly
Caching frequently accessed data in memory
Using broadcast variables for small lookup tables
Optimizing shuffle operations by reducing data movement
Applying predicate pushdown to filter data early
Coalesce reduces the number of partitions without shuffling data, while repartition increases the number of partitions by shuffling data. Cache and persist are used to persist RDDs in memory.
Coalesce is used to reduce the number of partitions without shuffling data, while repartition is used to increase the number of partitions by shuffling data.
Coalesce is more efficient when reducing partitions as it avoids shuffling...
SQL query to find the second highest rank in a dataset
Use the ORDER BY clause to sort the ranks in descending order
Use the LIMIT and OFFSET clauses to skip the highest rank and retrieve the second highest rank
Example: SELECT rank FROM dataset ORDER BY rank DESC LIMIT 1 OFFSET 1
The SQL code for calculating year-on-year growth percentage with year-wise grouping.
Use the LAG function to get the previous year's value
Calculate the growth percentage using the formula: ((current year value - previous year value) / previous year value) * 100
Group by year to get year-wise growth percentage
To connect Google Cloud Platform with Apache Spark, tools like Dataproc, Cloud Storage, and BigQuery can be used.
Use Google Cloud Dataproc to create managed Spark and Hadoop clusters on GCP.
Store data in Google Cloud Storage and access it from Spark applications.
Utilize Google BigQuery for querying and analyzing large datasets directly from Spark.
Orchestrating code in GCP involves using tools like Cloud Composer or Cloud Dataflow to schedule and manage workflows.
Use Cloud Composer to create, schedule, and monitor workflows using Apache Airflow
Utilize Cloud Dataflow for real-time data processing and batch processing tasks
Use Cloud Functions for event-driven serverless functions
Leverage Cloud Scheduler for job scheduling
Integrate with other GCP services like BigQ...
Coalesce reduces the number of partitions without shuffling data, while repartition reshuffles data to create a specific number of partitions.
Coalesce is used to reduce the number of partitions without shuffling data
Repartition is used to increase or decrease the number of partitions by shuffling data
Coalesce is more efficient when reducing partitions as it avoids shuffling
Repartition is useful when you need to explici...
DataFrame is a higher-level abstraction built on top of RDD, providing more structure and optimization capabilities.
DataFrames are distributed collections of data organized into named columns, similar to tables in a relational database.
RDDs are lower-level abstractions representing a collection of objects distributed across a cluster, with no inherent structure.
DataFrames provide optimizations like query optimization a...
Spark is used for big data processing due to its speed, scalability, and ease of use.
Spark is used for processing large volumes of data quickly and efficiently.
It offers in-memory processing which makes it faster than traditional MapReduce.
Spark provides a wide range of libraries for diverse tasks like SQL, streaming, machine learning, and graph processing.
It can run on various platforms like Hadoop, Kubernetes, and st...
RDDs and DataFrames are data structures in Apache Spark for processing and analyzing large datasets.
RDDs (Resilient Distributed Datasets) are the fundamental data structure of Spark, representing a collection of elements that can be operated on in parallel.
DataFrames are distributed collections of data organized into named columns, similar to a table in a relational database.
DataFrames are built on top of RDDs, providi...
I applied via Naukri.com and was interviewed in Sep 2024. There was 1 interview round.
1. Find duplicate
2. 2,3 highest salary
I applied via Naukri.com and was interviewed in Jan 2024. There were 2 interview rounds.
Basic python coding, list, dict, generators etc
I applied via Company Website and was interviewed in Dec 2024. There were 5 interview rounds.
An aptitude test is an assessment to measure a candidate mental aptitude/mental ability
A group discussion is a structured conversation in which participants share their ideas, perspectives, and solutions on a specific topic.
Assignment details refer to the specifics of an assignment, including any documents and/or emails or subsequent correspondence between the company and the client.
I applied via Walk-in and was interviewed in Oct 2024. There were 2 interview rounds.
2 way 3 way matching is a process used in accounting to ensure accuracy in financial transactions.
2 way matching involves matching the invoice with the purchase order
3 way matching involves matching the invoice with the purchase order and the receiving report
Helps in detecting errors or discrepancies in the billing process
ME23N
ME23N is the T code used to review purchase orders in SAP
It allows users to view details of a specific purchase order, such as vendor information, item details, and delivery status
Contact the inventory manager or supervisor for resolution.
Contact inventory manager or supervisor immediately
Verify the discrepancy with relevant documentation
Discuss potential causes of the mismatch and work towards resolution
GRN stands for Goods Receipt Note, which is a document used in the procurement process to confirm the receipt of goods.
GRN is used in the procurement process to verify that the goods ordered have been received in good condition.
It includes details such as the quantity, quality, and condition of the goods received.
GRN is an important document for inventory management and accounting purposes.
It is typically generated by ...
I would seek hands-on experience through internships, workshops, or online tutorials to bridge the gap between theory and practice.
Seek internships or part-time jobs in the field to gain practical experience
Participate in workshops or training sessions to apply theoretical knowledge in real-life scenarios
Utilize online tutorials or courses to practice and implement theoretical concepts
Collaborate with professionals in ...
I applied via Walk-in and was interviewed in Aug 2024. There were 3 interview rounds.
I am a Senior Software Developer with 8 years of experience in full-stack development, specializing in Java and Angular.
8 years of experience in full-stack development
Specialize in Java and Angular
Strong problem-solving skills
Experience with Agile methodologies
Excellent communication and teamwork abilities
The yield() method in threading is used to give up the CPU and allow other threads to run.
Allows other threads to run by giving up the CPU temporarily
Useful for preventing one thread from dominating the CPU
Can be used to implement cooperative multitasking
Hash collision occurs when two different inputs produce the same hash value. It can be handled by using techniques like chaining or open addressing.
Hash collision is a common issue in hash tables where different keys produce the same hash value.
One way to handle hash collisions is by using chaining, where each bucket in the hash table stores a linked list of key-value pairs with the same hash value.
Another way to handl...
Method references provide a more concise way to refer to methods by name instead of using lambda expressions.
Method references can make code more readable and maintainable by reducing boilerplate code.
They can be used to refer to static methods, instance methods, and constructors.
Example: list.forEach(System.out::println) is equivalent to list.forEach(item -> System.out.println(item)).
Vertical scaling increases the capacity of a single server, while horizontal scaling adds more servers to distribute the load.
Vertical scaling involves increasing the resources of a single server, such as CPU, RAM, or storage.
Horizontal scaling involves adding more servers to distribute the load, often done through containerization or virtualization.
Vertical scaling is limited by the capacity of a single server, while ...
Java program to capitalize first letter of each word in a given string
Split the input string by space to get individual words
Iterate through each word and capitalize the first letter
Join the words back together to form the final capitalized string
Escalation matrix defines the process for escalating production defects based on severity and impact.
Escalation matrix typically includes levels of escalation, responsible parties at each level, and criteria for escalating defects.
For example, a Level 1 escalation may involve the development team, while a Level 2 escalation may involve senior management.
Criteria for escalation may include severity of the defect, impact...
Implemented a real-time data synchronization feature between multiple servers.
Designed a custom protocol for efficient data transfer
Implemented server-side logic to handle data conflicts
Utilized websockets for real-time communication
Yes, I have the ability to handle tasks individually.
I have a proven track record of successfully completing projects on my own.
I am self-motivated and can prioritize tasks effectively.
I have strong problem-solving skills which allow me to tackle challenges independently.
Yes, it is okay to give deliverables under pressure as long as quality is not compromised.
Meeting deadlines is important in software development.
Pressure can sometimes lead to increased focus and productivity.
Communication with stakeholders about realistic timelines is key.
Prioritizing tasks and managing time effectively can help in delivering under pressure.
I am a Senior Software Developer with 8 years of experience in developing web applications using various technologies.
Experienced in full stack development
Proficient in languages like Java, JavaScript, and Python
Skilled in using frameworks like Spring, React, and Django
Strong understanding of database management systems
Familiar with Agile development methodologies
Seeking new challenges and growth opportunities.
Desire for career advancement
Looking for new challenges
Seeking better work-life balance
Company restructuring or changes in management
My current CTC is $100,000 and my expected CTC is $120,000.
Current CTC: $100,000
Expected CTC: $120,000
Yes, I have all relevant documents from previous companies.
I have copies of offer letters, employment contracts, and performance reviews.
I also have any relevant certifications or training records.
I can provide references from previous employers if needed.
based on 1 review
Rating in categories
Associate
72.4k
salaries
| ₹5.1 L/yr - ₹15.9 L/yr |
Programmer Analyst
55.4k
salaries
| ₹2.4 L/yr - ₹9.6 L/yr |
Senior Associate
48.3k
salaries
| ₹8.9 L/yr - ₹27.1 L/yr |
Senior Processing Executive
28.6k
salaries
| ₹1.8 L/yr - ₹9 L/yr |
Technical Lead
17.6k
salaries
| ₹5.9 L/yr - ₹24.2 L/yr |
TCS
Infosys
Wipro
Accenture