Position: Principal/Lead С++ Architect
Company: Forte Group
Experience required: 5y
Category: C++
English level: upper
Published: 2020-08-01T00:00:00+03:00

We are looking for a C / C++ software architect with expert-level knowledge in VoIP call flows and real-time audio processing to join our current team in Chicago. This person’s main responsibility will be leading the architecture, design and development of a software component responsible for real-time audio packet processing, terminating SIP call flows and mixing / transcoding voice audio. This softwarerepresents a critical component in an industry-leading solution for facilitating “push-to-talk”communications across LMR (Land Mobile Radio) gateways, conference bridges into VoIP and PSTNtelephony networks, and media sessions with Windows/iOS/Android client apps.
 
Systems architecture and design experience with strong, hands-on development:
10+ years of experience designing and developing real-time software systems in C and C++ with experience in media processing, audio mixing and vocoder transcoding. Candidate must have expert-level knowledge of SIP, IMS and related VoIP protocols like RTP, RTCP and SDP.
Ideal candidate will be a top-tier, system architect and software engineer with a passion for hands-onsoftware development, problem solving, and debugging of complex, distributed software systems. Must possess excellent written and verbal communication skills with the ability and interest to lead, mentor and guide teammates.
 
You’ll be working with teammates geographically distributed throughout the US and internationally on a product suite with a broad breadth of technologies. You’ll be responsible for new feature development, defect resolution and sustaining engineering on a C/C++ codebase responsible for managing VoIP call termination and routing, media mixing and transcoding.
 
Required experience and qualifications:
• Experience working on large scale, concurrent and distributed systems using modern standard C++ 11/14/17.
• Strong debugging and problem-solving skills including network packet capture and analysis.
• Experience with common C/C++ frameworks such as Boost or ACE.
• Expert-level knowledge of VoIP call flows, SIP/IMS and related protocols like SDP, RTP, RTCP, SRTP, SRTCP.
• Experience developing kernel-mode network packet processing systems handling real-time audio transcoding and mixing.
• Knowledge of common voice codecs like G.711, G.729, iLBC and Opus.
• Deep IP networking experience with strong understanding of IP multicasting.
 
Generally desired qualifications:
• VoIP industry veteran, ideally with experience serving on networking or VoIP-related standards bodies.
• Deep knowledge of IP networking fundamentals; firewall and NAT traversal techniques
(including SIP traversal and STUN, TURN & ICE protocols); DM-VPN and IP multicasting.
• Experience with Cisco VoIP technologies and products like Cisco Unified Call Manager and Call Center. Experience with non-Cisco call managers a plus.
• Familiarity with land mobile radio systems and their related technologies and protocols (P25,
DMR, NXDN, etc.).
• Experience using Git, Gitflow, Bitbucket, Bitbucket Pipelines (CI), Agile Scrum project
management methodology using Atlassian Jira/Confluence tools.