Senior Software Engineer

ClickHouse
Summary
Join ClickHouse's Core Engineering team as a C++ engineer and contribute to the performance optimization of the core ClickHouse database. You will analyze and optimize various aspects of the database, including query optimization, distributed query optimization, relational operators, caching, and low-level optimizations. Ensure database performance by developing and extending performance tests. Collaborate with the Support Engineering team to debug advanced performance issues and participate in community support. Work closely with other teams to assess the impact of new features and engage with the open-source community by resolving issues, reviewing PRs, and answering questions. This role requires strong C++ and Unix/Linux experience, database internals knowledge, and performance engineering skills. The position offers a flexible work environment, healthcare contributions, equity, flexible time off, a home office setup allowance, global gatherings, and the opportunity to shape the company culture.
Requirements
- Bring along solid professional software development experience in C++
- Include experience with Unix/Linux Systems
- Have strong knowledge in database internals and design
- Have experience in performance engineering, ideally in a database but other areas like high-frequency trading, simulation, real time data processing etc. are also okay
- Communicate well with others and have the ability to work well within and across engineering teams
- Be ready to work closely with our open-source community
- Participate in code reviews with patience and attention-to-detail fostering a culture of collaboration and mutual respect
- Be a strong problem-solver and have solid production debugging skills
- Be passionate about efficiency, availability, scalability and data governance
- Thrive in a fast-paced start-up environment, seeing yourself as a partner with the business with the shared goal of moving forward and building together
- Have a high level of responsibility, ownership, and accountability
Responsibilities
- Contribute to, analyze, and optimize the performance of the core ClickHouse database
- Extend existing and add new performance tests, based on real-world or synthetic datasets
- Serve as a resource for the Support Engineering team, helping to debug the most advanced performance issues encountered by our customers
- Participate in an on call rotation as well as participation in our external community support channels
- Collaborate with our other teams to assess the impact of new features on performance and reliability
- Work with our open-source community
- Resolve issues, reviewing and finishing PRs, answering questions from mail, chats, google groups, external Slack channels, etc
Preferred Qualifications
- Experience with ClickHouse
- Experience in security, privacy, and compliance
- Experience with TCP/IP and network programming
- Experience developing cloud infrastructure services, preferably with Kubernetes
- Experience giving public talks at technical conferences and meetups
- Previous contributions to open source projects
Benefits
- Flexible work environment - ClickHouse is a globally distributed company and remote-friendly
- Healthcare - Employer contributions towards your healthcare
- Equity in the company - Every new team member who joins our company receives stock options
- Time off - Flexible time off in the US, generous entitlement in other countries
- A $500 Home office setup if youβre a remote employee
- Global Gatherings β We believe in the power of in-person connection and offer opportunities to engage with colleagues at company-wide offsites