At a Glance
- Tasks: Build and evolve core components of a high-performance data platform.
- Company: Join Hazelcast, a leader in real-time data solutions across various industries.
- Benefits: Enjoy 25 days annual leave, private medical and dental insurance, and a pension plan.
- Other info: Collaborative environment with opportunities for mentorship and professional growth.
- Why this job: Make an impact by working on cutting-edge distributed systems and backend technologies.
- Qualifications: Strong Java skills and experience with complex backend systems are essential.
The predicted salary is between 60000 - 80000 £ per year.
At Hazelcast, we build a high-performance real-time data platform used in mission-critical systems across industries such as finance, e-commerce and telecoms. Our platform enables applications to access and process data in milliseconds, powering use cases like fraud detection, real-time inventory tracking and dynamic pricing.
We’re looking for a senior Java software development engineer to join the Core team, the group responsible for the engine at the heart of the Hazelcast Platform. This distributed, Java-based system combines low-latency data storage, in-place compute and stream processing across clusters of machines. This role is ideal for engineers who enjoy building core backend systems and working on the mechanics of distributed platforms, such as concurrency, coordination, data distribution and behaviour under load, failure and changing cluster topology.
WHAT YOU’LL DO
- Build the runtime engine: Design, implement and evolve core components of the Hazelcast runtime, including cluster services, distributed data structures and execution engines.
- Work on distributed systems problems: Contribute to mechanisms for partitioning, replication, coordination and recovery in a distributed cluster.
- Develop production systems: Write clean, well-tested Java code for long-running clustered systems that must remain reliable, observable and predictable in production.
- Contribute to architecture: Collaborate with experienced engineers and architects to shape the design and evolution of the platform’s core runtime.
- Raise the Engineering Bar: Participate in design discussions, code reviews and mentoring to maintain the high standards of the Core team.
WHAT YOU HAVE
You’re a strong Java engineer who enjoys building complex backend systems and understanding how they behave in production.
Must have
- Strong proficiency in Java and the JVM ecosystem
- Experience building backend platforms or complex systems
- Solid understanding of concurrency and multithreaded programming
- Experience designing reliable system components and APIs
- Ability to debug and reason about complex production systems
Nice to have
- Experience with distributed data systems, messaging systems or databases
- Familiarity with replication, partitioning or distributed coordination
- Experience with networking, serialization or storage internals
- Experience profiling and optimizing latency-sensitive code paths
- Contributions to open-source systems or developer platforms
BENEFITS
- 25 days annual leave + Bank holidays
- Group Company Pension Plan
- Private Medical Insurance
- Private Dental Insurance
- Life Insurance
- EAP (Employee Assistance Program)
Senior Java Engineer (Core) employer: Hazelcast
At Hazelcast, we pride ourselves on being an exceptional employer, offering a dynamic work culture that fosters innovation and collaboration among talented engineers. Our commitment to employee growth is evident through mentorship opportunities and involvement in cutting-edge projects within the high-performance data platform space. Located in a vibrant tech hub, we provide competitive benefits including generous leave, comprehensive health insurance, and a supportive environment that values your contributions and encourages professional development.
StudySmarter Expert Advice🤫
We think this is how you could land Senior Java Engineer (Core)
✨Tip Number 1
Network like a pro! Reach out to your connections in the tech industry, especially those who work with distributed systems or Java. A friendly chat can lead to insider info about job openings that aren't even advertised yet.
✨Tip Number 2
Show off your skills! If you’ve got a GitHub or personal project showcasing your Java prowess, make sure to highlight it during interviews. It’s a great way to demonstrate your experience with backend systems and complex coding.
✨Tip Number 3
Prepare for technical interviews by brushing up on concurrency and multithreading concepts. We all know how crucial these are for a Senior Java Engineer role, so be ready to discuss your approach to solving distributed systems problems.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, we love seeing candidates who take the initiative to connect directly with us.
We think you need these skills to ace Senior Java Engineer (Core)
Some tips for your application 🫡
Tailor Your CV:Make sure your CV highlights your experience with Java and backend systems. We want to see how your skills align with the core components of our platform, so don’t be shy about showcasing relevant projects!
Craft a Compelling Cover Letter:Your cover letter is your chance to shine! Tell us why you’re excited about working on distributed systems and how your background makes you a perfect fit for the Senior Java Engineer role. Keep it engaging and personal.
Showcase Your Problem-Solving Skills:In your application, give examples of how you've tackled complex production issues or contributed to system design. We love engineers who can think critically about concurrency and reliability in distributed environments.
Apply Through Our Website:We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you don’t miss out on any important updates from our team!
How to prepare for a job interview at Hazelcast
✨Know Your Java Inside Out
Make sure you brush up on your Java skills before the interview. Be prepared to discuss your experience with the JVM ecosystem, concurrency, and multithreaded programming. They’ll likely ask you to solve problems or explain concepts, so having a solid grasp of these topics will definitely give you an edge.
✨Showcase Your Experience with Distributed Systems
Since the role involves working on distributed systems, be ready to talk about any relevant projects you've worked on. Highlight your understanding of partitioning, replication, and coordination in distributed environments. If you have experience with messaging systems or databases, make sure to mention that too!
✨Prepare for Technical Challenges
Expect some technical questions or coding challenges during the interview. Practice debugging complex production systems and think through how you would design reliable system components. It’s a good idea to review common algorithms and data structures that are relevant to backend development.
✨Engage in Design Discussions
They’re looking for someone who can contribute to architecture and design discussions. Be prepared to share your thoughts on how to evolve core components of a platform. Show your enthusiasm for mentoring and raising the engineering bar within the team, as collaboration is key in this role.