C/C++ Software Engineer
ENGINEERING – Server-Eng-1 /
Percona is a respected thought leader in the open source community. We provide services and software for MySQL, MongoDB, PostgreSQL and MariaDB to open source users globally.
Percona is remote-first and globally dispersed; we have 250 people in almost 40 countries. We offer a collaborative, highly-engaged culture where your ideas are welcome and your voice is heard. The growth and development of our staff is a top priority; we provide funding for training, certifications, conferences and more.
Discover what it means to work with some of the smartest people in the industry, who also know how to have fun and are always willing to lend a helping hand. We offer flexible hours, the ability to work remotely and the amazing experience of working with a multinational team of experts.
Percona is looking for a flexible and efficient C/C++ Software Engineer to join its Open Source Software Development team. You will work on the Percona Server for MySQL, Percona XtraBackup, Percona XtraDB Cluster, Oracle MySQL, and MariaDB products. You will work from your home office, using online tools and resources to contribute to a fast moving and 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.
What You Will Do
- Diagnose and fix defects in Percona Server for MySQL, Percona XtraBackup, Percona XtraDB Cluster, Oracle MySQL and MariaDB products
- Assist in the design and implementation of improvements to the Percona Server for MySQL software suite
- Perform periodic source code merges from other open source repositories
- Develop test cases for continuous integration deployment
- Participate in code and design reviews
- Bachelor's degree in Computer Science or a related field, or equivalent experience
- Ability to speak, listen and write effectively in fluent English
- Minimum 3+ years of experience in C/C++ development and object oriented design
- Basic understanding of SQL databases and ACID transaction processing
- Experience with client/server or distributed network communication systems
- Experience with high concurrency threading models, atomics, and locking primitives
- Knowledge of various programming and scripting languages such as Bash, Perl, and Python
- Proficiency with tools like GDB and strace
- Experience with Git, GitHub, and source code management methodologies
What Will Make You Stand Out
- 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 compression and encryption algorithms and techniques
- Knowledge of high-performance algorithms on modern multicore hardware
- Knowledge of Open Source software concepts and community, preferably MySQL
- Experience with CI/CD tools such a Jenkins, CircleCI, and Travis
- Experience with issue tracking, communication, and information sharing tools such as JIRA, Launchpad, Confluence, Zendesk, G-Suite, Slack
- Experience/familiarity with various Linux distribution packaging systems
- Experience with virtualization and containment tools such as OpenVZ, KVM, VMWare, VirtualBox, Docker, Kubernetes, etc.
- Experience in Linux systems administration, including suitable expertise with file systems, hardware, and networking
- 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
- Ability to work autonomously and mostly asynchronously with the rest of the team
Remote work from home position that can be located anywhere worldwide.
Percona HQ is located in the Raleigh-Durham Area of NC, USA but this specific location isn't required for this opening. We are open to worldwide candidates.