Software Engineering Expert - Distributed Systems
We are seeking an experienced software engineer to join our team in developing the next generation of distributed, highly parallelized enterprise data management capability. This role requires expertise in C/C++ and other programming languages, as well as strong understanding of high-performance, distributed systems implementation techniques.
Key Responsibilities:
* Design and implement software components for distributed systems
* Collaborate with cross-functional teams to ensure software quality and knowledge sharing
* Lead design and implementation of software components, work with product architects and managers
* Participate in code reviews, automated testing, load/performance testing, and technical documentation
Requirements:
* Advanced software development skills: Expert in C, C++, and highly skilled in more programming languages (e.g., Java, Python, Go Lang)
* Solid understanding of high performance, distributed systems implementation techniques
* Backend development expertise: Expert in developing, maintaining, and supporting sophisticated software systems
* Technical leadership and collaboration: Proven ability to lead design and implementation of software components, work with cross-functional teams
* DevOps and continuous delivery: Knowledgeable about containerized technologies, network protocols, and version control systems
PREFERRED SKILLS AND QUALIFICATIONS
* BSc or MSc in a technical discipline
* Proven experience with compilers and/or RDBMs, with strong skills in system & low-level programming (TCP/IP, multi-threading, IPC) on the Linux platform
* Familiarity with existing data management stacks and strong communication skills
THE IDEAL CANDIDATE WILL HAVE:
* Expertise in leading globally distributed product-based engineering teams
* Established expertise in leading complex software systems
* Advanced knowledge of distributed/HPC computing and Big Data & Hadoop software stack: HDFS, Hive, HBase, Ambari
* Familiarity with Agile software development methodologies, and proficiency in developing and deploying on Cloud environments
About this role
This is an exciting opportunity to contribute to the development of cutting-edge technology in the field of distributed systems. If you have the required skills and experience, we encourage you to apply.
What We Offer
* A dynamic and collaborative work environment
* The opportunity to work on challenging projects and develop your skills
* A competitive compensation package
],