Highly qualified multi-disciplinary professional who has worked for top organization developing applications in different domain using numerous technologies and languages. I have played many of the roles in the IT industry taken numerous software projects from initial conception to deployment, both as a founder of a new startup and as a consultant. Strong entrepreneurial spirit and driven by an intrinsic need for continuous improvement and growth.
Worked for world leader L-3 COMM Mapps (healthcare surgery simulator), Morgan Stanley (financial bank investment) and IKEA (virtual reality) and world leader CAE (simulation);
As a contractor developed custom software programs for different industrial domain of application;
Worked as a scientific programmer for a Research Center on Computation (technology transfer);
Founded a software consulting, scientific programming, and technology transfer company;
Software development using C++ for effective Object-Oriented coding and software practices;
Strong technical professional combining computer skills and scientific background (problem solver);
Ability to analyze and synthesize large quantities of information (start to contribute quickly);
Experience in Object-Oriented architecture integration using design patterns to develop reusable software component or module;
Writing efficient code by using modern C++ features, STL containers and programming techniques;
Major port of a real-time video monitoring application used by Montreal Public Transit (STM). Fix important issues: efficiency, rendering to improve stability of the console;
Ported/adapted a 3D application (scene graph data model of an interior design room) from proprietary format to Autodesk FBX format that is supported by Virtual Reality engine;
System Software Engineer for a leader in training simulation to develop and integrate sensor model supporting military, defense and security forces;
Worked as Software System Engineer (financial application, trade-support group), responsible for monitoring and supporting the technical and operational stability of the trading systems;
Developed a library for data collection system to quantitatively measure surgeon motor behavior in the operating room (virtual surgery simulator for training medical professionals);
Ported a client-server application for a credit card/bank payment transactions from Win API to Unix IBM AIX (project with critical deadlines) used by Vancouver Public Transit (TransLink);
Designed and implemented an object-oriented library to detect wane on rough hardwood lumber. This library featured an open architecture using OO, improving drastically on traditional technique;
Re-factored (API) package for an optimization problem (non-linear shape fitting). The algorithm was more than twice as fast as the original;
… to be completed
Less than 1 year
|C++||12||Currently in use|
|C++11/14/17||3-4||Currently in use|
|Java||2 years||Currently in use|
|Perl||2 years||Used 4 years ago|
|STL C++ 11/14/17|
|Numerical Simulation techniques: Finite difference, volume and element methods||Computational physics: coded advanced CFD numerical algorithms||Used in transfer technology project (University-Industry) in Open Channel Flow simulation||Currently in use|
|Physics Algorithm programming||Developed a physics modeling library.for a variety of applications||used in the defense domain to medical simulation as well. Also in sawmill industry image processing||currently applied|
|Math programming||Linear algebra, 3D API||
developed a 3D math library …
used in the defense domain (map projection global positioning system) and is currently applied physics 3D simulation as well
|Used 2 years ago|
synthetic tactical virtual environment (military)
used in the defense domain and virtual reality
|Used 2 years ago|
|Video Streaming||GStreamer GNU||Transportation||1 year ago|
|Image processing||Halcon imaging||Sawmill industry defect tracking|
|Scientific languages||Mathematica, R, Matlab||Coded scripts in various domain: finance, physics and …|
|Scientific library||Numerical Recipes in C++, Boost Ublas, Std numerical library||Various domains||Currently in use|
|Unit test||Google unit test, Visual Studio unit test framework (VS2015)||Currently in use|
|3D modeling||OSG (Open Scene Graph), OpenGL||Used sometimes ago …|
|GUI Development||QT, Java Swing, Win32 API||Currently in use|
|Agile (Scrum)||Jira and Team Foundation Server||Used 1 year ago|
|Boost||Pointer container, string algorithm, algorithm adaptor||Currently in use|
|UML||Enterprise Architect||Currently in use|
|Documentation||Doxygen, markdown, pandoc|
|IDE||VS, Netbeans, eclipse, visual studio code|
Bachelor degree in Physics, University of Montreal (1990)
Master Degree in Physics, University of Montreal (1993)
Student at Ph. D. Physics level (Computational Physics) (1998)
(Courses completed, proposal done but did not completed the final examination)
Presented the programming environment that we are developing for the dam break simulation. This environment provides an easy way to program and test numerical scheme on the well-known DamBreak problem. I have presented the architecture of the framework and an example of how to program a numerical algorithm.
Presented some of the projects I have realized as an industrial application (developing technology product). Also, I presented the programming environment that I am developing for the simulation of the dam break wave;
I have presented technology transfer project (Open Channel flow simulation) in the hydro-electricity industry. I discussed the difficulties that we have faced during this project, particularly the problem of reproducing flow regime in such a complex natural environment. I have presented the result we that we have obtained and what should done to ameliorate the precision (get a better accuracy).
Abstract In this report we provide an introduction to ODE, then present an extensible Object-Oriented framework - written in C++ - with emphasis on the reusability of modules for ODE solvers. The ability to extend this API to accomodate new algorithms as they are developed is particularly attractive. This facilitates our work to find the best numerical method, and speed the development of a dedicated simulator for specific cases.
"Validating Shock Capturing Schemes On The Dam Break Problem", -** J. Belanger Elligno Inc. Technical report no. TR1-2007-01 (March 2007)
“A C++ Differential Equations Solver using Object-Oriented Numeric” - J. Belanger Elligno Inc. Technical Report no. TR-2006-01 (September 2006)
“On the Re-Use of the ADATS Missile Model for the CAT Simulator”, - J. Belanger, Technical Note Oerlikon Contraves Inc. (November 2005)
“Background Fit Algorithm”, - J. Belanger, Technical Note ART Inc. (June 2005)
“Coordinate Transformation Services” - J. Belanger, API Specification Document (April 2004) CAE Inc.
“A Test Field Calibration to Validate Shallow-Water Codes: the Case of the Ste- Marguerite River with AquaDyn”, J. BélangerTPPT, M. CarreauPT and A. VincentTPT, CERCA Technical Report no. R2000-6, (September 2000)
“Simulation 2D d’une section de la rivière Ste-Marguerite” J. Belanger et A.Vincent Contract work under SoftKit Technologies Inc. and CERCA (1995)
|Title||Founder (independent contractor)|
|Project||Consulting (scientific and technical)|
|Technologies||C++11/14, design pattern, Boost, STL, OpenGL, OSG, Autodesk FBX, Qt, real-time, Perl, Java, R, Matematica, FORTRAN90/95|
|Description||I have been working as consultant and contractor in the IT industry to develop and support company in their project and business product development. My experience covers a wide range of the IT industry and technologies.|
|Tasks and resposibilites||
As a consultant, I have developed applications for solving challenging real-world problems using technologies such as vision computer, real-time simulation, 3D modeling and scientific programming.
Worked as a contractor for small and large sized organization to support development of existing applications; experience involving designing, development, testing, implementation and support of applications.
Startup (my company) working on the development of a scientific programming environment (physics modeling) to facilitate and accelerate the programming numerical algorithm on the Dam Break problem.
|Title||Software Systems Analyst|
|Project||Virtual environment simulation (military)|
|IT Technologies||Poste de travail, Poste transactionnel, Bloomberg, Timeo, Theo, Titan, BIRT – Rapport trimestriel|
|Description||The project consists of building a simulator (training system) for ADATS operator. The software was developed in distributed object environment using a COM framework in multi language (FORTRAN95/C++) environment.|
|Tasks and responsibilities||
|Title||Scientific Programmer (Applied Research)|
|Project||Molecular Imaging (biotechnology)|
|IT||C++, Boost, numerical programming, scientific programming|
|Project Description||ART (Advanced Research Technologies) Inc., develops and commercializes molecular imaging products for the healthcare and pharmaceutical industries. Molecular imaging involves illuminating the part of the body of interest with, non-ionizing radiation and analyzing the emergent pattern for signs of pathology. Task consist of investigating both the scattering and absorption properties of tissue, the manner in which light propagates through tissue (normal tissue differs from abnormal in its absorption or scattering), it then becomes possible to differentiate optically between normal and abnormal conditions. Molecular imaging techniques are well suited for the evaluation of the response to therapy in cancer.|
|Tasks and resposibilities||
|Project||Synthetic virtual environment and simulation|
|IT||C++, math programming, 3D programming, OO, distributed software, real-time|
Core Technology group (military) on development of a Synthetic Tactical Real-Time interactive Virtual Environment. It is an open, extensible, distributed object based architecture and use the most modern concept in software practice such as: COM architecture, framework environment, Plug-In (dll libraries) which allows user to add new models within the synthetic environment.
Core Technology group (military) virtual synthetic environment warfare simulation.
|Tasks and responsibilities||
Responsible for the maintenance, product development of the 3D engine library as part of the Core Technology Department. Military’s Synthetic Environment;
|Role||Scientific programmer …|
|Project||C++ Physics Modeling Projects|
|Technologies||C++11/14, numerical programming, scientific programming, architecture, OO, UML, ODE (physics library), NR in C++, OSG, Boost, STL, Qt;|
In this page I present some of the physics projects I have been working for many years. These projects are part of a simulation environment that I am developping (see below) main objective is to provide a programming environment for the rapid prototyping of physics based algorithm . This project is motivated by my experience in industrial applications particularly in simulation (my experience at CAE Inc.) a world leader in simulation and also at CERCA (technology transfer center) working on CFD simulation of Open Channel Flow simulation (see below).
Development of a scientific framework based on modern software paradigm with emphasis on reusability and extensibility of software components in the field of computational physics.
Scientific Framework (SFX)
Project is based on an Object-Oriented framework with main objective is to provide a programming environment for the rapid prototyping of mathematical/physics based algorithm using classes at a high abstraction level.
Project DamBreak++ Simulator
I have developed a physics simulator used to validate numerical scheme on the well-known Dam-Break problem. The library is a collection of classes for solving the St-Venant equations (one-dimensional) using explicit scheme and finite difference technique.
Accelerate the prototyping phase (validation of numerical scheme) where focus is made on the ease of programming/implementing new physical algorithm (that have been already tested and validated) with a minimum effort.
Project SFX Scientific Framework
Scientific simulation framework programming environment using modern software paradigm to understand physics. The approach call POM (Physics Object Model) is centered on the concept of modularization (plug and play) and its implementation is based from commercial practices COM (Component Object Model). In this model an object “POM” implements a functionality, which is exploited via interfaces.
which allowed various modules of the software to interoperate in a decoupled fashion.
|Tasks and responsibilities||
Project Physics 3D library
I have developed a mathematical library for 3D modeling (linear algebra). The library feature efficient math operation (fast-floating point operation). It also support an Object-Oriented approach in the implementation of mathematical and physical data structure.
--- Project: Physics 3D Demo
Physics 3D library for the simulation of rigid-body. Prototyping environment where user can experiment different implementation or third-party physics library such as Newton Dynamics, ODE (Open Dynamic Engine);
1. Implementing a Math3D library (linear algebra) feature efficient math operation (fast-floating point operation). The library feature mathematical abstraction for manipulating 3D entity easily, an Object-Oriented approach in the implementation of mathematical structure (data), such as rotation, vector calculus;
2. Developing physics rigid body class structure;