SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
MariaDB is seeking a Senior Software Engineer to lead development of a highly scalable, geo-distributed, high-performance database solution. You will work on a small, highly skilled team where your contributions directly impact a product used by 75% of the Fortune 500.
In this role, you will be responsible for the development and testing of distributed database systems, with a focus on replication, sharding, concurrency, and performance optimization. You'll ensure scalability, performance, and reliability of the database system while collaborating with cross-functional teams to define, design, and ship new features.
Key responsibilities include:
- Troubleshooting and resolving complex issues in distributed environments
- Profiling, debugging, and fine-tuning performance using tools like JFR, JMC, async-profiler, and VisualVM
- Developing and optimizing data structures for high data-intensive scenarios
- Implementing optimal approaches for storing data to disk and transmitting data across network nodes, including failure handling and recovery
- Implementing and integrating algorithms for high availability across the cluster
- Investigating flaws in data consistency algorithms through thorough debugging on multi-node clusters
- Maintaining clean, reviewable code with Git
You'll collaborate globally, contribute to open source, and push the boundaries of what distributed databases can achieve.
REQUIREMENTS:
- 4+ years of professional Java programming experience
- Deep knowledge of concurrency in Java, Java Memory Model, and/or concurrency models in other programming systems
- Excellent Java SE knowledge including IO and JVM internals
- Experience with SQL databases
- Experience troubleshooting Java applications and/or databases
- Excellent leadership, problem-solving, and debugging skills
- Ability to work effectively in fast-paced, collaborative environments
- Deep SQL knowledge (MariaDB/MySQL/PostgreSQL/Apache Ignite/GridGain)
- Passion for distributed systems (Raft, MVCC, ACID)
- Understanding of MVCC and P2PL, and the difference between Snapshot Isolation and REPEATABLE READ
STRONG PLUS:
- Experience with NoSQL and/or distributed databases
- Experience building high-load distributed systems and algorithms
- Experience with Docker, Kubernetes, or public cloud platforms (AWS, GCE, Azure)
- Open-source contributions, automation expertise, or performance/load testing experience
- Active use of AI