Please enable JavaScript to view the comments powered by Disqus. 20 Most Commonly Asked Site Reliability Engineering Interview Question

 

20 Most Commonly Asked Site Reliability Engineering Interview Question

NovelVista

NovelVista

Last updated 19/06/2020


20 Most Commonly Asked Site Reliability Engineering  Interview Question

Do you know how much you can earn from choosing a career as a Site Reliability Engineer?

It starts from $136,836 per year. Can you believe this?

Site Reliability Engineering is basically creating a bridge between Development and

Operations departments. It is a discipline that incorporates aspects of software engineering and applies them to infrastructure and operations problems. The main goals are to create scalable and highly reliable software systems.

The job role of a Site Reliability Engineer includes the following responsibilities:

  • Site reliability engineers communicate with other engineers, product owners, and customers and come up with targets and measures. This helps them to ensure system availability. One can easily understand the perfect time to take action once all have agreed upon a system’s uptime and availability. 
  • They introduce error budgets in order to measure risk, balance availability and feature development. When there are no unrealistic reliability targets, a team has the flexibility to deliver updates and improvements to a system.
  • SRE believes in reducing toil. That results in automating tasks that require a human operator to work manually.
  • A site reliability engineer should have an in-depth understanding of the systems and their connectivity.
  • Site reliability engineers have the task of discovering the problems early to reduce the cost of failure.

Pretty interesting. Isn’t it? Well, the job interview of a Site Reliability Engineer, too, is pretty interesting!

Check out these 20 most commonly asked Site Reliability Engineering interview questions to get an idea about how interesting it actually can be!

 

1. What is the difference between a process and a thread?

Ans. A thread is a lightweight process. Each process has a separate stack, text, data, and heap. Threads have their own stack, but they share text, data, and heap with the process. Text is the actual program itself, data is the input to the program and heap is the memory that stores files, locks, sockets.

2. What is a zombie process?

Ans. A zombie process is a one that has completed execution, however, it’s entry is still in the process table to allow the parent to read the child’s exit status. The reason the process is a zombie is that it is “dead” but not yet “reaped” by its parent. Parent processes normally issue the wait system call to read the child’s exit status whereupon the zombie is removed. The kill command does not work on the zombie process. When a child dies the parent receives a SIGCHLD signal.

3. How do you end up with zombie processes?

Ans. Zombie processes are created when the parent does not reap the child. This can happen due to parents not executing the wait() system call after forking.

4. How to daemonize a process?

Ans. Following steps can help you daemonizing a process:

  • The fork() call is used to create a separate process.
  • The setsid() call is used to detach the process from the parent (normally a shell).
  • The file mask should be reset.
  • The current directory should be changed to something benign.
  • The standard files (stdin, stdout, and stderr) need to be reopened.

 

5. Describe ways of process inter-communication.

Ans. Some ways of process inter-communication are:

  • POSIX mmap, message queues, semaphores, and shared memory
  • Anonymous pipes and named pipes
  • Unix domain sockets
  • RPC

 

6. What are Unix Signals?

Ans. Signals are an inter-process communication method. The default signal in Linux is SIG-TERM. SIG-KILL cannot be ignored and causes an application to be forcefully killed. Use the ‘kill’ command to send signals to a process. Another popular signal is the ‘HUP’ signal which is used to ‘reset’ or ‘hang up’ applications.

7. Define TCP slow start

Ans, TCP slow start is a congestion control algorithm that starts by increasing the TCP congestion window each time an ACK is received until an ACK is not received.

8. Name a few TCP connection states.

Ans. Few TCP connection states are:

1) LISTEN – Server is listening on a port, such as HTTP

2) SYNC-SENT – Sent a SYN request, waiting for a response

3) SYN-RECEIVED – (Server) Waiting for an ACK, occurs after sending an ACK from the server

4) ESTABLISHED – 3 way TCP handshake has completed

9. Define the various protocol states of DHCP

Ans. The protocol states of DHCP are:

  • DHCPDISCOVER client->server: broadcast to locate the server
  • DHCPOFFER server->client: offer to the client with the offer of configuration parameters
  • DHCPREQUEST client->server: requesting a DHCP config from server
  • DHCPACK server->client : actual configuration parameters
  • DHCPNAK server->client: indicating the client’s notion of network address is incorrect
  • DHCPDECLINE client->server: address is already in use
  • DHCPRELEASE client->server: giving up of IP address
  • DHCPINFORM client->server: asking for local config parameters

 

10. What is an inode?

An inode is a data structure in Unix that contains metadata about a file. Some of the items contained in an inode are:

1) mode

2) owner (UID, GID)

3) size

4) atime, ctime, mtime

5) acl’s

6) blocks list of where the data is

11. What is an HTTP cookie?

Ans. Http cookie is a small piece of data that a server sends to a browser, which a browser usually stores in its cookie cache. A cookie can be used to maintain session information since HTTP is stateless, and also for user preferences at a given site. Cookies can also be used to store an encrypted password. Browsers send cookies back to the server when they make a connection’

12. Name some common HTTP response codes.

Ans. Some common HTTP response codes are:

  • 200 OK The request has succeeded
  • 500 Internal Server Error (Server Error)
  • 403 Forbidden
  • 301 Permanent Redirect
  • 302 Temporary Redirect

 

