Oracle Labs Parallel Graph AnalytiX (PGX) is a toolkit for graph analysis - both running algorithms such as PageRank against graphs, and performing SQL-like pattern-matching against graphs, using the results of algorithmic analysis.
Algorithms are parallelized for extreme performance. The PGX toolkit includes both a single-node in-memory engine, and a distributed engine for extremely large graphs and it is the core graph engine that powers several Oracle products, including extensions to the Oracle Database.
Graph analysis lets you reveal latent information that is encoded, not as data fields, but as direct and indirect relationships between data elements. This information is typically not obvious to the naked eye, but can have tremendous value once uncovered.
As a C++ engineer, you will part of PGX.D, which is a high-performance distributed engine for in-memory graph analysis - PGX.D aims at processing graphs with hundreds of billions edges and achieving great performance by leveraging fast network interconnects and the parallelism of modern multi-cores.
We publish the latest results of our work at international research and developer conferences.
While demand is soaring across the industry, this opportunity at Oracle Labs offers unique possibilities, including:
• Challenging and changing tasks in the context of creating new products.
• To think BIG - it not a joke - we are offering to work on next generation technology and do research in products that Oracle is going to develop in the future. Did you know that Java was originally a product from Labs?
• International self-organized team with diverse backgrounds.
• Ability to publish the results of your achievements.
• Opportunities for career growth.
• Competitive pay and benefits.
• Being part of one of the most strategic department of Oracle and cooperate with smart people in Labs globally.
• Being part of a growing, dynamic, international team across Africa (Morocco), Europe (Zurich, Prague) and the USA (Redwood Shores).
• Bridging cutting-edge academic research with customer demand by developing novel techniques that address real-world problems.
Oracle Recruiting: "Continuously selected by our clients as the exclusive vendor of preeminent talent"
· Experience in parallel, distributed and high-performance computing required.
· Advanced Masters or PhD graduates highly desirable, or relevant experience in industry.
· Excellent English verbal and written skills.
· Strong knowledge of modern C/C++ including object-oriented programming, design patterns, and algorithms.
· Experience with unit testing and developing high-quality software.
· Experience with scripting (Python, Gradle, shell) and working in the Unix environment.
· Experience with performance analysis, benchmarking, profiling, footprint or low-level code optimization.
· Solid design skills with a focus on architecture at scale.
· Experience with big data technologies (such as Hadoop, Spark).
· Experience with Java / Kubernetes / Fault tolerance is a plus.
· Ability to effectively articulate technical challenges and solutions.
· Adept at handling ambiguous or undefined challenges through abstract thinking.
· Ability to collaborate within and across teams effectively.
· Self-motivated with good time management.