Poste :
Vos missions Dans le cadre de la rationalisation d'un projet interne qui fait usage de différentes bibliothèques de calcul symbolique, nous souhaitons développer notre propre bibliothèque en C++ moderne. Cette bibliothèque devra permettre :
* Construire un arbre fonctionnel à partir d'une chaîne de caractères, * Manipuler l'arbre fonctionnel d'une fonction, * Obtenir une représentation de l'arbre sous la forme d'expression (Textuelle standard, Textuelle LISP, Textuelle polonaise inverse, Latex) * Evaluer l'arbre fonctionnel de différentes manières :
Parcours récursif de l'arbre fonctionnel pour les évaluations ponctuelles ;
Evaluation via un automate à pile pour un grand nombre d'évaluation ;
Compilation à la volée à l'intérieur de la LLVM * Simplification de l'arbre fonctionnel pour améliorer les coûts d'évaluations en utilisant un moteur " style prolog " basé sur du pattern-matching à l'intérieur d'un arbre. Ce moteur devra pouvoir être facilement extensible et améliorable. Cette description n'est pas limitative. Elle peut tout à fait évoluer en fonction de votre expérience, des projets en cours et de vos attentes. Profil :
Votre profil * Vous préparez un bac5 en informatique, génie logiciel ou équivalent * Vous avez des bonnes connaissances en développement logiciel, en particulier en C++ ou Python * Vous avez une appétence pour les mathématiques * Vous avez une compréhension des concepts de développement Agile * La maîtrise de l'anglais serait un plus Entreprise :
CAPGEMINI SERVICE SAS
En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.