Match score not available

Senior Java Engineer (Performance)

Remote: 
Full Remote
Contract: 
Experience: 
Expert & Leadership (>10 years)
Work from: 

Offer summary

Qualifications:

Bachelor's degree in Computer Science or related discipline, 10+ years of professional experience, Expertise in Java, JVM and performance tuning, Deep understanding of distributed systems and networking, Knowledge of cloud platforms and services.

Key responsabilities:

  • Analyze and enhance performance of the Hazelcast platform
  • Collaborate on scalable system architecture design
  • Guide performance testing and establish benchmarks
  • Propose optimizations to improve performance
  • Review code and provide performance best practices
Hazelcast logo
Hazelcast SME https://hazelcast.com
51 - 200 Employees
See more Hazelcast offers

Job description

Department: Software Engineering

Employment Type: Permanent - Full Time

Location: Remote, UK

Description

WHAT WE NEED

Are you passionate about pushing the boundaries of technology and performance? Do you thrive in low-latency environments and love the challenge of optimising JVM based systems to their fullest potential? If so, we want you on our Architecture team at Hazelcast! We are on a mission to revolutionise the tech industry with cutting edge solutions and innovative thinking. Stream processing, in memory data grids and distributed computing are our obsessions. Join us, an let’s make an impact together!

We are seeking a dynamic and experienced Senior Java Engineer (Performance) who lives and breathes Java, JVM internals and who excels in low latency environments. If you have a passion for systems architecture, a deep understanding of the interplay between software and hardware at the OS kernel level, and a skill for mentoring, this is the perfect role for you. Your expertise in distributed computing, concurrency, networking, profiling and more than a passing interest in system programming languages like Rust, C/C++ will be crucial in driving our success.

Day to day, you’ll be leveraging your solid engineering fundamentals with a focus on performance, resilience and scale, bringing your passion for solving difficult problems to help realize the product vision.

Your role as a Senior Java Engineer - Performance is crucial in ensuring that Hazelcast Platform meets performance requirements, delivers a responsive user experience, and efficiently utilize resources from a mobile device up to the largest cloud servers.

What You’ll Do

  • Performance Analysis:
    • Dive deep into the Hazelcast platform, uncovering every opportunity to enhance performance, reduce latency and boost throughput across all of our runtime topologies.
  • Systems Architecture: Work with the architecture team to craft and refine scalable, efficient system architectures that are the backbone of our high-performance solutions.
  • Performance Testing:
    • Guide the Product Quality team to design and execute regular performance tests to evaluate the scalability, resiliency, responsiveness and resource usage of Hazelcast Platform under different conditions, such as varying loads or network latencies.
    • Establish performance benchmarks, that can be executed regularly to monitor and track the performance of the Hazelcast Platform over time. Enhance KPIs and quality attributes to detect and alert on performance regressions or anomalies.
  • Optimization:
    • Based on analysis and testing, propose and implement optimizations to improve the performance of Hazelcast Platform. This may involve refactoring code, tuning JVM parameters, network and IO optimisatioon, or optimizing code execution.
  • Code Review and Guidance:
    • Using your deep Java knowledge, review code to ensure it adheres to performance best practices and provide guidance to developers on writing efficient code and using performance-friendly design patterns.
  • Collaboration:
    • Document performance findings, optimization strategies, best practices and share this knowledge with the engineering team to improve overall performance awareness and expertise.
    • When required collaborate with our Customers on troubleshooting issues.
  • Continuous Improvement:
    • Keep current, by staying up-to-date with the latest advancements in performance optimization techniques, tools, and technologies, and continuously seek opportunities to enhance the performance of Hazelcast Platform.
What You Have

  • Bachelor's degree in a relevant field of study (Computer Science, or related discipline).
  • 10+ years of professional experience - possibly in a low-latency financial markets or gaming
  • Java and JVM Mastery, deep expertise in engineering and performance tuning ideally
  • Excellent knowledge of networking, distributed systems, data structures and algorithms
  • OS Insight: comprehensive understanding of software-hardware interactions at the Kernel level, including memory management, CPU architecture and I/O.
  • Deep understanding of Performance Benchmarking and production of associated reports for peer review and industry review.
  • String technical knowledge of network protocol, transports and data serialization (Java Nio, gRPC, Shared Memory, Protobuf)
  • Cloud Savvy, experience with cloud platforms and services.
  • Java JDK 17+ optimisation

Knowledge of following are desirable:

  • Rust or C/C++ skills
  • Designing APIs (well crafted APIs supporting backwards compatibility)
  • Distributed Data Stores
  • Messaging Systems (Apache Kafka, RabbitMQ, Pulsar)
  • Popular Java Frameworks (Spring, Hibernate, Quarkus, Micronaut)

Benefits

  • 25 days annual leave + Bank holidays
  • Group Company Pension Plan
  • Private Medical Insurance
  • Private Dental Insurance
  • Life Insurance
  • EAP (Employee Assistance Program)

Required profile

Experience

Level of experience: Expert & Leadership (>10 years)
Spoken language(s):
English
Check out the description to know which languages are mandatory.

Other Skills

  • Collaboration

Software Engineer Related jobs