Job description
Linux Engineer
An engineering role at Cloudflare provides an opportunity to address some big challenges, at scale. We believe that with our talented team, we can tackle some of the biggest security, reliability and performance problems facing the Internet.
We are searching for Linux engineers to make our flavour of Linux fast, resilient and reliable across the many use cases that a distribution saving the Internet requires.
Our Engineers come from a variety of technical backgrounds and work across a broad range of environments and codebases. Common qualities across all of our performance-focused engineers include a passion for analysis, optimization, scaling, networking, cross-team collaboration and hard problem solving.
What you would be doing
-
Keep Cloudflare Linux platforms secure and up-to-date
-
Help with quick and safe deployment and delivery of the Linux kernel and basic operating system to Cloudflare Datacenters in more than 335 cities in over 100 countries
-
Continuously monitor and resolve kernel bugs and performance regressions
-
Design tools and frameworks for other engineering teams to successfully embrace and enable the latest Linux kernel features and optimizations
-
Help porting the Cloudflare software stack to new hardware platforms and architectures
-
Research and adopt the latest Linux kernel security features and performance improvements
-
Build tools and CI/CD pipelines for safe and automated operating system continuous deployment
Requisite skills:
-
Experience with the Linux kernel and Linux software packaging
-
CS fundamentals and comfortable working in multiple programming languages and codebases; Comfortable working in Go, Rust, C, Bash, and Python.
-
Familiarity with constructing and using eBPF programs.
-
Understanding of Linux and POSIX operation systems concepts: processing, files, syscalls, and networking
-
Containerization technologies in Linux (e.g Docker, Namespaces, Cgroups)
-
Configuration management (e.g Saltstack, Chef) and CI/CD pipelines
-
Version control systems (git)
Examples of desirable skills, knowledge and experience
-
Performance analysis and debugging
-
Time series databases such as OpenTSDB, Graphite, Prometheus or Grafana
-
Key/Value stores
-
Network fundamentals DHCP, ARP, subnetting, routing, firewalls, IPv6, BGP
-
Experience in a DevOps team structure
Bonus Points
-
Experience with programming in C, Rust, Go, or similar languages
-
Experience with rapid release engineering
-
Upstream community contribution
-
Strong tooling and automation development experience
Some tools that we use
-
Consul
-
Docker
-
Grafana
-
Kubernetes
-
Nginx
-
Nomad
-
PostgreSQL
-
Prometheus
-
Salt
Job details & requirements
- Occupation
- Software Engineer
- Openings
- 1