What You'll Do : What’s a PRE Team?
The concept of Product Reliability Engineering (PRE) was born from an industry leading online SRE book (go ahead, “Google” it). At Criteo, we are the bridge between Product and Platform Engineering. The PRE group is composed of 7 teams of people with a wide variety of backgrounds, experiences and perspectives.
How You’ll Make an Impact
As a Site Reliability Engineer, you’ll work closely with product engineering to improve the reliability of our apps, systems and pipelines and assess where optimization is needed most. You’ll tell stories with meaningful monitoring and hopefully never be paged on your on-call rotation because we’ve worked hard with dev teams to make our platform the most reliable in AdTech. Speaking of on-call, rotations are shared with your local and global team and your time is compensated in addition to your salary! You’ll continuously learn skills directly from the other team members along the way and have opportunities to teach us too. It’s perfect for an engineer who wants to be involved in system design, infrastructure capacity and performance, troubleshooting and optimizing code, preventing incidents, and loves scaling tech with operational excellence.
- Engage in and improve the whole lifecycle of services—from inception and design, through to deployment, operation and optimization.
- Improve services before they go live through activities such as system design consulting, developing software platforms and frameworks, capacity planning and launch reviews.
- Maintain services once they are live by measuring and monitoring availability, latency and overall system health.
- Scale systems through automation, tooling, and leverage continuous deployment pipelines to ensure changes to production are reliably smooth.
- Practice sustainable incident response and blameless postmortems.
- Communicate often within your team and with internal stakeholders.
- Stack : .NET Core, C#, K8s, Mesos, Java / Scala, Python and more.
Who You Are :
Bachelor’s degree in Computer Science, a related field, or equivalent practical experience.Extensive experience with software development in one or more programming languages, data structures or algorithms.Proficient in designing, analyzing, and troubleshooting large-scale distributed systems and codebases.Experience working in computing, distributed systems, storage, or networking.Ability to debug, optimize code, and to automate routine tasks.Systematic problem-solving approach, coupled with effective verbal and written communication skills.