Senior Software Development Engineer - JVM Perf...
@ Criteo

Paris, Île-de-France, France
$150,000
On Site
Full Time
Posted 21 days ago

Your Application Journey

Personalized Resume
Apply
Email Hiring Manager
Interview

Email Hiring Manager

XXXXXXXXX XXXXXXXXXXX XXXXXXXX****** @criteo.com
Recommended after applying

Job Details

About the Role

At Criteo, as a Senior Software Development Engineer in the JVM Performance Team, you will play a key role in designing, optimizing, and maintaining Java and Scala based systems. This role bridges Product, Platform Engineering, and Infrastructure, contributing to building the most reliable platform in AdTech.

What You'll Do

  • Drive quality standards for efficient Java and Scala code.
  • Challenge and optimize system designs to reduce infrastructure cost.
  • Support teams in troubleshooting and performance tuning.
  • Keep the JVM ecosystem updated and scalable.

Your Responsibilities

  • Engage in services lifecycle from design to operation.
  • Consult on system design and assist in capacity planning.
  • Scale, automate, and evolve systems for improved performance.
  • Lead large-scale upgrade initiatives and migrate across repositories.

Who You Are

You have a master’s or PhD in computer science (or equivalent experience) with at least 6 years of software development using multiple programming languages, data structures, and algorithms. You are experienced in large-scale distributed systems, debugging, optimization, and automation. Familiarity with big data frameworks and distributed processing technologies like Hadoop and Spark is essential.

Stack and Tools

Linux, Kubernetes, Mesos, .NET Core, C#, Java/Scala/JVM, Python, Prometheus, Grafana, Kibana and more.

Key Skills/Competency

  • Java
  • Scala
  • Performance Optimization
  • Distributed Systems
  • System Design
  • Debugging
  • Capacity Planning
  • Automation
  • Linux
  • Kubernetes

How to Get Hired at Criteo

🎯 Tips for Getting Hired

  • Customize your resume: Highlight Java, Scala, distributed systems experience.
  • Research Criteo: Explore culture, recent projects, and tech stack on their website.
  • Emphasize performance: Showcase your optimization and troubleshooting skills.
  • Prepare examples: Use project stories about system design and scaling.

📝 Interview Preparation Advice

Technical Preparation

Review Java and Scala performance concepts.
Practice distributed systems design exercises.
Study Linux, Kubernetes, and cloud tools.
Refresh debugging and system monitoring skills.

Behavioral Questions

Describe a challenging project experience.
Explain your teamwork approach.
Discuss handling tight deadlines.
Share problem-solving examples under pressure.

Frequently Asked Questions