Software Development Engineer III
Location: Bellevue, Washington, United States,
Req ID: 30627
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 software development engineer to join our Global Identity team. The global identity team is chartered to provide the very best registration, authentication and authorization systems for all its customers. This includes building an Identity platform that could be used by all customers and discovery services. 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.
- You are experienced and capable of playing a leading role to design and develop major functional changes to existing software systems, or new ones, involving yourself and other engineers. You make good decisions when to build new and when to extend existing.
- You provide guidance on design, coding, and operational best practices, and have a track-record of applying these best practices to software that you have worked on. You can propose and create best practices proactively where none exist.
- You make high impact decisions driving how and what software gets built. Your decisions are often right, and you are persuasive in delivering your suggestions and ideas to your team.
- You mentor junior engineers, overseeing their designs, code quality, and integration into a team. Your success is judged as much on your own productivity as on the positive impact you have on engineers around you.
- 7+ years of experience designing, building, deploying, testing, maintaining, monitoring and owning scalable, resilient and distributed machine learning systems and platforms.
- Expertise with CI/CD tools (AWS code pipelines, Jenkins or similar) to automate building, testing and deployment of the ML platform and to manage the infrastructure (Terraform or CloudFormation).
- Strong working knowledge of AWS services and offerings with deeper understanding of EC2, S3, Kinesis, Cloudfront, Cloudwatch.
- Experience with one or more of: PostgreSQL and MySQL, Caching Solutions (such as Redis and Guava), Search technology (preferably Elastic Search), DynamoDB.
- Proficient in Java including use of Futures, streams.
- Expert in reactive programming style, asynchronous non-blocking and functional style of programming and experience implementing with frameworks such as Vert.x, Spring, Node.js
- Usage and deep understanding of Docker and Kubernetes.