Interview Questions

Linux

  • Describe the process of booting a PC.

  • What is OOM (Out of Memory)? How does the OOM-killer decide which processes to kill?

  • What is an inode?

  • What is Load Average, and how is it calculated?

  • What is a Linux signal? What are they used for? Which signals can be caught? What is the difference between SIGKILL and SIGTERM?

  • What are the different states of processes? What is a zombie process, and how do they occur?

  • What is the difference between the exec and fork system calls?

  • When attempting to unmount a directory, you receive an error that the directory is busy. How do you find the PID?

  • Describe a scenario where you may encounter the “filesystem is full” error, even though ‘df’ shows available free space.

  • Discuss the advantages of systemd.

  • What is LVM (Logical Volume Manager)?

  • What are the differences between yum and apt package managers?

  • You have ext4 filesystem, there is space available on the disk, but you cannot write to it. What could be the problem?

  • How do you recover a file that is currently open by an application, but has been deleted?

Network

  • What are VLANs used for and why? How many VLANs can there be?

  • What happens when you type https://www.google.com in your browser?

  • What is TCP keep-alive?

  • Tell me about the TCP handshake.

  • Tell me about RR in DNS.

  • Explain the difference between a proxy and NAT.

  • Describe what the OSI model represents.

DevOps

  • DevOps and Agile. What are they and what is the difference?

  • What are static and dynamic linking of files?

  • What is the difference between virtualization and containerization?

  • CI/CD - describe a pipeline for application x.

  • Tell me about the architecture of K8s (Kubernetes).

  • What is IaC (Infrastructure as Code)? What is the difference between Chef, Ansible, and Terraform?

  • What are the pros and cons of Ansible?

  • What is the difference between a role and a playbook?

  • What is idempotence?

  • What are stateful and stateless architectures?

  • (Given a Dockerfile with many layers) How would you reduce the image size?

  • What are cgroups and namespaces?

  • What are Jobs, Runners, and Stages in the context of CI/CD?

  • What is version control system (VCS)?

  • What is a Terraform provider?

  • What mechanisms allow isolating processes within a Docker container?

  • Let’s imagine a task: you need to clean all the chimneys in Brooklyn. How would you approach this task and how much would you charge for the job? (There is no correct answer, the evaluation is based on the approach to the answer.)

Database

  • What is the difference between SQL and No-SQL databases?

  • How to properly perform backups of SQL databases?

  • How can you speed up the performance of Postgres?

  • What is normalization?

  • Explain what primary key and foreign key are.