DevJobs

C++ Software Engineer

Overview
Skills
  • C++ C++ ꞏ 5y
  • Java Java
  • Design Patterns
  • Boost
  • Client side development
  • Multithreading programming
  • STL
  • TCP/IP network stack
  • Backend development
  • Desktop development
  • Low level debugging
  • Mobile development
Viber is a calling and messaging app that connects people–no matter who they are, or where they’re from. With a free and secure connection, hundreds of millions of people worldwide communicate with their loved ones through high-quality audio and video calls, messaging, and much more.

Join our team as our next C++ developer. The team is in charge of providing different Client Networking Solutions for Viber client teams (Desktop and Mobile).

We are looking for a competent and proactive specialist who knows C++, a background in client development and also has a strong understanding of the client-server communication. While working with us, you will be engaged and involved in the development of new features as well as supporting and refactoring our legacy code.

Responsibilities:

  • Design, build and maintain efficient, reusable and reliable cross platform code
  • Keep project documentation up to date
  • Identifying bottlenecks and bugs and devise solutions to them
  • Work with different teams and stakeholders to identify issues and address them in the best way possible
  • Implement performance and quality modules
  • Excellent communication, interpersonal, and organizational skills with the ability to influence and collaborate effectively across different teams

Requirements:

  • 5+ years in C++ development - including the latest standards (C++20)
  • Background in client side development
  • Strong understanding on Design patterns
  • Proven experience with Multithreading programming
  • Knowledge of TCP/IP network stack.
  • Work experience with STL and Boost (Any, Array, Bind, Format, Multi-index, Optional, Tribool)
  • Independency working on technical solutions with high coding standards

Advantages:

  • Mobile development (Android or iOS) and Desktop development (Windows, Mac and Linux)
  • Backend development
  • Low level debugging
  • Experience in Java coding
Viber