Principal Software Engineer
Description:
Discovery hires the very best and brightest talent who are enthusiastic and passionate to fulfill the company’s mission of empowering people to explore their world and satisfy their curiosity.
In exchange for their talent and drive, employees are provided with an engaging, diverse workplace and the resources they need to learn, thrive and grow in their careers.
Job 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, catalog, 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 around the world - Discovery, Food Network, Golf TV, MotorTrend, Eurosport, Dplay, Discovery+ and many more. This is a growing, global engineering group crucial to Discovery’s future.
We are hiring a Principal Software Engineer to join our team. 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 judgment 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
- You lead design reviews for complex systems within your department and participate in technology reviews throughout the company.
- You continuously bring business context and customer focus to decisions made within and across groups. You balance tactical results with strategic incremental investments.
- You decompose complex problems into simple, straight-forward solutions. You have contributed to the company’s intellectual property with the software that you design and develop.
- You take a broad view of the platform influencing software, operations, and planning decisions beyond your immediate area. You frequently are consulted as an expert in performance, scalability, enterprise system architecture, and engineering best practices.
- You are a key influencer in your department’s strategy and contribute significantly to the department’s 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 and your success is judged as much on your own productivity as on the positive impact you have on engineers around you.
- You are an effective communicator as exemplified by your technical documentation, and your interactions with stakeholders and adjacent teams. You represent key subjects within our platform at any level of stakeholder engagement. You make the most technically deep topics approachable for less experienced readers and listeners.
Requirements
- Proficient in Java and multiple other languages.
- Persistence and caching solutions such as PostgreSQL, Redis, ElasticSearch, Caffeine.
- Micro-service based architectures using gRPC and Kafka for interservice communication.
- Asynchronous, non-blocking, functional style of programming and experience implementing with frameworks such as Spring WebFlux, Node.js, vert.x
- Usage and deep understanding of Docker, Kubernetes, and AWS.
- Experience of building, operating, and truly owning services. Implementing alerting, metrics, and logging using Prometheus, CloudWatch, Kibana, PagerDuty.
- 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 [email protected].