Senior Software Engineer - JVM Language Clients
WFA Digital Insight
Demand for skilled software engineers with expertise in JVM language clients is surging, with the global cloud market expected to reach
Job Description
## About the Role As a Senior Software Engineer on the Language Clients team at ClickHouse, you will play a crucial role in shaping the future of real-time analytics and data warehousing. Your primary focus will be on the development and maintenance of ClickHouse's Java client and JDBC driver, which serve as the foundation for the company's integrations with various data frameworks and tools. You will work closely with the Connectors team to ensure seamless integration and drive the technical roadmap for the Java client and JDBC driver.
The Language Clients team is responsible for building and maintaining the connections between ClickHouse and the broader data ecosystem. This includes developing and supporting low-level database drivers, ingestion and CDC pipelines, data framework integrations, and BI connectivity. As a senior software engineer on this team, you will have the opportunity to make a significant impact on the company's product and technology strategy.
ClickHouse is a fast-growing company with a strong track record of innovation and customer adoption. With over 3,000 customers and a growing list of high-profile clients, the company is well-positioned for continued success in the cloud market.
## What You Will Do - Own the Java client and JDBC driver end-to-end, including roadmap, API design, performance, release engineering, and partner-facing support - Drive throughput and latency work across the client and ClickHouse server - Partner day-to-day with the Connectors team to understand their needs and ship necessary features and improvements - Engage directly with external partners across data ingestion, data visualization, and other areas to ensure interoperability and alignment - Ship visible, measurable wins in throughput, stability, and developer experience - Collaborate with the broader engineering team to drive technical projects forward and ensure alignment with company goals - Participate in code reviews and contribute to the improvement of the overall codebase - Develop and maintain technical documentation and guides for internal and external stakeholders - Stay up-to-date with industry trends and emerging technologies, applying this knowledge to drive innovation and improvement
## What We Are Looking For - 5+ years of software engineering experience, with a significant portion focused on data-intensive systems - Deep Java and JVM expertise, including memory model, GC tuning, profiling, and performance optimization - Hands-on experience building or substantially extending a library that other engineers depend on - Strong grasp of database fundamentals, including SQL, query execution, and analytical/OLAP workloads - Judgment about when to lean on framework abstractions versus when to drop down to the protocol - Solid instincts on concurrency in the JVM, including executors, reactive streams, backpressure, connection pooling, and failure modes - Experience with modern AI development tools and technologies - Strong communication and collaboration skills, with the ability to work effectively with both technical and non-technical stakeholders
## Nice to Have - Experience with cloud-based data warehousing and analytics platforms - Familiarity with ClickHouse or other similar technologies - Knowledge of data ingestion tools and data visualization platforms - Experience with containerization and orchestration using Docker and Kubernetes
## Benefits and Perks - Competitive salary and benefits package - Opportunity to work with a fast-growing and innovative company - Collaborative and dynamic work environment - Professional development and growth opportunities - Flexible working hours and remote work options - Access to cutting-edge technologies and tools - Recognition and rewards for outstanding performance - Comprehensive health and wellness programs - Generous paid time off and holiday policy
How to Stand Out
- Focus on showcasing your deep Java and JVM expertise, as well as your experience in driving technical projects forward.
- Be prepared to discuss your experience with data-intensive systems, including database drivers, ingestion pipelines, and data framework integrations.
- Highlight your ability to work effectively with both technical and non-technical stakeholders, including partner teams and external customers.
- Demonstrate your knowledge of modern AI development tools and technologies, and explain how you have applied this knowledge in previous roles.
- Show enthusiasm for the company's mission and products, and be prepared to discuss how you can contribute to its continued success and growth.
- Be prepared to provide specific examples of your experience with concurrency in the JVM, including executors, reactive streams, backpressure, connection pooling, and failure modes.
- Research the company's technology stack and be prepared to discuss how your skills and experience align with its needs and goals.
This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.