Senior VoIP Software Engineer- Real Time Communication at Fuze
Be a part of something big. Join our vision to transform workplace communication as we know it!
Fuze is a leading unified communications as a service (UCaaS) provider focused on modernizing and simplifying day-to-day business conversations. We unify collaboration technologies like voice, video, and messaging on a single cloud-based platform so users can experience greater efficiency and less hassle each workday. Our company is growing rapidly as we move full steam ahead toward our anticipated IPO. Now is the time to bring your passion and expertise to our Fuze team!
Our customers use our software across a variety of platforms including Windows, OS X, iOS, Android and web. We build our software to work and provide a great experience across all of these platforms. Whenever possible we use open source technologies like WebRTC or OPAL. Where it makes sense we build our own software stacks. The Real Time Communications team also builds linux-based microservices that provide audio, video, screen share, content, recording and interoperability gateway functions. These microservices use a combination of REST APIs and IETF standards based protocols to provide functionality to our desktop, mobile and web-based clients. These microservices are built with scalability, resiliency and performance in mind.
The primary task of the Real Time Communications team is to build the heart of our product -- the software stacks that power the audio and video communications within our product. This team works across both the client and backend stacks. Within this team you will get exposure to a broad range of technologies and challenges.
As much as possible, we develop cross platform code -- sharing code across clients and sometimes between the clients and various backend services. We believe modularity and code reuse make for simpler and more efficient development process. As we are developing cross platform code that is often times CPU intensive and performance critical we tend to use C++ as our language of choice for code that requires portability between the clients and servers.
In this position you will be responsible for owning, developing and maintaining key components in our audio framework, whether client-side or on the backend. You will develop services that are deployed globally and run in cloud environments. You will be responsible for making key technical recommendations and then executing on your recommendations. You will be responsible for coming up with and implementing innovative solutions to difficult problems. You must be hands on and have a passion for developing software.
What You Will Need:
- Expert C++ coding skills with minimum of 5 years experience
- Experience developing real-time audio/video communication systems leveraging RTP/RTCP and audio codecs such as Opus, G.711, G.722
- Experience with streaming media protocols (SIP, SDP, H.323)
- Experience developing networking software including working with socket level programming and UDP/TCP
- Experience developing WebRTC-based stacks is a strong asset
- Experience developing and shipping high quality applications for OS X, Windows, iOS or Android is an asset
- Experience with Go and/or Python is a plus
- Understanding of the various trade offs when dealing with real-time media
- Drive, passion, dedication and a can-do attitude!