Senior Linux Kernel Engineer
Posted Jun 14, 2023 - Requisition No. 117052
The Managed Systems Integration Engineering (MSIE) group is responsible for provisioning, configuring, and maintaining the majority of Bloomberg’s production fleet throughout its lifecycle, and the group uses an infrastructure-as-code approach in conjunction with open-source tools to ensure a scalable and reliable environment in which to operate.
Within MSIE, the Systems Internals team is responsible for kernel-space performance and configuration standards, developing tooling for networking stack functionality, and providing engineering leadership for how to best optimize the interaction between applications and OS interfaces. The team acts as a bridge between application development teams and the lower-level components of the OS by assisting with application performance profiling, benchmarking and certifying production-readiness of new OS releases and patches, and advising on how best to consume system resources.
What’s in it for you:
You'll work with modern, open-source tooling while maintaining critical systems hosting a wide array of applications for the Bloomberg Terminal product. You will regularly collaborate with other OS and service-owning teams to maintain the stability and performance of operating systems and servers. We'll depend on you to advise on the design, architecture, and utilization of enterprise-class operating systems, with particular focus on Linux. You will have the opportunity to work on developing performance tooling while testing the latest kernels and their features. You will also have the opportunity to contribute back to the open-source community; it is an exciting experience you can explore with us.
We’ll expect you to:
- Focus on improving Bloomberg’s kernel regression-testing framework by developing tooling using bcc/eBPF/bpftrace
- Contribute to our CI/CD frameworks for OS certification
- Push Linux kernel enhancement requests upstream
- Troubleshoot kernel-space and network performance issues by working in lockstep with application teams
- Write tooling to improve telemetry and close knowledge gaps in how high-performance applications function relative to the system resources available to them
- Work on documentation to support team efforts and educate peers
You’ll need to have:
- A Degree in Computer Science, Engineering, Mathematics, similar field of study or equivalent work experience
- Deep understanding of the Linux kernel including the virtual memory, VFS, IPC, network, and process scheduling subsystems
- Demonstrated experience with performance tuning including tradeoffs between low latency and throughput, hardware and BIOS-related tuning, and proper employment of NUMA
- Ability to create robust testing and certification processes to comprehensively evaluate the impact of hardware changes, tunables, and system software updates to the Bloomberg application stack
- Proficiency in reading and debugging C source code to solve kernel-space issues
- Eagerness to work with a group, share knowledge, and contribute to team goals
We'd love to see:
- Experience with applying formalized performance analysis methodologies such as the USE Method to address complex problems
- Experience programming in Python or Ruby
- Familiarity with one or more of the following technologies is preferred: Chef, SaltStack, Jenkins, and Ansible
Interviewing with us:
We believe interviewing is a two way street. It's a way for us to get to know you and your skills, and also a way for you to learn more about the team, our technical challenges, and what you'd be working on. The content of each interview round will be tailored to the role and your background, but the general framework can be found here:
We want to ensure you can put your best foot forward throughout the process, so if you have any questions or need any accommodations to be successful, please let us know!
We have a lot of opportunities to choose from in Engineering, and it is important to us that your skills and experience align best with the team you are interviewing with. To help ensure you are placed on the right team, your application will be considered for all of our current vacancies in Engineering at the first stage of the interview process.
Bloomberg is an equal opportunity employer and we value diversity at our company. We do not discriminate on the basis of age, ancestry, color, gender identity or expression, genetic predisposition or carrier status, marital status, national or ethnic origin, race, religion or belief, sex, sexual orientation, sexual and other reproductive health decisions, parental or caring status, physical or mental disability, pregnancy or maternity/parental leave, protected veteran status, status as a victim of domestic violence, or any other classification protected by applicable law.
Bloomberg provides reasonable adjustment/accommodation to qualified individuals with disabilities. Please tell us if you require a reasonable adjustment/accommodation to apply for a job or to perform your job. Examples of reasonable adjustment/accommodation include but are not limited to making a change to the application process work procedures, providing documents in an alternate format, using a sign language interpreter, or using specialized equipment. If you would prefer to discuss this confidentially, please email AMER_recruit@bloomberg.net (Americas), EMEA_recruit@bloomberg.net (Europe, the Middle East and Africa), or APAC_recruit@bloomberg.net (Asia-Pacific), based on the region you are submitting an application for. Alternatively, you can get support from our disability partner EmployAbility, please contact +44 7852 764 684 or email@example.com?