Are you passionate about cloud Platforms as a Service? Are you a Software Engineering geek? Do you have a taste for Network Technologies, Audio/Video Communication, Backend Software Engineering, Fault Tolerant Designs and Performance Problems?
TokBox, the leading product in WebRTC video communications (part of Nexmo, the Vonage API platform), is looking for Software Engineers to join our Media Cloud Engineering team. Successful Candidates will explore new ways to further enhance OpenTok, our WebRTC-compliant Communications Platform as a Service, with new Scalable Architecture Designs for Media, Distributed Computing, Improved Fault Tolerance, improved Media Controlling Cloud Components and further develop our Back-end Tools for Media tests. The candidate will be interested in feature development, systems engineering, and programatic testing with a heavy focus on quality, reliability and fault tolerance. He/she will have a taste for data driven approaches to get insights, and also for learning and adopting leading industry standard around media communications. Drivenness and motivation to see his/her work used and deployed in large-scale production systems with extremely high service availability will be a must.
You would be joining an international, very experienced team of Software Engineer, Site Reliability Engineers and Software Development Engineers in Test passionate for real time communications, media, cloud infrastructure, and much more.
- Deep hands-on software development.
- Implement new features and strategies to improve capabilities and fault tolerance of the Opentok platform.
- Contribute to server and software architectures for real-time media streaming, quality optimization strategies, audio/video archiving, real-time broadcast, and related systems engineering, etc…
- Contribute to develop software and components to control media features operation and to monitor and evaluate quality and performance in the platform.
- Working on multiple projects covering software development into high-performance media servers, auxiliary control components, software testing tools and in close collaboration with other teams such as API, client library sdk, DevOps and QA SDETs.
- Bachelor’s/Master’s degree in Software Engineering, Computer Science, Telecommunications or equivalent.
- 4+ years of experience working on backend software engineering, with excellent debugging and problem solving skills.
- Good understanding of algorithms, data structures, memory management, and concurrency.
- Familiarity with Media communications technology, codecs, formats, real-time audio/video streaming, media transport protocols, video on demand.
- Track record of delivering high quality code in a fast-paced environment.
- Highly customer-centric and enjoy working on large-scale problems, shipping high performance systems software while working collaboratively in a team environment.
- Ability to follow established standards and methods when contributing to platform components.
- JS for backend (node.js) and/or python and willing to quickly learn the other.
- C/C++ coding skills, and willingness to learn more languages.
- Excellent written and spoken English.
- Team Player.
A plus (not a must), if one or more of the following are also provided:
- Master’s (or equivalent experience) in media communications.
- Specific hands-on experience with some of the following: H.264/VP8/OPUS/AAC, WebRTC standards (w3c and/or IETF protocol recommendations), bandwidth estimation, familiarity with Google’s WebRTC source code (Chrome’s RTC engine), VoIP, SIP, H.323, etc…
- SQL usage and some data science skills to understand and analyze implementations behavior in production.
- Distributed messaging, publish-subscribe patterns, API design and general networking internals.