Requisition ID 21866
We are a small, but mighty team, working at the crossroads of technology and entertainment to bring content from iconic television brands to our audiences over the Internet in the most entertaining ways we can imagine and build. As television changes, 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.
Discovery Digital Media is looking for a Software Engineer to work within our Client Services team building APIs that support the experiences of user facing digital products for a number of client platforms including Discovery’s sites, mobile apps, connected TV apps, gaming consoles and beyond. This is a fantastic opportunity to help solve complex but interesting scalability, performance and resiliency problems for products consumed by millions of users each day! You will have the opportunity to work with a suite of great technologies and in a highly collaborative environment.
Our technology stack includes Golang, MariaDB, MongoDB, AWS (SQS, S3, Lambda, DynamoDB, etc.), Docker, Github, Grafana, InfluxDB, PHP and Memcache/Redis. We love working with modern tools and sharing our experiences with the community.
1. Work closely with a team of very talented Software Engineers to design, develop and support APIs that drive innovative user experiences
2. Write clean, well-documented code for a range of digital products and services
3. Implement software components and features consumed by millions of people
4. Influence technical architecture to enable scalable and extensible services consumed by a multitude of client platforms
5. Work closely with other developers, operations, design, product, PM and QA to gather requirements for new API resources that, when implemented, will enable new features in our clients and services
6. Writing unit tests and end-to-end tests, against your code, to be used in our CI workflow
7. Evaluate 3rd party services and provide thoughts on when it’s more strategic for us to build versus buy
8. Participate in peer code reviews, provide and handle constructive feedback, and develop team knowledge
• BS or MS degree in Computer Science or a related technical experience
• Experience with server-side web frameworks
• Experience with software engineering best practices (e.g., unit testing, design patterns, building maintainable code, performance)
• Experience with both relational and non-relational database
• Experience with implementing software in at least one modern programming language such as PHP, Python or GoLang
• Knowledgeable with REST API design, implementation and documentation
• Knowledgeable with 3rd party API consumption, both client- and server-side
• Excellent communication skills in both verbal and written English
• Able to work in teams, contribute ideas and share knowledge proactively
• Self-motivated and unafraid to dive into detailed technical issues
• Religious about clean solutions to software problems
• Must have the legal right to work in the United States