
Thomas Hügel
Architecte Logiciel Senior | Rust & Mojo
Salaire / Taux journalier
Limoges, France
Freelance
Peut venir sur site
Expertises
Langues
À propos
Introduction
Computer Science lecturer & Rust/Mojo specialist with 12+ years in systems programming and architecture. Built industrial-grade algorithms at Dassault Systèmes, developed online judge tools, and published academic research. Expert in functional programming, computational geometry, and performance optimization for complex systems.
Expérience de travail
Lecturer in Computer Science (professeur agrégé)
Université de Limoges - IUT
sept. 2016 - Présent
10 ans 2 mois
Limoges, France
I teach in various domains: databases (SQL), operating systems, networks, algorithms, programming. I use mainly Haskell and Rust in my teaching. I developed an online judge tool for SQL problems in Rust.
Mathematics Teacher (professeur agrégé)
Ministère chargé de l'Éducation nationale
sept. 2015 - août 2016
1 an
19100 Brive-la-Gaillarde, France
R&D C++ Engineer in Computational Geometry
Dassault Systèmes
sept. 2012 - août 2015
3 ans
Aix-en-Provence, France
• Implemented exact predicates for arcs / segments intersections: ◦ Sorted the intersections using some state-of- the-art academic algebraic techniques enabling to compare the roots of two polynomials without computing them! ◦ Controlled numeric uncertainty with arithmetic filters and set up a lazy evaluation template doing the costly exact computations (involving big integers) only when necessary. • Built robust operations on 2D contours (offset and boolean) using the above predicates, replacing a dozen of 25-year-old sensitive algorithms with a unique robust one: ◦ Used Alexandrescu's templates techniques of the so called “policy-based design” to provide several variants of a unique core algorithm. ◦ On the way, implemented a graphical tool (based on Gnuplot) to quickly grasp the differences between the new and the old algorithms’ outputs, enabling a faster debug in the algorithms replacement process. • Managed an intern student to optimize an algorithm computing the envelope of the sweeping of a 3D solid over another one (a very complex mathematical operation), dividing the average time complexity by a ratio of 4.
Research and Teaching Assistant
Université Nice Sophia Antipolis - Polytech
sept. 2011 - août 2012
1 an
Sophia Antipolis, France
* Taught Computational Complexity, Algorithms, and an introduction to Python. * Developed SATLab, a software plotting properties of random Constraint Satisfaction Problems, and presented it at the international SAT conference.
Teaching Assistant
Université Denis Diderot (Paris VII)
sept. 2007 - août 2011
4 ans
7620 Paris, Danemark
* Taught Unix shell, web programming (XHTML, CSS, PHP, MySQL), Algorithms, C language, databases (PostgreSQL); * Made substantial enhancements to the Unix shell course, resulting in an introductory textbook on Unix shell: Parlez-vous shell ? (150 pages, in French).
Formation
Université Paris Cité
Doctor of Philosophy (PhD)
2006 - 2010
4 ans 1 mois
Université Paris Cité
Master of Science (M.Sc.)
2005 - 2006
1 an 1 mois
École normale supérieure de Lyon
Bachelor of Science (B.Sc.)
2003 - 2005
2 ans 1 mois
Lycée Louis-le-Grand, Paris
Competitive Examinations
2001 - 2003
2 ans 1 mois