Camille Potard
Verified Expert in Engineering
Software Developer
Le Mérévillois, France
Toptal member since February 23, 2021
Camille is a senior software developer with 20 years of experience building desktop applications for notable clients, such as E-on software, Hitachi, and Alstom. His primary expertise includes C, C++, Python, and real-time technologies with 3D software, in railway, power, video, imaging, and web domains. Camille thrives in remote environments with small or medium-sized teams.
Portfolio
Experience
Availability
Preferred Environment
Windows
The most amazing...
...application I've created was a very fast video editing application with original features.
Work Experience
Senior C++ Developer
Snow Technology
- Created a new database format for having multiple clients using the same database.
- Fixed several bugs in the C++ code impacting the final users.
- Adapted the Q Payroll application code to develop a web interface by exporting all the software's functionalities (transforming the software into C++ libraries interfaced with C#).
C/C++ OpenGL Expert
Sharemob
- Worked on server 3D video rendering using OpenGL and FFMPEG in C/C++.
- Managed AWS server to use NVIDIA GPU for fast rendering.
- Developed an Android app using OpenGL and face animation.
Senior Python Developer
Alteryx
- Fixed many bugs on the C++ and Python side of the Alteryx Designer plugin SDK.
- Created an end-to-end testing platform in Python from scratch for testing Alteryx Designer SDK plugins automatically on several software versions.
- Added new functionalities to the plugin SDK to add more accesses to the core of the Alteryx Designer application from the plugins.
C++ Developer
Alteryx
- Developed a Python SDK for reading and writing Alteryx Designer main file format.
- Reverse-engineered the code of Alteryx Designer to understand all the aspects of the file format.
- Used Python pandas libraries for compatibility with other formats of data management.
Senior C++ Developer
Quantum Software Solutions
- Updated C++98 code to more recent C++17 standards and libraries.
- Replaced Microsoft Access database support by Microsoft SQL Server support.
- Replaced C++ code by SQL Server stored procedure code.
- Solved numerous bugs, cleaned up, and improved the code.
C++ Developer
Repustate
- Added Linux/Windows cross compiling capacity to the main data library using MXE.
- Fixed bugs and crashes throughout the C++ code.
- Added a library connection with the external Go compiled code.
C Developer
Stefan BAUST
- Modified the FFmpeg library to add delay to an RTMP/H264 stream and replace video and sound on the fly.
- Developed multi-thread and real-time algorithms on Linux.
- Developed C on Linux (Debian), which is network-based streaming.
- Replaced compressed frames in real-time (Windows, Linux, OBS, NGINX RTMP) and added a pause function for real-time capture.
JavaScript Developer
ZIP Extractor
- Implemented decompression algorithms in JavaScript.
- Transformed complex algorithms from C to JavaScript (Deflate64, PPMD, LZMA, LZMA2).
- Reverse-engineered open-source compression software.
SIMD Assembler Expert
Vaxtor Technologies
- Optimized image processing algorithms in C using AVX and NEON intrinsics.
- Used the Linux platform on x64 and Linux on Raspberry Pi (ARM).
- Utilized GCC toolchain on Linux and Visual Studio on Windows.
- Adapted imaging algorithms from VTK into SIMD assembler.
Python Expert
RapidAds Inc
- Worked on a PSD image format generator in Python/JavaScript.
- Reverse-engineered Photoshop typography generation.
- Added many functions, libraries, and image-processing algorithms (VTK).
C++ Developer
Jewel VPN
- Worked on the core of the software in C++17/QML/Qt (Visual Studio 2017).
- Added an integrated web browser, allowing revenue generation by completing surveys.
- Configurated OpenVPN servers and Linux server management.
C++ Developer
Klewel
- Worked on the software's core in C++17/QML/Qt/CMake (Visual Studio 2012 Windows and XCode on macOS X).
- Added multi-thread and real-time algorithms and a pause function.
- Modified C in the FFmpeg library to add a pause recording feature for webcam streaming and screen capture.
C++ Developer
SNCF
- Maintained, enhanced, and added features to the software used to manage all real estate properties held by the French national train company (SNCF).
- Added new functions and enhanced the user interface (UI) and user experience (UX).
- Created and fixed Oracle SQL stored procedures and queries.
C++ Developer
Alstom
- Ported OGT-G software from Visual Studio 6 C++ code to Visual Studio 2015.
- Upgraded various libraries; for example, Rogue Wave Tools libraries to Rogue Wave SourcePro and LOG Viewer 5.0 libraries to Rogue Wave Views 6.0.
- Added new functions to railway communication software (SML400T) and worked on the communication layer, using TCP/IP/UDP.
C++ Developer
Hitachi Rail
- Assisted in developing railway supervision and control software (RCCS), featuring maintenance, timetables, and signaling. This supervision software is used for high-speed trains between France and London and on other train lines.
- Focused on the TCP/IP/UDP communication layer (bug fixes and protocol enhancements), added new functions to the core of the software (using C++, Rogue Wave Server/Views, and Visual Studio), and developed new GUI elements.
- Updated development tools and C++ code to the latest (from 2000 to 2015).
Web Developer
TopChrétien
- Developed a full payment system (https://www.topchretien.com/don/).
- Converted an old PHP site to Django-Python (www.topchretien.com).
- Integrated multiple web scrapers and added a video insertion system.
- Added new sections to the website (www.topchretien.com) and a complex statistics system based on multiple sources, such as Google Analytics and Facebook.
- Enhanced the server configuration based on Debian and AWS.
- Developed an iOS and Android application for internal communication.
C++ Developer
Alstom
- Developed power grid software for power line management, which is used in many countries, corrected bugs, and added new functions.
- Fixed numerous bugs involving multilayer programming in C++, C#, and Fortran.
- Added new functions to the core of the program for specific projects.
C++ Developer
Hitachi Rail
- Co-developed railway maintenance software (FRONTAM).
- Assisted in developing railway supervision and control software (RCCS), featuring maintenance, timetables, and signaling. This supervision software is used for high-speed trains between France and London and on other train lines.
- Focused on the TCP/IP/UDP communication layer (bug fixes and protocol enhancements), added new functions to the core of the software (using C++, Rogue Wave Server and Views, and Visual Studio), and developed new GUI elements.
- Wrote software specification documentation for human-machine interface (HMI) and core function modifications.
- Implemented scripts for installation and configuration of the environment and for data generation, using Python, Batch, Tcl/Tk. Wrote automatic tests in Python.
- Optimized software by using more efficient algorithms.
- Developed a new project for a new train line with corresponding HMI, data, and software modifications.
- Fixed numerous hard-to-find bugs that had been hidden in the code since the creation of the software ten years earlier.
C/C++ Developer
Eolane
- Developed Scene 4 viewer software—a frame-accurate, remote H264 video viewer—based on C++, C#, GStreamer, and FFmpeg library.
- Developed a high-end, multithreaded algorithm for the CPU.
- Implemented an RTSP/TCP-based communication layer for remote viewing.
Software Architect, Designer, C++ Developer
Filmative
- Conceived, designed, and developed video editing software.
- Implemented the complete development cycle, including a market study, conception, design, realization, and coding.
- Designed the GUI and the GUI library that goes with it.
- Integrated public-domain libraries, such as wxWidgets and FFmpeg, that worked on all desktop platforms for Linux, Mac, and Windows compilation.
- Implemented many image and sound processing algorithms and an important real-time layer for multithreading and x86 SSE assembler optimization.
C++ Developer
E-on Software
- Developed Ozone 2, a sky and cloud rendering plugin for various 3D software products, such as Cinema 4D and 3ds Max.
- Ported the main application for a 3D landscape design and rendering software product from Microsoft Windows to Mac OS X and Vue.
- Designed an automatic compilation and update creation system.
- Corrected bugs, optimized a SIMD assembler, added new functionalities, and reverse engineered a competitor's file format.
Experience
Video Editing Application
The idea was to develop a very fast application with a very fast HMI, written in templatized C++, using an optimized widget drawing system designed for video editing and written entirely from scratch. I collaborated on this project with my father, also a software engineer, and he wrote the audio rendering part of the project.
I led this project to the first fully functional version, which was four years after the project was initiated. While serving as the project manager, architect, designer, and developer, I wrote nearly 80,000 lines of code. For urgent personal reasons, I stopped working on the application just before the beginning of the commercialization, but it is fully working. You can take a look at the HMI on the project website.
Contribution to RCCS Project
My role was to find and solve the very hard-to-find bugs, using a lot of inputs from circumstances, a memory dump, and a stack dump. Because I was able to debug the assembler code directly in a binary library (ILOG Server) that this software was depending on, I found the origin of the bugs and proposed a correction to fix them. After the corrections were applied, the software was very stable and there were no more delays due to the software.
TopChretien Website
https://www.topchretien.com/don/Education
Master's Degree in Computer Science
Paris XI University - Orsay, France
Skills
Libraries/APIs
Standard Template Library (STL), FFmpeg, Microsoft Foundation Class (MFC) Library, Microsoft Foundation Classes (MFC), jQuery, wxWidgets, OpenGL, WebRTC, WebGL, REST APIs, Pandas, ODBC, Node.js, VTK
Tools
Visual Studio Development, Pytest, Microsoft Visual C++, Microsoft Excel, Shell, CMake, Subversion (SVN), CVS, Git, GNU Debugger (GDB), Visual Studio Tools for Office (VSTO), GitLab, pylint, wxPython, Conan, Xcode, Android NDK
Languages
C++, Python, C, C#, SQL, C++98, C++20, Batch, PHP, CSS, SCSS, HTML, JavaScript, Java, Assembler, C++17, Assembler x86, C++11, C++14, QML, C#.NET, Embedded C++, TypeScript, Excel VBA, Embedded C, Tcl/Tk, Fortran, Caml, UML, ARM Assembler, Python 2, x64 Assembly, Go, Rust
Paradigms
Refactoring, Unit Testing, Object-oriented Programming (OOP), Best Practices, Desktop App Development, DevOps, Microservices
Platforms
Windows, Software Design Patterns, Linux, Amazon Web Services (AWS), Android, MacOS, Docker, Embedded Linux, Amazon EC2, iOS, Azure, NVIDIA CUDA
Frameworks
Boost, Django, Qt 5, Qt, .NET, ASP.NET MVC, ASP.NET Core MVC, GStreamer, Selenium, ASP.NET, Windows PowerShell
Storage
PostgreSQL, Microsoft SQL Server, Oracle SQL, MySQL, Databases, NoSQL, Elasticsearch, SQL Server 2016
Other
Scripting, TCP/IP, Multithreading, Networking, Optimization, Source Code Review, HTTP, Software Architecture, Architecture, Video Encoding, Encoders, Back-end, Industrial IT, Industrials, Low-level Programming, Windows Development, SIMD, Advanced Vector Extensions 2 (AVX2), Real-time Communication (RTC), RTP, Computational Geometry, Excel Add-ins, Video Streaming, 3D Rendering, Image Processing, Visualization Tools, Cryptography, Full-stack, Scraping, QA Testing, Data Science, Remote Rendering, Android Emulators, Neon Signs, UDP, Cordova, Client/Server Networking, Performance, Memory Management, WebSockets, SDKs, Mathematics, WebAssembly (Wasm), 3D, Videos, Computer Vision, Llama 2, Open-source LLMs, Large Language Models (LLMs), Artificial Intelligence (AI)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring