Senior Software Engineer — С++
Location: Europe (remote)
ABOUT GRIDGAIN
Modern business-critical applications such as AI modeling, high-performance transaction processing, real-time decisioning, fraud detection and risk management all require more than just access to real-time data. These applications need a data platform that can store, access, process and analyze hundreds of terabytes of data at ultra-low latencies with high availability.
GridGain is a leading real-time data platform by the original creators of Apache Ignite. It is the fastest, most non-intrusive way to process enterprise-wide data for AI, transactions and analytics in real time and at massive scale. GridGain allows companies to combine a fast multi-model database with robust compute functionality to deliver the fast access data storage and low-millisecond processing required for today’s business imperatives.
GridGain is trusted by leading companies including Citi, Barclays, American Airlines, AutoZone, and UPS to accelerate their existing applications, speed operational analytics and fraud detection, train machine learning models for AI, and provide fast-access data hubs.
GridGain is growing! Join the team and play a critical role in a fast-paced Silicon Valley startup that's changing the definition of "real time," and the world's expectations for high-speed data processing and analytics.
ABOUT THE ROLE
GridGain is looking for an experienced in distributed systems development and multithreaded programming Senior Software Engineer (C++) to join the one of our Core Engineering teams in R&D department.
Required Job Duties:
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 sending data via a network to other nodes (including failure handling and recovering if the failure has happened)
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 cluster and in low-level byte represented data
Essential Skills & Requirements:
We welcome experienced software engineers who wish to develop and grow as professionals. We expect at least the following from a successful candidate:
Deep knowledge of concurrency in C++
5+ years experience in C++ programming
Experience with SQL databases
English — upper-intermediate or higher
The following will be a strong plus:
Experience with NoSQL and/or distributed databases
Experience with building distributed systems and algorithms
Hands-on experience with GPU development (CUDA, OpenCL)
Understanding of query execution pipeline (query planning and execution) Knowledge of Java and Java Memory Model
Experience with Docker, Kubernetes and/or public Cloud (AWS, GCE, Azure, etc.)
We are an Equal Opportunity Employer. We do not discriminate on the basis of race, religion, sex, age, national origin or disability.