Core Performance Software Engineer (C++) - Remote
at ClickHouse
📍 United States
$133,400-232,000 per year
SCRAPED
Used Tools & Technologies
Not specified
Required Skills & Competences ?
Security @ 3 Software Development @ 3 Kubernetes @ 3 GitHub @ 3 Distributed Systems @ 3 Slack @ 3 Debugging @ 6 OLAP @ 3 Compliance @ 3Details
We are the company behind the popular open-source, high-performance columnar OLAP database management system for real-time analytics. ClickHouse works 100-1000x faster than traditional approaches. By offering a true column-based DBMS, it allows for systems to generate reports from petabytes of raw data with sub-second latencies. With an amazing community already adopting our open-source technology, we are now embracing our journey in delivering Cloud-first solutions to delight our customers.
With top adopters such as Lyft, Cisco, and eBay - not only do our products work at lightning speed, so do we. We are an open and collaborative company. Our colleagues are curious, engaged and excited about what they do. If you want to work in an environment where you can learn, grow, be an agent of change and have your voice heard - then please read on!
With over 35,000 stars on GitHub, ClickHouse is the fastest and most resource-efficient open-source database for real-time apps and analytics. Our Core Engineering teams own the heart of our ClickHouse Open Source project. We are looking for exceptional C++ engineers to join our remote-first, global team and continue to scale and grow both our open-source and ClickHouse Cloud offerings. More specifically, our Performance Engineering team is seeking engineers who love optimizing the performance of distributed systems.
Responsibilities
- As part of the ClickHouse Core Performance team, you will analyze and optimize the performance of the core ClickHouse database. The team works on many different topics such as query optimization, distributed query optimization, relational operators (e.g. aggregation and joins), caching, and low-level optimizations like SIMD instructions.
- You will ensure that the database performance does not deteriorate over time by extending existing and adding new performance tests, based on real-world or synthetic datasets.
- You will serve as a resource for the Support Engineering team, helping to debug the most advanced performance issues encountered by our customers.
- As the core ClickHouse database continues to move at a fast pace, you will closely collaborate with our other core teams to assess the impact of new features on performance and support colleagues with performance tests and advice.
- You will work with our open-source community. This will include resolving issues, reviewing and finishing PRs, answering questions from mail, chats, Google groups, external Slack channels, etc.
Requirements
- You bring along solid professional software development experience in C++. This includes experience with Unix Systems.
- You have strong knowledge in database internals and design.
- You 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.
- You communicate well with others and have the ability to work well within and across engineering teams.
- You are ready to work closely with our open-source community. You participate in code reviews with patience and attention to detail fostering a culture of collaboration and mutual respect.
- You are a strong problem-solver and have solid production debugging skills.
- You are passionate about efficiency, availability, scalability and data governance.
- You 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.
- You have a high level of responsibility, ownership, and accountability.
Bonus points for:
- 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.