Sr. Software Engineer
Click here to expand the job description.
As a Senior Media Developer, you will have a major stake in the ownership of the media pipeline. This pipeline serves as the artery that runs through the product and, as a video technology company, is fundamental to our users' experience. You will have a huge impact on the inception, design, and implementation of the software and services that allow millions of people that use our tools every day to learn and share knowledge. In this role you will work on systems such as:
- Our full suite of recording clients enabling remote and scheduled recordings, easy ad-hoc recordings, and professional-level webcasts.
- A cloud-based encoding and composition engine powering a full-featured online editor and a high quality viewing experience.
- Live webcasting platforms for 1st and 3rd party technologies including RTMP.
- A growing suite of video and audio analysis tools to get as much information out of the video as possible
- Write excellent code across multiple languages and layers of the system. Your code will follow industry best practices and be easy to maintain with elegant code factoring and clean technical architecture.
- Produce technical designs that properly separate concerns, are scalable under load, call for optimally reusable components, and are properly scoped to the problem you’re solving.
- Delve deep into the details and complexities of a high-performance media processing pipeline, understanding both the micro and macro issues around video quality and processing, and using that understanding to produce a first-class video capture and viewing experience.
- Become an expert in the existing codebase, seamlessly weaving new code into old code to enable new functionality.
- Raise the quality of the team around you through personal mentorship, introducing new standards/best-practices, and hiring.
- Clearly and concisely communicate plans, progress, and status to your stakeholders.
- You are extremely detail-oriented, ensuring no details slip through the cracks.
- You naturally take ownership when you encounter a problem.
- You are highly motivated to move quickly, but you insist on high standards and delivering great results. You are thoughtfully and positively critical of your own work and your peers work, always looking for ways to improve.
- You fearlessly debug complex, unfamiliar code to answer: “what’s really going on?”
- You’re a great teammate; others look to you for advice & partnership and you love learning from and teaching your peers.
- You thrive in an environment of ambiguity - asking the right questions to bring order out of chaos and spread that order to your peers.
- You love to learn new things, become an expert in new areas, and nerd-out on cool tech.
- You aren’t afraid to think big when establishing vision, but you know how to develop a plan in steps that delivers incremental value without boiling the ocean. You can define ‘good enough for now’ without giving up the long term goal or vision.
- You clearly and concisely communicate complex, nuanced ideas both verbally and in written form.
Skills and Experience
- You have a 4-year degree in Computer Science
- 5+ years of experience as a software developer
- Professional experience writing and debugging C/C++ in low-level, high-performance code
- Bonus: experience with cloud-based architecture
- Bonus: experience working with audio/video
- Bonus: experience using audio/video capture and editing software