# Software Engineer - Java Platform
**Company:** [Snowflake](https://scaleengineer.com/companies/snowflake)
Join Snowflake's Java Platform team in Berlin as a Software Engineer, where you'll design and maintain the core Java infrastructure powering the data cloud platform used by millions globally. This role focuses on building next-generation JVM systems that are safe, efficient, and secure, requiring deep expertise in Java fundamentals, distributed systems, and performance optimization. You'll collaborate with world-class engineers to solve large-scale data infrastructure challenges while continuously improving reliability and performance through proactive monitoring and automation.
**Role:** Backend Engineer
**Seniority:** Mid
**Locations:** DE-Berlin-Trion Building
**Salary:** 75000–125000 EUR
[Apply](https://jobs.ashbyhq.com/snowflake/23c94498-23c8-4d6e-a1d8-4355bf605663)
Canonical: https://scaleengineer.com/jobs/snowflake/software-engineer-java-platform
---
## Responsibilities

- Core Java Platform Development: Contribute to building and maintaining next-generation Java infrastructure systems that power Snowflake's data cloud platform, ensuring safety, efficiency, and security across core Java libraries and JVM infrastructure supporting millions of users globally.
- Performance and Reliability Engineering: Identify and resolve performance bottlenecks and availability issues through effective implementation of solutions, including instrument key components and implement proactive monitoring strategies to continuously improve system reliability.
- Platform Infrastructure Support: Provide consistent, high-performance Java platform capabilities that enable Snowflake engineers to deliver production-quality solutions, establishing best practices and standards for Java development across the organization.
- Cross-Team Collaboration: Work with distributed global engineering teams to solve real-world, large-scale challenges in data infrastructure, sharing knowledge and best practices while contributing to shared team goals and architectural decisions.
- System Optimization and Automation: Lead initiatives to improve the reliability and performance of Java infrastructure through automation, instrumentation, and continuous optimization efforts, including JVM tuning and performance profiling.

## Requirements

### education

- {"name":"Bachelor's Degree in Computer Science","description":"BS in Computer Science or equivalent practical experience demonstrating mastery of core computer science principles, algorithms, and software engineering practices."}
- {"name":"Advanced Degree (Preferred)","description":"Master's degree or higher in Computer Science, Software Engineering, or related field is a plus, demonstrating commitment to advancing technical expertise and research-oriented thinking."}

### technical

- {"name":"Java Expertise","description":"Deep understanding of Java fundamentals, including the Java Virtual Machine (JVM), core libraries, memory management, and class loading mechanisms required for building and troubleshooting complex Java systems."}
- {"name":"Distributed Systems Knowledge","description":"Solid grasp of distributed systems principles, including scalability, consistency, consensus protocols, and large-scale system design patterns necessary for working with data infrastructure at Snowflake's scale."}
- {"name":"Computer Science Fundamentals","description":"Strong foundation in data structures, algorithms, complexity analysis, and computational thinking with ability to optimize code for performance and resource utilization in production systems."}
- {"name":"Systems Programming","description":"Experience building, supporting, and troubleshooting complex systems, with understanding of how applications interact with operating systems and ability to debug at multiple abstraction levels."}

### experience

- {"name":"Production Java Development","description":"Hands-on experience developing, deploying, and maintaining Java applications in production environments, including experience with debugging, profiling, and optimizing Java applications at scale."}
- {"name":"JVM Performance Tuning","description":"Demonstrated eagerness to learn and apply JVM internals knowledge including garbage collection, memory management, bytecode optimization, and performance tuning techniques for high-throughput systems."}
- {"name":"Large-Scale Systems Experience","description":"Previous involvement with building, operating, or optimizing large-scale, high-performance systems handling significant data volume, throughput, or complexity similar to cloud data infrastructure."}

## Skills

### required

- {"name":"Java Programming Language","description":"Expert-level proficiency in Java including object-oriented programming, exception handling, functional programming features, and modern Java versions (Java 11+)"}
- {"name":"JVM Architecture and Internals","description":"Understanding of JVM components including memory model, garbage collection algorithms, class loading, bytecode execution, and runtime optimization techniques"}
- {"name":"Multithreading and Concurrency","description":"Strong knowledge of concurrent programming concepts, thread synchronization, lock mechanisms, concurrent data structures, and ability to identify and resolve race conditions and deadlocks"}
- {"name":"Performance Analysis and Optimization","description":"Ability to profile Java applications, analyze performance metrics, identify bottlenecks, and implement optimizations at code and architectural levels"}
- {"name":"Software Development Best Practices","description":"Strong understanding of SOLID principles, design patterns, code quality standards, testing methodologies, and collaborative development practices"}

### preferred

- {"name":"Advanced Caching Strategies","description":"Experience implementing and optimizing caching layers, including cache invalidation strategies, distributed caching systems, and understanding cache coherency challenges"}
- {"name":"Database Internals Knowledge","description":"Familiarity with database architecture, query optimization, indexing strategies, transaction management, and SQL query performance tuning"}
- {"name":"Linux Systems Knowledge","description":"Understanding of Linux kernel concepts, system calls, process management, memory management, I/O operations, and ability to use Linux performance analysis tools"}
- {"name":"Cloud Infrastructure Experience","description":"Experience working with cloud platforms such as AWS, Azure, or Google Cloud, including distributed computing concepts and cloud-native architecture patterns"}
- {"name":"Monitoring and Observability Tools","description":"Hands-on experience with application performance monitoring (APM) tools, logging frameworks, distributed tracing, and metrics collection platforms like Prometheus or Grafana"}
- {"name":"Microservices Architecture","description":"Understanding of microservices design patterns, containerization technologies like Docker and Kubernetes, and experience deploying and managing distributed applications"}

## Tech stack

### tools

- {"name":"Java Profiling Tools","description":"Profilers such as JProfiler, YourKit, or JetBrains Profiler for analyzing CPU usage, memory consumption, and identifying performance bottlenecks"}
- {"name":"Monitoring and Logging","description":"Log aggregation and monitoring solutions for understanding system behavior, performance metrics, and enabling proactive identification of issues"}
- {"name":"Version Control Systems","description":"Git and GitHub/GitLab for source code management, collaborative development, and managing code reviews across distributed engineering teams"}
- {"name":"Build and Deployment Tools","description":"Maven, Gradle, or similar build systems, CI/CD pipelines, and deployment automation for managing complex software builds and releases"}

### others

- {"name":"AI-Driven Development Practices","description":"Familiarity with leveraging AI tools and collaborators for code generation, testing, documentation, and problem-solving as part of Snowflake's AI-native culture"}
- {"name":"Performance Benchmarking","description":"Experience designing and implementing benchmark suites to measure system performance, compare implementations, and track performance regressions over time"}
- {"name":"Linux Command Line Tools","description":"Proficiency with Linux utilities for system analysis including perf, strace, vmstat, iostat, and other performance analysis and debugging tools"}

### databases

- {"name":"Cloud Data Warehousing","description":"Understanding of Snowflake's data platform architecture and how Java infrastructure supports data warehousing, OLAP workloads, and analytics queries"}
- {"name":"Distributed Storage Systems","description":"Knowledge of how Java applications interact with distributed storage systems, consistency models, and data partitioning strategies"}

### languages

- {"name":"Java","description":"Primary development language for core platform infrastructure, including modern Java features, concurrency libraries, and performance-critical implementations"}

### frameworks

- {"name":"Java Virtual Machine (JVM)","description":"Core runtime environment and ecosystem focus, including performance tuning, garbage collection configuration, and JVM-level optimizations"}
- {"name":"Concurrency Frameworks","description":"Java concurrent utilities including java.util.concurrent framework, reactive programming libraries, and async/await patterns for handling concurrent workloads"}

## Benefits

### benefits

- {"name":"Comprehensive Health Coverage","description":"Medical, dental, and vision insurance plans with competitive rates and coverage for employee and eligible dependents"}
- {"name":"Retirement Planning","description":"Company-matched retirement savings plans with flexible contribution options to support long-term financial security"}
- {"name":"Equity and Stock Options","description":"Competitive equity package with stock options allowing you to participate in Snowflake's growth and success as a public company"}
- {"name":"Flexible Work Arrangements","description":"Flexible scheduling and work-life balance initiatives supporting modern working preferences and personal well-being"}
- {"name":"Professional Development","description":"Learning and development programs, conference attendance budgets, certification support, and access to online training platforms"}
- {"name":"Berlin Office Location","description":"State-of-the-art office at Potsdamer Platz in Berlin with excellent public transportation access, nearby amenities, and collaborative workspace design"}
- {"name":"Global Collaboration","description":"Opportunities to work with talented engineers across Snowflake's global engineering centers and contribute to world-class technology platforms"}
- {"name":"Innovation Culture","description":"Exposure to cutting-edge data cloud technology, AI-native development practices, and opportunities to shape the future of data infrastructure"}

## Compensation

- **max:** 125000
- **min:** 75000
- **currency:** EUR
- **stockOptions:** true

## Interview process

### steps

- {"name":"Initial Screening","description":"Recruiter phone or video call to discuss background, experience with Java systems, and alignment with role requirements and team culture focused on collaborative problem-solving"}
- {"name":"Technical Phone Screen","description":"Discussion with senior engineer covering Java fundamentals, JVM internals, distributed systems concepts, and real-world problem-solving approach for complex infrastructure challenges"}
- {"name":"Coding Assessment","description":"Technical assessment evaluating Java programming skills, algorithmic thinking, ability to optimize for performance, and code quality through practical coding problems"}
- {"name":"System Design Interview","description":"In-depth discussion of designing large-scale Java systems, performance considerations, scalability approaches, and architectural decision-making for distributed platforms"}
- {"name":"Engineering Team Interview","description":"Conversations with multiple members of the Java Platform team to assess cultural fit, collaborative approach, communication skills, and shared values around innovation and continuous improvement"}
- {"name":"Leadership Alignment Meeting","description":"Final conversation with team lead or manager discussing long-term growth opportunities, team vision, and how you'll contribute to Snowflake's mission of powering the data cloud"}

## Full description
At Snowflake, we are powering the era of the agentic enterprise. To usher in this new era, we seek AI-native thinkers across every function who are energized by the opportunity to reinvent how they work. You don’t just use tools; you possess an innate curiosity, treating AI as a high-trust collaborator that is core to how you solve problems and accelerate your impact. We look for low-ego individuals who thrive in dynamic and fast-moving environments and move with an experimental mindset — who rapidly test emerging capabilities to discover simpler, more powerful ways to deliver results. At Snowflake, your role isn't just to execute a function, but to help redefine the future of how work gets done.

**Build the Future of Data. Join the Snowflake Team.**

We are actively hiring software engineers from Europe and around the world for our European Engineering Center. Our office is located at Potsdamer Platz, in the heart of Berlin. It’s easily accessible by train, subway, bus, or bicycle – with numerous restaurants, cafes, and shops within walking distance. The official language for this office is English.

This is a fantastic opportunity to join a team of skilled engineers, building and maintaining the future of the Java infrastructure that powers the data cloud. As part of this team, you will work on the core Java libraries and JVM infrastructure that support our scalable, high-performance platform, impacting millions of users globally.

**AS A SOFTWARE ENGINEER ON THE JAVA PLATFORM TEAM, YOU WILL:**

* Contribute to building the next-generation systems that make using Java safe, efficient, and secure
* Help provide a consistent, high-performance platform that Snowflake engineers can use to deliver high-quality solutions to production.
* Identify performance and availability issues, implement effective solutions, and instrument key components as needed.
* Collaborate with global teams to solve real-world, large-scale challenges in data infrastructure.
* Continuously improve the reliability and performance of our Java infrastructure through proactive monitoring and automation.

**WE ARE LOOKING FOR SOFTWARE ENGINEERS WHO:**

* Have experience building, supporting, and troubleshooting complex Java systems.
* Understand Java fundamentals, including the JVM and core libraries.
* Have solid computer science fundamentals, including data structures, algorithms, and distributed systems.
* Are eager to learn about JVM internals and performance tuning.
* Thrive in collaborative environments, contributing to shared team goals.
* Have a BS in Computer Science or equivalent experience (advanced degrees a plus).

**Bonus points for:**

* Experience with multi-threading, concurrency, and caching.
* Knowledge of database or Linux internals.
* Previous experience with large-scale, high-performance systems.

Join us and be a part of a team that is driving the future of the data cloud.

Snowflake is growing fast, and we’re scaling our team to help enable and accelerate our growth. We are looking for people who share our values, challenge ordinary thinking, and push the pace of innovation while building a future for themselves and Snowflake.

How do you want to make your impact?

For jobs located in the United States, please visit the job posting on the Snowflake Careers Site for salary and benefits information: [careers.snowflake.com](http://careers.snowflake.com)
