C/C++ Software Engineer

ENGINEERING – Server-Eng-1
About Percona

Percona is a leader in providing best-of-breed enterprise-class support, consulting, managed services, training and software for MySQL®, MariaDB®, MongoDB®, PostgreSQL® and other open source databases in on-premises and cloud environments. Our services and software accommodate rapid growth and application development, help companies develop and deploy agile solutions and improve your ability to keep up with customer needs.
Percona open source database expertise helps businesses avoid downtime and outages, meet customer experience expectations, foster operational and developer collaboration and manage enterprise risks through sound database architecture frameworks.
Discover what it means to work with some of the smartest people in the industry, and help solve some of the most challenging customer problems. We offer flexible hours, competitive salaries, the ability to work remote and the amazing experience of working with a multinational team of experts.


Percona is looking for a flexible and efficient C/C++ Developer to become a Percona XtraBackup Developer and join its Open Source Software Development team.  You will work on the Percona XtraBackup, Percona Server (MySQL) and other related products. You will work from your home office, using online tools and resources to contribute to a high quality development environment for Percona and its customers. Travel approximately once per year for meetings. Access to a reliable high-speed internet connection is required. Flexible work hours. Laptop & Internet access provided.

Candidates from any time zone (worldwide) will be considered. This position reports to a Director of Server Engineering.

Key Responsibilities

    • Architect, design, and implement Blueprints for Percona XtraBackup.
    • Fix bugs in Percona XtraBackup,  Percona Server and related products.
    • Communicate effectively with teammates, Percona services teams, and customers.
    • Required Knowledge, Skills and Abilities:
    • Requires a bachelor's degree in Computer Science or a related field, or equivalent experience.
    • Ability to speak, listen and write effectively in fluent English.
    • Experience in C/C++ (3+ years).
    • Experience in implementing client/server or distributed network communication systems.
    • Requirements, design, and source code management methodologies.
    • Knowledge of programming languages, object oriented design, and distributed client/server architectures.
    • Proficiency with tools like gdb and strace.
    • Strong understanding of SQL databases and ACID transaction processing.
    • Experience using Git.

Optional Skills (in order of priority)

    • Knowledge of DBMS internal algorithms such as those used in query optimiser, B-tree indexing, multiversion concurrency control, ARIES crash recovery, and others.
    • Knowledge of high-performance algorithms on modern multicore hardware.
    • Experience working on Open Source database software projects, preferably MySQL.
    • Knowledge of the InnoDB and MyRocks storage engine internals.
    • Experience using git, github, and JIRA.
    • Success working in a distributed environment where e-mail, Slack and voice calls are the only interactions with clients, colleagues and managers on a daily basis.
    • Experience building MySQL and other products from source.
    • Experience/familiarity with various Linux distribution packaging systems.
    • Experience with virtualization tools (OpenVZ, KVM, VMWare, VirtualBox, and etc).
    • Experience in Linux systems administration, including suitable expertise with file systems, hardware, and networking.
Remote work from home openings require consistent and strong internet access.

HQ is in Durham, NC USA.  Staff members should be available if there is a need for any onsite trainings and/or events at any time.    

Note that your legal agreement will be with Percona Staffing LLC, a USA corporation and a subsidiary of Percona LLC.

Please review our Percona GDPR Privacy Policy.