Operating Systems
Processes, memory, files and everything the OS does for your program.
Backend Engineer track
Junior
Write correct code, ship small changes safely, ask good questions.
- CronScheduling commands to run at fixed times.
- Exit CodeThe number a program returns when it ends; 0 means success.
- File PermissionsRead, write and execute rights for user, group and others.
- File SystemHow files and directories are stored and organized.
- Operating SystemSoftware that manages hardware and runs programs.
- Process ID (PID)A number identifying a running process.
- stdin, stdout, stderrThe three standard streams every process starts with.
- Symbolic LinkA file that points to another path.
Mid-level
Own a feature end to end without hand-holding.
- Daemon / ServiceA background process, usually managed by systemd.
- File DescriptorA handle to an open file, socket or pipe.
- Graceful ShutdownFinishing in-flight work before exiting on SIGTERM.
- KernelThe core of the OS with full access to the hardware.
- Out of Memory (OOM)Running out of memory, and the OOM killer that ends processes.
- Process LifecycleHow processes are created, run, wait and exit.
- Resource Limits (ulimit)Per-process caps on open files, memory and processes.
- SignalsMessages like SIGTERM and SIGKILL sent to processes.
- System CallA program asking the kernel to do something, like read a file.
- Virtual MemoryEach process sees its own address space, mapped onto physical memory.
Senior
Own a system, its failure modes, and its trade-offs.
- cgroupsLinux control groups that limit resources; one basis of containers.
- Context SwitchThe CPU switching between threads or processes, and what it costs.
- CPU SchedulerHow the OS decides which thread runs next.
- epoll / kqueueOS mechanisms for watching many sockets efficiently.
- fork and execHow Unix creates new processes by copying, then replacing, the current one.
- InodeThe file system record that holds a file's metadata.
- Inter-Process CommunicationPipes, sockets and shared memory for processes to talk to each other.
- Linux NamespacesIsolating what a process can see; the other basis of containers.
- Memory-Mapped FilesMapping a file directly into a process's memory.
- Paging and SwapMoving memory pages to disk when RAM is full.
- Scheduling AlgorithmsRound robin, priority and fair scheduling for sharing the CPU.
- User Space vs Kernel SpaceThe privilege boundary between programs and the OS.
Staff
Shape how many teams build, across systems.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.
Data Engineer track
Junior
Build and fix pipelines from clear specs; write correct SQL.
- CronScheduling commands to run at fixed times.
- Exit CodeThe number a program returns when it ends; 0 means success.
- File PermissionsRead, write and execute rights for user, group and others.
- File SystemHow files and directories are stored and organized.
- Operating SystemSoftware that manages hardware and runs programs.
- Process ID (PID)A number identifying a running process.
- stdin, stdout, stderrThe three standard streams every process starts with.
- Symbolic LinkA file that points to another path.
Mid-level
Own pipelines and models end to end, including their quality.
- Daemon / ServiceA background process, usually managed by systemd.
- File DescriptorA handle to an open file, socket or pipe.
- Graceful ShutdownFinishing in-flight work before exiting on SIGTERM.
- KernelThe core of the OS with full access to the hardware.
- Out of Memory (OOM)Running out of memory, and the OOM killer that ends processes.
- Process LifecycleHow processes are created, run, wait and exit.
- Resource Limits (ulimit)Per-process caps on open files, memory and processes.
- SignalsMessages like SIGTERM and SIGKILL sent to processes.
- System CallA program asking the kernel to do something, like read a file.
- Virtual MemoryEach process sees its own address space, mapped onto physical memory.
Senior
Design the platform's storage, processing and modeling choices.
- cgroupsLinux control groups that limit resources; one basis of containers.
- Context SwitchThe CPU switching between threads or processes, and what it costs.
- CPU SchedulerHow the OS decides which thread runs next.
- epoll / kqueueOS mechanisms for watching many sockets efficiently.
- fork and execHow Unix creates new processes by copying, then replacing, the current one.
- InodeThe file system record that holds a file's metadata.
- Inter-Process CommunicationPipes, sockets and shared memory for processes to talk to each other.
- Linux NamespacesIsolating what a process can see; the other basis of containers.
- Memory-Mapped FilesMapping a file directly into a process's memory.
- Paging and SwapMoving memory pages to disk when RAM is full.
- Scheduling AlgorithmsRound robin, priority and fair scheduling for sharing the CPU.
- User Space vs Kernel SpaceThe privilege boundary between programs and the OS.
Staff
Shape how the whole organization produces and uses data.
Nothing here yet.
Principal
Set data strategy and architecture across the company.
Nothing here yet.
Frontend Engineer track
Junior
Build UI that works, ship small changes safely, ask good questions.
- Exit CodeThe number a program returns when it ends; 0 means success.
- File PermissionsRead, write and execute rights for user, group and others.
- File SystemHow files and directories are stored and organized.
- Operating SystemSoftware that manages hardware and runs programs.
- stdin, stdout, stderrThe three standard streams every process starts with.
- Symbolic LinkA file that points to another path.
Mid-level
Own a feature end to end without hand-holding.
- Out of Memory (OOM)Running out of memory, and the OOM killer that ends processes.
Senior
Own an app's architecture, performance, and failure modes.
- KernelThe core of the OS with full access to the hardware.
Staff
Shape how many teams build, across apps.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.