Senior Software Engineer with 15 years professional experience, having worked for several companies in the domain of CAD, Simulation and Computer Graphics.
Strong knowledge of C++ programming language, proven experience as a Technical Lead in a distributed team environment, and high interest in Open Source and new Front End web development technologies.
Continuation Labs ↪ is a privately funded Software Engineering Research Lab whose purpose is to experiment and publish innovative works using new technologies in the field of software engineering. WebAssembly is currently the focus of all efforts.
Recent projects and publications:
Designed and implemented the AITAC Smart Drawings product (product video ↪), a new Industrial Drawing Automation Software for Marine & Offshore industries, integrated to the 3DEXPERIENCE platform of Dassault Systèmes (formerly known as CATIA V6).
The project started from scratch at AITAC, and the company got acquired by Dassault Systemes mid-2017 due to the product gaining strategic value for Naval Industries. My missions and responsibilities have been:
At AITAC (4 years 1⁄2):
- Defining and implementing the software architecture of the project (C++ / CAA V6), with initial requirement analysis and specification, development process and tools set-up (Agile-like methodology, Git, Assembla)
- Managing, mentoring, and coordinating the work of the software development team, consisting of 5 experimented Software Engineers around the globe (France / Croatia / India)
- Implementing several business-specific parts of the software, such as the Sheet and Table Templates components
- The last year before the acquisition, I assumed by interim the position of Product Director, defining the product functionality, handling technical negotiations with customers and organizing pre-sales actions
At Dassault Systèmes (1 year):
- Leading the technical integration of the acquired product into the 3DEXPERIENCE platform, while still continuing my Technical Lead position on the product and the development team
- Helping the new management to gain knowledge about the acquired software and its outcomes
Started as a Software Engineer on the SPEOS product (product video ↪), an optical simulation kernel integrated to CAD software platforms. My mission have been to enhance the simulation kernel integration to the various CAD platforms, through dedicated GUIs (C++ / CATIA V5 / Pro/Engineer) and interactive 3D interfaces (OpenGL, Cg).
I later moved on to the position of Lead Developer on the Optical Shape Design product (product video ↪), a new optical surface modeling software integrated to CATIA V5. The development was very math-centric (CATIA CGM kernel, geometric modeling, MATLAB, C++), with a small technical leading position on a team consisting of 1 PhD and 1 Software Engineer.
Software Engineer on the WinDev product (product page ↪), a Rapid Application Development Environment, well known in France. C++ mostly, with a bit of W-Language.
Junior Software Developer position on the 3D_Evolution product (product video ↪), a geometric modeling software for CAD data-translation. My missions habe been:
- Implementing CAD data translation modules (C++ / QT), either for visualization data (VRML, STL, JT), or BRep and Feature-based data (RobCAD, Pro/Engineer).
- Reverse-engineering of the Pro/Engineer CAD Format (x86 disassembler)
- API design of the geometric modeling kernel (C++) for 3rd party customers (German and Italian)
- Enhancements to the Product Visualization renderer (C++, OpenGL)