Linux System Engineer

Tasks

  • Integration of components of the Asahi Linux project into Debian.
  • Development of custom system components.
  • Development of the OS assembly system.
  • Periodic system updates and releases.
  • Support of prod, help in solving problems.
  • Writing documentation for end users.

Our expectations

  • Knowledge of Python.
  • Knowledge of POSIX Shell, Bash, ZSH.
  • Excellent knowledge of Git for building patching processes, releases, backports, and component updates.
  • Excellent knowledge of Debian, its devices, how it is developed, assembled, its features, its package manager, etc.
  • Excellent knowledge of the kernel, modern distributions and their components, how they interact with each other and how they form the system
  • Good knowledge of the Linux ecosystem. For example, you need to be able to configure nftables, then bootloader, then raise the systemd service, patch and assemble something, then make an encrypted device block, and so on.
  • Good knowledge of the system boot process, U-Boot, GRUB, initrd, systemd, EFI, file systems, block devices, how a bootable USB flash drive is formed.
  • Docker/libvirt/KVM/Qemu for building the assembly process of various components.
  • Get information from the community: IRC, Mastodon, mailing lists, etc. Usually, because of its niche nature, all this does not lie on the surface of the Internet.
  • Understanding C, understanding building tools for C, compilers and cross-compilers.

Will be a plus

  • Understanding build tooling for Rust, compilers and cross-compilers.
  • Understanding Java, JVM and its ecosystem.
  • Some web admin skills, like building a DEB repository and hosting it over TLS.
  • You may need to code on some kind of graphical toolkit/framework, such as GTK.
  • Understanding how the development of the Linux kernel and the processes around it works.

Additionally

  • Willingness to discuss relocation to Georgia.
  • The ability to work from anywhere in the world.