Comcast India Engineering Center
30+ Birbal AI Interview Questions and Answers
Q1. Write a goroutine code which is synced to to another goroutine and waits till the 1st one passes some data to the next one.
Use channels in Go to sync two goroutines passing data between them.
Create a channel to pass data between the goroutines
Use a select statement to wait for data to be passed
Ensure proper synchronization to avoid race conditions
Q2. Write a code to find the number in a sorted array in with lowest code complexity
Implement binary search to find the number in a sorted array with lowest code complexity.
Use binary search algorithm to efficiently find the number in the sorted array.
Compare the target number with the middle element of the array and adjust the search range accordingly.
Repeat the process until the target number is found or the search range is exhausted.
Q3. how do use script to schedule backup in server
To schedule backups in a server using a script, you can use a cron job.
Create a backup script that includes the necessary commands to backup the desired files or directories.
Set the script to be executable using the chmod command.
Create a cron job using the crontab command that specifies the frequency and timing of the backups.
Test the backup script and cron job to ensure they are working correctly.
Q4. how to give access to particula s3 bucket
To give access to a particular S3 bucket, create an IAM user with appropriate permissions and policies.
Create an IAM user with access to the S3 bucket
Attach policies to the IAM user that allow access to the S3 bucket
Ensure that the IAM user has the necessary permissions to perform the required actions on the S3 bucket
Use AWS CLI or AWS Management Console to grant access to the IAM user
Q5. Explain SDLC , explain waterfall model, Write any code in Java
Explanation of SDLC, waterfall model and Java code
SDLC stands for Software Development Life Cycle and is a process followed for software development
Waterfall model is a linear sequential approach to software development
Java code example: System.out.println("Hello World!");
Q6. sonaqube usage and what it does
SonarQube is a tool for continuous code quality inspection and management.
SonarQube analyzes code for bugs, vulnerabilities, and code smells.
It provides detailed reports and metrics on code quality.
It integrates with CI/CD pipelines for continuous code inspection.
SonarQube supports multiple programming languages including Java, C#, Python, and more.
It can be used to enforce coding standards and best practices across teams.
Q7. diff between classic network and app loadbalancer
Classic network load balancer operates at transport layer while app load balancer operates at application layer.
Classic network load balancer distributes traffic based on IP address and port number.
App load balancer distributes traffic based on URL, host or path.
Classic network load balancer supports TCP and SSL protocols.
App load balancer supports HTTP and HTTPS protocols.
App load balancer provides advanced routing features like path-based routing, host-based routing, etc.
Cl...read more
Q8. how to connect aws with gcp
AWS and GCP can be connected using various methods such as VPN, direct peering, or third-party tools.
One way is to use VPN to establish a secure connection between the two cloud platforms.
Another way is to use direct peering which allows for a private connection between the two platforms.
Third-party tools like Equinix Cloud Exchange Fabric can also be used to connect AWS and GCP.
It is important to consider factors like latency, bandwidth, and security when choosing a method f...read more
Q9. How to download different kinds of logs from different Consoles like ILO, IDRAC,
Use appropriate tools to download logs from different consoles like ILO, IDRAC.
Identify the type of console and the logs required
Use the appropriate tool to access the console remotely
Download the logs to a local machine or a centralized location
Ensure the logs are saved in a secure and organized manner
Q10. diff b/w replicaset,daemonset and deployment
ReplicaSet ensures a specified number of replicas of a pod are running, Deployment manages ReplicaSets, DaemonSet ensures a pod runs on all nodes.
ReplicaSet: ensures a specified number of replicas of a pod are running
Deployment: manages ReplicaSets and provides declarative updates for Pods and ReplicaSets
DaemonSet: ensures a pod runs on all (or some) nodes in a cluster
Example: ReplicaSet can be used to ensure high availability of a web application by running multiple replicas...read more
Q11. Can you provide a comprehensive overview of the technologies you have learned, including Artificial Intelligence, Machine Learning, and Cybersecurity, along with specific details?
I have experience in Artificial Intelligence, Machine Learning, and Cybersecurity.
Artificial Intelligence: Familiar with neural networks, natural language processing, and computer vision.
Machine Learning: Proficient in regression, classification, clustering algorithms, and model evaluation techniques.
Cybersecurity: Knowledge of encryption, network security, and vulnerability assessment.
Q12. What is Prime Indexing and how is it different from Secondary indexing?
Prime indexing is the use of a unique identifier as the primary index for a database table, while secondary indexing uses other attributes.
Prime indexing is faster than secondary indexing as it directly accesses the data.
Primary index is usually the first column in a table, while secondary index can be any other column.
Primary index ensures uniqueness of data, while secondary index improves query performance.
Example of primary index: a social security number in a table of emp...read more
Q13. Core fundamentals of Java
Core fundamentals of Java
Object-oriented programming
Platform independence
Garbage collection
Exception handling
Multithreading
Q14. Spark optimization techniques
Spark optimization techniques
Partitioning data to optimize parallelism
Caching frequently used data to avoid recomputation
Using broadcast variables to reduce data shuffling
Avoiding unnecessary transformations
Tuning memory and executor settings
Using efficient data formats like Parquet or ORC
Using appropriate join strategies
Q15. How do you sort and find duplicate names in a SQL table
Use SQL query with GROUP BY and HAVING clauses to sort and find duplicate names in a table.
Use GROUP BY clause to group the names together
Use COUNT() function to count the occurrences of each name
Use HAVING clause to filter out names with count greater than 1
Q16. port fordwaring in proxy
Port forwarding in proxy involves redirecting traffic from one port to another through the proxy server.
Port forwarding is useful for accessing services on a remote network through a proxy server.
It can be done using tools like SSH tunneling or configuring the proxy server to forward traffic.
For example, to access a web server on port 80 of a remote network through a proxy server, the proxy server can be configured to forward traffic from a specific port to port 80 on the rem...read more
Q17. How do you identify a target in the given use case
Identifying a target involves defining the specific outcome or variable of interest in the given use case.
Understand the objectives and goals of the project to determine the target variable
Analyze the available data to identify patterns and relationships that can help define the target
Consider the business context and stakeholders' requirements to determine the target variable
Use statistical techniques and machine learning algorithms to identify the target variable
Validate th...read more
Q18. Errors you faced in aws redshift and your solution to it
Encountered errors in AWS Redshift and provided solutions
Encountered 'disk full' error due to large data loads - increased disk space allocation
Received 'connection timeout' error - adjusted network settings to increase timeout duration
Encountered 'query performance degradation' - optimized queries and added appropriate indexes
Q19. Removing duplicate numbers from a list
Removing duplicate numbers from an array of strings
Create a new empty array
Loop through the original array
Check if the current element exists in the new array
If not, add it to the new array
Return the new array
Q20. Write a code in python to sort an array without sort function
Sort an array of strings in Python without using the sort function.
Use the bubble sort algorithm to compare adjacent elements and swap them if they are in the wrong order.
Repeat this process until the array is sorted.
Example: ['banana', 'apple', 'cherry'] -> ['apple', 'banana', 'cherry']
Q21. Http methods post get and put difference
POST is used to create a new resource, GET is used to retrieve data, and PUT is used to update an existing resource.
POST method is used to create a new resource on the server
GET method is used to retrieve data from the server
PUT method is used to update an existing resource on the server
POST requests are not idempotent, while GET and PUT requests are idempotent
Q22. What is the backend used
We are using Node.js and MongoDB for the backend.
Backend is built using Node.js framework
Data is stored in MongoDB database
RESTful APIs are used for communication
Authentication is implemented using JSON Web Tokens
Q23. Sorting List without predefined methods
Sorting array of strings without using predefined methods.
Implement bubble sort algorithm
Use insertion sort algorithm
Apply quick sort algorithm
Use merge sort algorithm
Q24. matrix representation in data structures
Matrix representation in data structures involves storing data in a two-dimensional array.
Matrix can be represented using arrays of arrays, where each inner array represents a row of the matrix.
Elements in the matrix can be accessed using row and column indices.
Matrix representation is commonly used in graph algorithms, image processing, and linear algebra.
Example: int[][] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
Q25. what you know about Comcast
Comcast is a telecommunications conglomerate known for providing cable television, internet, and phone services.
Comcast is one of the largest cable television and internet service providers in the United States.
It offers a variety of services including cable TV, high-speed internet, and home phone services.
Comcast also owns NBCUniversal, a major media company with assets in film, television, and theme parks.
The company has faced criticism for its customer service and pricing ...read more
Q26. Joins and difference b/w among joins
Q27. Best practices for Docker file
Best practices for Dockerfile include keeping it simple, using official images, and minimizing layers.
Use official images as base
Minimize layers to reduce image size
Avoid installing unnecessary packages
Use .dockerignore to exclude unnecessary files
Specify version numbers for packages
Use multi-stage builds for complex builds
Run only one process per container
Use environment variables for configuration
Keep the Dockerfile simple and readable
Q28. What is polymorphism
Polymorphism is the ability of an object to take on many forms. It allows objects of different classes to be treated as the same type.
Polymorphism is a fundamental concept in object-oriented programming.
It allows a single interface to be used for different types of objects.
Polymorphism is achieved through method overriding and method overloading.
Example: A shape class with different subclasses like circle, square, and triangle.
All these subclasses can be treated as shapes and...read more
Q29. difference b/w rank and dense
Q30. Coding for lift operations
Coding for lift operations involves programming the lift's movement and safety features.
The code should ensure safe and efficient movement of the lift.
It should include emergency stop and alarm features.
The code should also handle user inputs and display information.
Examples of programming languages used for lift operations include C++, Java, and Python.
Q31. Explain Transformers
Transformers are a type of deep learning model that uses self-attention mechanisms to process sequential data.
Transformers are neural network architectures designed to handle sequential data efficiently.
They use self-attention mechanisms to weigh the importance of different input elements when making predictions.
Examples of transformer models include BERT, GPT-3, and Transformer-XL.
Q32. Linux boot sequence
Top HR Questions asked in Birbal AI
Interview Process at Birbal AI
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month