
Senior Software Engineer - Real-Time Communications Platform
Job Description
Senior Software Engineer - Real-Time Communications Platform
Department: Development & Engineering
Employment Type: Full Time
Location: United Kingdom
Reporting To: Magdalena Popovic
Description
Intermedia has established itself as a leading provider of cloud communications and collaboration tech that allows companies to connect better. We have a strong track record of growth, profitability, and creating an environment where everyone matters. Everyone. While we are fast-paced and admittedly a bit intense, we promise that you won’t be bored. You will find Intermedia is a place where you can indulge your passion for creating and supporting great cloud technology. What’s more, we always look to promote from within and have many employees who have been with us 10, 15, and 20+ years!
Are you looking for a company where YOUR VOICE is heard? Where you can MAKE A DIFFERENCE? Do you THRIVE in a FAST-PACED work environment? Do you wake every morning EXCITED to work with GREAT PEOPLE and create SUCCESS TOGETHER? Then Intermedia is the place for you.
Are you ready to make your mark?
About the Role:
While primarily remote, this role requires occasional visits to the Bristol office or London.
We are looking for a Senior Engineer working on a large-scale real-time communications platform. Focus on C++ services, networking, and system reliability. Practical experience in VoIP or PBX systems is desirable.
What you will be doing:
- Design, develop, and maintain C++ (C++17+) services
- Implement and troubleshoot networking and real-time communication flows
- Debug complex issues (core dumps, concurrency, performance)
- Work within and evolve a large, existing codebase
- Collaborate with QA and product on behaviour and edge cases
- Participate in code reviews and engineering best practices
- Contribute within Agile processes (Scrum, Jira)
What you will bring to the role:
- Strong C++ (C++17 minimum), STL
- Solid networking fundamentals (TCP/UDP, sockets)
- Experience with multithreaded/concurrent systems
- Strong debugging skills (gdb, core dumps)
- Linux development experience
- Ability to understand and maintain complex, legacy systems
- Experience with Agile and Jira/Atlassian tools
- Practical experience in VoIP or PBX systems
- VoIP protocols: SIP, RTP/RTCP, SDP, WebRTC
- Telephony/PBX systems: call routing, hunt groups, call park/pickup, feature interaction and state handling
- Boost (especially Boost.Asio)
- GitHub (PR workflows, code reviews)
- AI-assisted development tools (coding, debugging, analysis)
- Kubernetes / containerised environments
- FreeSWITCH
- Network analysis tools (Wireshark, tcpdump)
- Performance profiling and optimisation
- Scripting or Python