About the role
Intermedia is looking for a talented and energetic C++ developer and team lead with real-world experience in designing and developing server applications to support a fast-growing UCaaS company.
The successful candidate will be a member of the Voice Applications team, helping to extend and enhance our products. They will play a crucial role in helping to solve challenging technical problems, developing solutions that will directly impact our business and its customers.
Responsibilities
The main responsibilities will be to support new functional developments on the VOIP server platform, investigating and leading initiatives related to performance and reliability.
You will have significant opportunities to contribute to the design and architecture of the system, as well as to help solve technical problems.
Required Skills
- Strong leadership and communication skills with the ability to work with other cross disciplinary teams in a collaborative manner.
- Be able to perform and present engineering analysis on a pre-existing system, to propose and justify desired changes and be able to validate changes through the use of metrics.
- Software development (programming) experience of at least 5 years
- Team leadership (software development) experience of at least 1 year
- Knowledge of C++ 17, including STL, BOOST
- Developing for Linux, applications-daemons
- Debugging in Linux (gdb), including coredumps
- Object Oriented Programming, multithreaded applications (including various primitives for multithreaded applications), network programming (sockets, TLS, TCP, UDP), bash, Make.
- Base knowledge of SQL and relational databases
- Networking Protocols and experience in using tcpdump / Wireshark
Desired Skills & Experience
- Ability to work with a large pre-existing code base
- Experience with libraries : libcURL, libsrtp, Google protobuf, Audio Codecs
- Experience with AMQP, Google Cloud API
- Familiarity with Python
- Practical experience with JIRA, Git version control
- Production of technical documentation detailing designs, APIs etc.
- Agile methodologies, Test Automation / Continuous integration
- Experience with telephony protocols : SIP, RTP / RTCP / SRTP / SRTCP, WebRTC
- Kamailio, PBX Telephony features