Software Development Engineer – Personalization, Recommendation and Search – Backend Services

Website Discovery Communications

Position Summary

As television and media habits change, our mission remains true to the principles that founded Discovery – every day we seek to ignite people’s curiosity to engage, entertain and enlighten the world around them through amazing viewing experiences.

The Direct to Consumer Group is a technology company within the Discovery brand. We are building a global streaming video platform (OTT), and a suite of applications to support all of our network’s brands globally. We are building modern container-based micro-services operated on AWS. Our platform covers everything from search, catalogue, video transcoding, personalization, to global subscriptions, and really much more. We build user experiences ranging from classic lean-back viewing to interactive learning applications. We build for connected TVs, web, mobile phones, tablets, and consoles for a large footprint of Discovery owned networks (Discovery, Food Network, Golf TV, MotorTrend, Eurosport, Discovery Play, and many more) This is a growing, global engineering group crucial to Discovery’s future.

We are hiring senior software development engineers to join our global video delivery platform team – a foundational pillar of the direct to consumer group. Video is core to Discovery’s business and this team strives to provide the best possible video stream to every customer on every device and network. The team provides mission-critical functionality to all Discovery applications that includes content search and metadata services, video transcoding and DRM services and video playback services among others.

The ideal candidate has a track record of having built multiple high-performance, stable, scalable systems that have been successfully shipped to customers in production. Your work and your approach to work are exemplary: you drive best practices and set standards for your team. You are a key influencer in your team’s strategy and contribute significantly to team planning. You show good judgement making trade-offs between immediate and long-term business needs. You are a collaborative leader that makes other engineers and team members around you more productive, by sharing your knowledge, and helping to tie-break key technical decisions. You provide mentoring to other engineers.

Responsibilities

We are hiring Senior Software Engineers to join the Personalization, Recommendation and Search team. As part of a rapidly growing team, you will own complex systems that will provide a personalized and unique experience for millions of users across over 200 countries for all the Discovery brands. You will be responsible for building scalable and efficient microservices. You will design high-throughput, low latency distributed systems that will handle the scale of millions of users.

You will lead by example and define the best practices, will set high standards for the entire team and for the rest of the organization. You have a successful track record for ambitious projects across cross-functional teams. You are passionate and results-oriented. You strive for technical excellence and are very hands-on. Your co-workers love working with you. You have built respect in your career through concrete accomplishments.

Requirements

  • 5+ years of experience designing, building, deploying, testing, maintaining, monitoring and owning scalable, resilient and distributed gRPC/REST microservices. 
  • Knowledge of resiliency patterns (retry, fallback, timeout, circuit breaker, rate limiter, bulkhead).
  • Usage of platforms/tools like Envoy or Istio for integrating microservices and managing traffic flow across them.
  • Obsession for instrumentation, monitoring and alerting of services (Datadog, Prometheus or similar), and distributed tracing (OpenTelemetry). 
  • Familiarity with incident response process (PagerDuty).
  • Expertise with CI/CD pipelines and tools (CircleCI, Jenkins or similar) to automate building, testing and deployment of services and to manage the infrastructure (Pulumi, Terraform or CloudFormation).
  • Strong knowledge of AWS or similar cloud platforms.
  • Experience with container deployment, scaling, and management (Docker, Kubernetes or ECS).
  • Proficiency with Go.
  • Knowledge of load testing tools (e.g., artillery, ghz, k6).
  • Understanding of relational databases (e.g., MySQL, PostgreSQL), NoSQL databases (e.g., key-value stores like Redis, DynamoDB, RocksDB), and Search Engines (e.g., Elasticsearch). Ability to decide, based on the use case, when to use one over the other.
  • Familiarity with recommendation and search to personalize the experience for millions of users across million items. 
  • Masters in Computer Science or related discipline.

* Must have the legal right to work in the United States.

Discovery Communications, Inc. is an equal opportunity employer. Discovery is committed to being an employer of choice, not just a good place to work, but a great and inclusive place to work. To that end, we strive to recruit and maintain a workforce that meaningfully represents the diverse and culturally rich communities that we serve. Qualified applicants will receive consideration for employment without regard to their race, color, religion, national origin, sex, sexual orientation, gender identity, protected veteran status or disabled status or, genetic information.

We will consider for employment all qualified applicants, including those with criminal histories, in a manner consistent with the requirements of applicable state and local laws, including but not limited to all local Fair Chance Ordinances.

EEO is the Law
Pay Transparency Policy Statement
California Job Applicant Privacy Policy

If you are an individual with a disability and need an accommodation during the application process, please send an email request to HR@discovery.com.

To apply for this job please visit jobs.discovery.com.