Senior Software Engineer: Systems (Kernel)
Do you ever wonder what happens inside the cloud?Headquartered in New York but based around the world, DigitalOcean is a dynamic, high-growth technology company that serves a robust and passionate community of developers around the world. Our mission is to simplify cloud computing for every developer. We are working on solving some of the most challenging and interesting technology projects around, on a scale unmatched by most.We want people who are passionate about designing and operating secure systems at scale.
We are looking for someone who is familiar with our stack, understands our tools, is comfortable working remote, enjoys working in open source, and is excited about our mission.Â
At DO, we believe in: Creating simple, yet powerful, foundations (with đź’•) from which our community can build
The Systems Kernel team delivers on this mission by ensuring DigitalOcean’s operating system is performant, reliable, and secure.
Our Stack: C, Chef, Go, libvirt, Linux, KVM, OVS, QEMU
Our Tools: Concourse, Elasticsearch, GSuite, Jira, Prometheus, Slack
Our Team: The Systems team is currently made up of about two dozen, mostly senior, engineers located across the US, Canada, and Germany with one engineer in the NY office and is supported by a Senior Engineering Manager. The Kernel sub-team, supported by an Engineering Manager, accounts for approximately one-fourth of the Systems team.
What You'll Be Doing:
While work will vary based on quarterly priorities and initiatives, some examples include:
- Scale one of the fastest growing cloud companies in the world
- Triaging and fixing operating system issues impacting the performance, reliability, and/or security of our fleet
- Improve all aspects of reliability, including monitoring, availability, and documentation
- Debug mission critical problems in production
- Design and develop new systems with an emphasis on minimized maintenance requirements, as well as maintain and enhance existing systems
- Systems analysis design and debugging of new systems
- Managing capacity, designing systems architecture and performing technology refreshes
- Participate in production readiness reviews and provide feedback to engineering teams on best practices
- Automate error-prone tasks to drive safety and determinism throughout complex distributed systems
- Provide architecture and scaling guidance where necessary for all engineering teams
- Participating in the customization and optimization of DO’s virtualization stack which includes: kernel, kvm, qemu, and libvirt
- 5-20% of your time spent in contributing to open source communities related to Linux kernel development
- Â
What We'll Expect From You:
- Linux kernel expertise and upstream contribution
- Note that there we recognize that there are many subsystems in the kernel, and although we would like to have specific expertise in storage-oriented subsystems, we will consider someone with experience in any linux kernel subsystem
- Implementing bug fixes and live patches in the Linux kernel
- Implementing new features in the Linux kernel
- Experience troubleshooting, analyzing, and debugging linux kernel crashes
- Experience as a software engineer / developer in a large scale, distributed environment
- Experience writing secure, testable and robust C code
- Desirable to have exposure to either of Golang or Python languages, but not required
- Understanding of operating systems, virtualization, Linux internals, security and networking
- Some experience proactively addressing software and systems reliability issues across all layers in the stack with the capacity to troubleshoot across network, database, OS & code as needed
- Excellent written and verbal communication skills, with a desire to collaborate with a broad and diverse Systems team
- An aim to design and build large, distributed systems
- A dedication to solving problems and delivering solutions
Why You’ll Like Working for DigitalOcean:
- We value development. You will work with some of the smartest and most interesting people in the industry. We are a high-performance organization that is always challenging ourselves to continuously grow. We maintain a growth mindset in everything we do and invest deeply in employee development through formalized mentorship, LinkedIn Learning tracks, and other internal programs. We also provide all employees with reimbursement for relevant conferences, training, and education.
- We care about your physical, financial and mental well-being. We offer competitive health, dental, and vision benefits for employees and their dependents, a monthly gym stipend to support your physical health, and a commute or internet allowance to make your trips to your office or your desk easier. We offer generous parental leave with transition time built-in upon return to work. We offer competitive compensation and a 401k plan with up to a 4% employer match.Â
- We support our remote employee experience. While we have great office spaces in NYC, Cambridge and Palo Alto, we’re very distributed—we use a number of communication tools to connect across the company—and all remote employees have the opportunity to visit our offices and meet their teams face-to-face at team offsites. We also have an annual company offsite, Shark Week, to get quality in-person time with the entire company at least once a year. We also allow employees to outfit their workstations to meet their needs—whether remote or in office.
- We value diversity and inclusivity. We are an equal opportunity employer and we do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
For all CO residents, please click here Â
Want an inside look into life at DO? Click here to hear from our employees!