
Software Engineer II - MarkLogic
Job Description
- Design, implement, test, and maintain C++ components within the MarkLogic Server.
- Contribute to core subsystems such as transactions, journaling, security, encryption, backup and restore, logging, storage abstractions, and server‑side execution engines.
- Write correct, efficient, and maintainable code with attention to performance, durability, and security.
- Develop and maintain software components that operate in distributed, multi-threaded environments.
- Contribute to features and fixes related to availability, scalability, data durability, and fault tolerance.
- Ensure server components operate reliably across Linux, Windows, and cloud environments.
- Collaborate with Quality Assurance engineers to define and implement effective testing strategies.
- Debug and resolve complex server-side issues using tools such as GDB.
- Address defects identified through testing, internal validation, or customer-reported issues.
- Participate in code and design reviews, learning established patterns and best practices for systems and database development.
- Work with senior engineers, product management, and support teams to understand requirements and production usage.
- Assist Support Engineers in diagnosing and resolving complex customer issues related to MarkLogic Server. Provide technical analysis and fixes for customer-impacting problems.
- Use Git‑based workflows and follow established development and engineering standards.
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience).
- Approximately 3+ years of professional software development experience, preferably in systems or backend development.
- Strong programming experience in C++, particularly in server-side or systems software.
- Solid understanding of:
- Data structures and algorithms
- Object-oriented programming principles
- Linux/Unix operating systems
- Multi-threaded and concurrent programming concepts
- Experience using Git or similar version control systems.
- Strong problem-solving and debugging skills.
- Good written and verbal communication skills.
- Experience working on database systems, distributed systems, or large-scale backend platforms.
- Familiarity with transactions, write‑ahead logging, replication, or consistency models.
- Exposure to security concepts such as authentication, authorization, TLS/SSL, or encryption.
- Exposure to additional languages such as JavaScript or XQuery used in server‑side runtimes.
- Exposure to cloud platforms such as AWS or Azure.
This position is also eligible to participate in our performance-based annual corporate bonus plan. Final base compensation is determined by a number of factors, including but not limited to job-related skills, education, demonstrable experience, and allowance for future and continued salary growth. We also offer a robust benefits package, with details below.
- Medical, dental, vision, life & disability, and financial benefits (including 401(k) retirement savings plan. Tuition Reimbursement program. Additional voluntary benefits including crucial illness/hospital indemnity, identity theft protection, auto & home insurance, legal, and pet insurance.
- Competitive salary, bonus, and best-in-class Employee Stock Purchase Program (ESPP) with a 27-month lookback
- Flexible paid vacation time, paid day off for your birthday, and company holidays. A variety of leave plans, including Parental Leave.
- Employee Assistance Program (EAP) and an employee well-being program focusing on physical, mental, and financial health.
Together, We Make Progress
Progress is an inclusive workplace where opportunities to succeed are available to everyone. As a multicultural company serving a global community, we encourage a wide range of points of view and celebrate our diverse backgrounds. Our unique combination of perspectives inspires innovation, connects us to our customers and positively affects our communities. It is only by working together and learning from each other that we make Progress. Join us!