13. What are HTTP methods?

Ans. Http methods are ways of communicating between server and client. Common examples are HTTP get and HTTP put which is used by HTTP forms for data exchange. Other methods include, post, head, and connect.

14. What are HTTP headers?

Ans. HTTP header fields are common components of HTTP requests and responses. Headers are colon-separated name-value pairs in cleartext. Some common headers are: Cache-control which specifies where to cache or not the contents of a page, Accept, which can be text/plain, Content-length which specifies the size of the content, Host, which is the domain name of the server.

15. What is the difference between MyISAM and InnoDB?

Ans: Few common aspects of MyISAM is: 

  • It supports table-level locking
  • It is Faster than InnoDB
  • It does not support foreign keys
  • Stores table, data, and index in different files
  • Does not support transactions (no commit with rollback)
  • Useful for more selects with fewer updates


On the other hand, some known facts about InnoDB are:

  • Supports row-level locking
  • Is slower than MyISAM
  • Supports foreign keys
  • Stores table and index in tablespace
  • Supports transactions

16. Define the boot process of a Linux system

Ans. Once you power a system on, the first thing that happens is the BIOS loads and performs POST or a power-on self-test, to ensure that the components needed for a boot are ok. For instance, if the CPU is defective, the system will give an error that the POST has failed. (BIOS stands for Basic Input/Output System)

After POST the BIOS looks at the MBR or master book record and executes the boot loader. In case of a Linux system that might be GRUB or Grand Unified Bootloader. GRUB’s job is to give you the choice of loading a Linux kernel or other OS that you may be running

Once you ask GRUB to load a kernel, usually an initial ramdisk kernel is loaded, which is a small kernel that understands the filesystem. This will in turn mount the filesystem and will start the Linux kernel from the filesystem

The kernel will then start to init, which is the very first process, usually having PID 1. Init will look at /etc/inittab and will switch to the default run-level which on Linux servers tends to be 3.

There are different run level scripts in /etc/rc.d/rc[0-6].d/ which are then executed based on the run level the system needs to be in.

And that’s about it!

17. How does SSL work?

Ans. SSL stands for secure socket layer. It has been renamed to TLS starting from SSL v 4.0. TLS is a secure way of communicating through a network. A majority of secure HTTP communication on the web takes place using TLS. TLS works at session layer and presentation layer of the OSI model. Initially at the session layer asymmetric encryption takes place, after that at the presentation later symmetric cipher and session key are used. The basic principle behind TLS is to encrypt data going across the network using public-key encryption first, followed by using a shared key. Also, the other component of TLS is server certificate authentication which is done through a certificate authority. Clients contain a list of certificate authorities, and it uses the public key of the CA in the certificate to verify the certificate being authentic. 

18. How do you use SSH to create a dynamic tunnel?

Ans. One possible solution to get from source to destination using SSH dynamic tunnel, is to create a dynamic tunnel.

19. How do you install CentOS via HTTP if not using Kickstart?

Ans. One option is to boot from the network using PXE or using a USB drive which has Unetbootin installed.

Once you start the installation, go to the main menu, select the ‘Start Installation’ option, choose ‘Network’ as the source, choose ‘HTTP’ as the protocol, enter ‘mirrors.kernel.org’ when prompted for a server, and enter ‘/centos/6/os/x86_64’ when asked for the folder.

Conclusion:

From the above SRE interview questions and their answers, you must have understood that it is both the practical and theoretical knowledge that will help you to get through an SRE interview. Now how to achieve that? Pretty simple! Join our Site Reliability Engineering training and certification course, get trained, get certified, set the bar of your CV high, and Voila!

Topic Related Post

5 Practices Towards A Well-polished DevSecOps Environment
5 Practices Towards A Well-polished DevSecOps Environment
DevOps 2.0: An Insight To Site Reliability Engineering (SRE)
DevOps 2.0: An Insight To Site Reliability Engineering (SRE)
Few Perks Of Choosing A DevOps Career
Few Perks Of Choosing A DevOps Career

About Author

NovelVista Learning Solutions is a professionally managed training organization with specialization in certification courses. The core management team consists of highly qualified professionals with vast industry experience. NovelVista is an Accredited Training Organization (ATO) to conduct all levels of ITIL Courses. We also conduct training on DevOps, AWS Solution Architect associate, Prince2, MSP, CSM, Cloud Computing, Apache Hadoop, Six Sigma, ISO 20000/27000 & Agile Methodologies.

 
 

SUBMIT ENQUIRY

 
 
 
 
 
 
 
 
 

Upcoming Events

ITIL-Logo-BL
ITIL

Every Weekend

AWS-Logo-BL
AWS

Every Weekend

Dev-Ops-Logo-BL
DevOps

Every Weekend

Prince2-Logo-BL
PRINCE2

Every Weekend

Topic Related

Take Simple Quiz and Get Discount Upto 50%
     
  18002122003
 
  
 
  • Disclaimer
  • PRINCE2® is a registered trade mark of AXELOS Limited. All rights reserved.
  • ITIL® is a registered trade mark of AXELOS Limited. All rights reserved.
  • MSP® is a registered trade mark of AXELOS Limited. All rights reserved.
  • DevOps® is a registered trade mark of DevOps Institute Limited. All rights reserved.