The Ribbon Application Server provides SIP communication and advanced data services to multiple customer segments. Functioning in the IMS, pre-IMS, SIP PBX, and Call Server adjunct spaces, the Application Server facilitates network transformation of legacy enterprise and carrier networks, and provides innovative services, including voice, video, instant messaging, presence, mobility, conferencing, and collaboration, to monetize the next generation networks of Ribbon's customers.
We are looking for a Software engineer to work as part of the Application Server development team. This team works to satisfy requirements on enhanced system and network security for the Application Server product. A successful candidate must be self-driven and possess a strong work ethic, with a career interest in software development. They must be able to stay current with evolving standards, and comfortable working in a distributed team environment.
As part of our team you will:
- Research and evaluate technical information to prototype, design and deliver new software feature content for the Application Server from the ground up or by leveraging appropriate industry standard technologies
- Collect requirements to plan, design and co-ordinate the development and integration of software feature content for the Application Server using a hybrid agile-waterfall methodology
- Embrace a culture of continuous improvement at all levels, never being afraid to question or to seek to find a better way
- Design and produce high quality, well-architected and supportable software that you can be proud of
- Work with organizations such as System Test, Product Line Management, Documentation, and Product Support
Experience and Skills:
- University graduate (BS or MS) in Computer/Software Engineering, Computer Science/Systems, Electrical Engineering, Math or equivalent is required.
- Programming experience with Java or C++ in a Linux environment is required. JEE development experience is also beneficial. Scripting using a language such as Python, PERL, or Bash is required.
- Experience with call processing telephony protocols and state machines is an asset.
- Experience with TLS, IPSec, and SELinux is an asset.
- Experience with feature processing frameworks to provide voice, video, instant messaging, presence, mobility, conferencing, and collaboration services is an asset.
- Experience with the development of provisioning interfaces, subscriber open programmability is an asset.
- Experience with the development of management Interfaces which allows machine to machine access to the Element Management System is an asset.
- Knowledge and experience with security standards and benchmarks such as CIS, FIPS-140, and STIG is an asset.
- Experience with the Session Initialization Protocol (SIP) is an asset.
- Debugging/analytical skills (memory management, performance, and concurrency) is required.
- Excellent written and verbal communication skills, including the ability to produce clear and comprehensive architectural and design specifications is required.