Find Interview Questions for Top Companies
Surya Software Interview Questions and Answers
Ques:- What is a pull request (PR)? Explain its workflow.
Right Answer:

A pull request (PR) is a request to merge code changes from one branch into another in a repository. The workflow typically involves the following steps:

1. A developer creates a new branch and makes changes to the code.
2. The developer pushes the branch to the remote repository.
3. The developer opens a pull request, specifying the branch to merge into and providing a description of the changes.
4. Team members review the pull request, provide feedback, and may request changes.
5. Once approved, the pull request is merged into the target branch.
6. The branch can then be deleted if no longer needed.

Ques:- What is GitHub and how is it different from Git?
Right Answer:

GitHub is a web-based platform that uses Git for version control and allows developers to collaborate on projects. The main difference is that Git is a version control system used to manage code changes locally, while GitHub provides a cloud-based interface for hosting Git repositories, facilitating collaboration, and offering additional features like issue tracking and project management.

Ques:- What is the difference between main and gh-pages branches?
Right Answer:

The main branch is typically the default branch for development and contains the latest stable code, while the gh-pages branch is specifically used for hosting static websites directly from a GitHub repository.

Ques:- How do you secure secrets and environment variables in GitHub Actions?
Right Answer:

You can secure secrets and environment variables in GitHub Actions by using GitHub Secrets. Store sensitive information in the repository settings under "Secrets" and reference them in your workflow files using the syntax `${{ secrets.SECRET_NAME }}`.

Ques:- How would you use GitHub’s API in a real-world scenario?
Right Answer:

You can use GitHub’s API to automate tasks like creating issues, managing pull requests, or retrieving repository data. For example, you could build a tool that automatically opens an issue when a specific error is detected in your application, or a script that updates project documentation based on changes in the codebase.

Ques:- What are the main components of the Kubernetes architecture?
Right Answer:

The main components of the Kubernetes architecture are:

1. **Master Node**: Manages the Kubernetes cluster and includes components like the API server, etcd, controller manager, and scheduler.
2. **Worker Nodes**: Run the applications and contain components like the kubelet, kube-proxy, and container runtime.
3. **etcd**: A distributed key-value store for storing cluster data.
4. **API Server**: The front-end for the Kubernetes control plane, handling requests and communication.
5. **Controller Manager**: Manages controllers that regulate the state of the cluster.
6. **Scheduler**: Assigns workloads to worker nodes based on resource availability.
7. **Kubelet**: An agent that runs on each worker node, ensuring containers are running in pods.
8. **Kube-proxy**: Manages network routing for services in the cluster.

Ques:- How does Kubernetes handle persistent storage? (PVC, PV, StorageClass)
Right Answer:

Kubernetes handles persistent storage using Persistent Volumes (PV), Persistent Volume Claims (PVC), and StorageClasses.

– **Persistent Volumes (PV)** are storage resources in the cluster that have been provisioned by an administrator or dynamically provisioned using StorageClasses.
– **Persistent Volume Claims (PVC)** are requests for storage by users, specifying size and access modes. When a PVC is created, Kubernetes finds a matching PV to bind to it.
– **StorageClasses** define different types of storage (like SSD or HDD) and allow dynamic provisioning of PVs based on the specified class.

This system allows for flexible and manageable storage solutions in Kubernetes.

Ques:- What is a Service in Kubernetes? What types are available? (ClusterIP, NodePort, LoadBalancer, etc.)
Right Answer:

A Service in Kubernetes is an abstraction that defines a logical set of Pods and a policy to access them. It enables communication between different components in a Kubernetes cluster.

The types of Services available in Kubernetes are:

1. **ClusterIP**: Exposes the Service on a cluster-internal IP. It is only accessible from within the cluster.
2. **NodePort**: Exposes the Service on each Node’s IP at a static port. It allows external access to the Service.
3. **LoadBalancer**: Creates an external load balancer in supported cloud providers, routing traffic to the NodePort.
4. **ExternalName**: Maps the Service to the contents of the externalName field (e.g., a DNS name), allowing access to external services.

Ques:- How would you secure a Kubernetes cluster?
Right Answer:

To secure a Kubernetes cluster, you can implement the following measures:

1. **Use Role-Based Access Control (RBAC)**: Define roles and permissions to control access to resources.
2. **Enable Network Policies**: Restrict traffic between pods using network policies.
3. **Use Pod Security Policies**: Enforce security contexts for pods to control their capabilities and privileges.
4. **Secure etcd**: Encrypt etcd data at rest and use TLS for communication.
5. **Limit API Server Access**: Restrict access to the Kubernetes API server using firewalls and authentication mechanisms.
6. **Regularly Update Kubernetes**: Keep the cluster and its components up to date with security patches.
7. **Use Image Scanning**: Scan container images for vulnerabilities before deployment.
8. **Enable Audit Logging**: Monitor and log API requests for auditing purposes.
9. **Implement Secrets Management**: Use Kubernetes Secrets to manage sensitive information securely.
10. **Isolate Cluster Components**

Ques:- What is a kubelet, and what is its role?
Right Answer:

A kubelet is an agent that runs on each node in a Kubernetes cluster. Its role is to manage the containers on that node, ensuring they are running as specified in the Pod specifications, monitoring their health, and reporting back to the Kubernetes control plane.

Ques:- What are spot instances?
Right Answer:

Spot instances are a type of Amazon EC2 instance that allows you to bid on unused computing capacity at potentially lower prices than on-demand instances. They can be interrupted by AWS with little notice if the capacity is needed for on-demand instances.

Ques:- What is CloudWatch?
Right Answer:

Amazon CloudWatch is a monitoring and management service that provides data and insights about AWS resources and applications, allowing users to collect and track metrics, set alarms, and automate responses to changes in their AWS environment.

Ques:- What is AWS?
Right Answer:

AWS, or Amazon Web Services, is a comprehensive cloud computing platform provided by Amazon that offers a wide range of services, including computing power, storage, and databases, as well as machine learning, analytics, and networking, allowing businesses to scale and grow without the need for physical infrastructure.

Ques:- What is the difference between Public and Private Subnet?
Right Answer:

A Public Subnet is a subnet that has a route to the internet through an Internet Gateway, allowing resources within it to be accessed from the internet. A Private Subnet, on the other hand, does not have a direct route to the internet, meaning resources in it cannot be accessed directly from the internet.

Surya Software is a leading technology company that specializes in providing innovative software solutions to businesses across various industries. With a strong focus on delivering high-quality products and exceptional customer service, Surya Software has established itself as a trusted partner for organizations seeking to leverage the power of technology to drive growth and efficiency. The company offers a wide range of software solutions, including enterprise resource planning (ERP) systems, customer relationship management (CRM) software, business intelligence (BI) tools, and custom software development services. Their solutions are designed to streamline business processes, enhance decision-making, and improve overall operational efficiency. Surya Software is known for its expertise in developing scalable and customizable software solutions that can be tailored to meet the unique needs of each client. Their team of experienced software developers, engineers, and consultants work closely with clients to understand their business requirements and provide personalized solutions that deliver tangible results. In addition to their software development services, Surya Software also offers comprehensive support and maintenance services to ensure that their clients' systems remain secure, reliable, and up-to-date. With a commitment to innovation, quality, and customer satisfaction, Surya Software continues to set the standard for excellence in the technology industry. Whether you're a small business or a large enterprise, Surya Software has the expertise and resources to help you harness the power of technology to drive success in your organization.
AmbitionBox Logo

What makes Takluu valuable for interview preparation?

1 Lakh+
Companies
6 Lakh+
Interview Questions
50K+
Job Profiles
20K+
Users