MariaDB plc - Java Senior Software Engineer
Requirements
• 4+ years of experience in Java programming. • Deep knowledge of concurrency in Java and Java Memory Model and/or of concurrency model in other programming systems. • Excellent Java SE knowledge including IO, JVM internals, etc. • Experience with SQL databases. • Experience in troubleshooting Java applications and/or databases. • Excellent leadership, problem-solving, and debugging skills. • Experience working effectively in a fast-paced, collaborative environments. • Deep SQL knowledge (MariaDB/MySQL/PostgreSQL/Apache Ignite/GridGain) and passion for distributed systems (Raft, MVCC, ACID etc). • Understands MVCC and P2PL, and the difference between Snapshot Isolation and REPEATABLE READ. • The following may be a strong plus: • Experience with NoSQL and/or distributed databases. • Experience with building highload distributed systems and algorithms. • Experience with Docker, Kubernetes and/or public Cloud (AWS, GCE, Azure, etc.) • Open-source contributions, automation expertise, or performance/load testing. • Active use of AI. • Location • Remote – Georgia, Croatia, Estonia, Finland, Italy, Poland, Romania, Serbia, Spain, Armenia, Cyprus.
Responsibilities
• Ensure the scalability, performance, and reliability of the database system. • Collaborate with cross-functional teams to define, design, and ship new features. • Troubleshoot and resolve complex issues in distributed environments. • Profile, debug, and fine-tune performance with tools like JFR, JMC, async-profiler and VisualVM—and your own tricks. • Keep code clean and reviewable with Git. • Develop and optimize the data structures for providing the best experience accessing data in high data-intensive scenarios. • Implement the best way to store data to disk and send data over the network to other nodes (including failure handling and recovery after failures). • Implement and integrate algorithms for high availability of the whole cluster. • Investigate flaws in data consistency algorithms, which may require thorough debugging either on multi-node clusters and in low-level byte-represented data.
Benefits
• A globally distributed team where your work is tangible, valuable and appreciated. • Remote or Hybrid work options (location dependent) • Projects that stretch your skills and make an impact at scale. • Competitive pay, 25 days paid annual leave (plus holidays), and a culture that values creativity and clean engineering.
Apply in one click
Upload My Resume
Drop here or click to browse · Tap to choose · PDF, DOCX, DOC, RTF, TXT