Principal Software Engineer- C++

Location: UK (Belfast)/ India (Bangalore)
Type: Full-time


What is the opportunity?

Job Description

  • Optiva is a leading company in telco industry and telco products, covering the full lifecycle of telecom billing system experience, including that of real-time and offline charging systems, together with CDR mediation and Policy Control;
  • The Principal Software Engineer handles the most complex software cases, designing, developing, testing and releasing quality software, taking into account industry-level development and documentation practices;
  • As a software engineer, you will be working in a team of mixed skills professionals (business analysts, system integration, QA, Ops teams) on Optiva’s innovative solutions for OSS/BSS;
  • You will investigate issues by reviewing/debugging code, providing fixes and reviewing changes for operability to maintain existing software solutions;
  • You will engage in design sessions with multi-disciplinary teams aimed at shaping the future of our systems;
  • You will work in cross-organizational assignments that will include interacting with the Professional Services and Sales teams.


What will you do?

Job Duties:

  • Design and develop software solutions by studying information needs; checking with users; studying systems flow, data usage and work processes; investigating problem areas; following the software development lifecycle;
  • Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development and proposed solutions;
  • Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code;
  • Prepare and install solutions by determining and designing system specifications, standards and programming;
  • Improve operations by conducting systems analysis; recommending changes in policies and procedures;
  • Update job knowledge by studying state-of-the-art development tools, programming techniques and computing equipment; participating in educational opportunities; reading professional publications; maintaining personal networks; participating in professional organizations;
  • Protect operations by keeping information confidential;
  • Provide information by collecting, analyzing and summarizing development and service issues;
  • Accomplish engineering and organization mission by completing related results as needed;
  • Support and develop software engineers by providing advice, coaching and educational opportunities;
  • Mentor all levels of engineers;
  • First and foremost, developing software our users need;
  • Collaborate with team to brainstorm and create new products;
  • Grow engineering teams by interviewing, recruiting and hiring;
  • Make informed decisions quickly and taking ownership of services and applications at scale;
  • Work collaboratively with others to achieve goals;
  • Be a persistent, creative problem ­solver;
  • Remain cool and effective in a crisis;
  • Stay on the leading edge of development practices;
  • Passionate about great technologies, especially open source;
  • Understand business needs and know how to create the tools to manage them.


What you need to succeed?

Mandatory Qualification:

  • More than 10 years of development experience with  C/C++ and skilled in  multi-threading, distributed systems engineering;
  • Experience with designing, building and maintaining efficient, reusable, and reliable C/C++ code;
  • Strong proficiency in C/C++ (including but not limited to 98, 11 and 14 standards), with fair knowledge of the language specification;
  • Experience in development of robust and scalable software in C/C++ running under Linux or UNIX operating systems on a variety of computing platforms using Agile/Scrum development methods;
  • Experience in designing, implementing, debugging and problem solving of C/C++ software applications, while providing feedback to other team members;
  • Knowledge of design patterns (abstract factory, prototype, adapter etc.) and coding best practices;
  • Experience in implementing performance and quality modules;
  • DB Knowledge: Oracle, MySQL, PostgreSQL, Redis, NoSQL Engines;
  • Experience in architecting  of mission-critical enterprise systems;
  • Comprehensive experience of refactoring and working with legacy code;
  • Unit and Integration tests experience (including but not limited to Google Test, Catch, cpp Test);
  • Excellent OOP skills;
  • Experience working with CICD, GIT, Jira, Jenkins;
  • Excellent communication skills in English;
  • Very good soft skills, Teamwork and adaptability to challenges


Optional Qualification:

  • Experience in Telecom solutions (Protocol Handlers, Charging) would be a plus;
  • Experience with Optiva Unified Charing Application;
  • Knowledge of 3GPP standards, 3G, 4G Architecture and Technologies.
  • Java experience would be a plus
  • Experience working with Cloud solutions (GCP, AWS, or Azure) and Containers (Kubernetes, Docker) would be a plus;


Apply Now

Job Inquiries

For questions, please contact Talent Acquisition at

News Alerts

Want the latest from Optiva?
Sign up for new alerts >>

Follow Us