Jean Bélanger Resume (Industrial Physicist)
Professional Summary
Multi-disciplinary professional (scientific background from graduate study in physics) 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.
Time Line in The Business
- 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), EA (video game);
- 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;
Key Strength
- Strong technical professional combining computer skills and scientific background, can handle mathematical side as well as coding
- Ability to analyze and synthesize large quantities of information, to evaluate the issues, and solid problem-solving skills to resolve them efficiently
- Algorithm development for math intensive problems in numerical simulations/physics modeling
- Strong entrepreneurial spirit and driven by an intrinsic need for continuous improvement and growth
- Good communication skills, through progress reports, presentation, technical reports communicate to peer’s project advancement (across team present idea keep on top of any issues that arise)
Relevant Achievements
- Developed a set of tools (R scripts) for extracting statistical data to a more manageable format for visualizing and report creation (financial application)
- Major port of a real-time video monitoring application used by Montreal Public Transit (STM)
- Developed a 3D model converter, export format to be visualized by a virtual reality engine for the next generation of an interior design web app. Released in February 2017(Canada, Asia, Europe)
- 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)
- Implemented an image processing algorithm to detect wane (default) on rough hardwood lumber
- Re-factored (non-linear shape fitting) package, increased performance twice as fast as the original
- Developed programming environment to validate physics algorithm using modern software practice
Software Development
Software Development | 15+ years of proven experience designing and developing using object-oriented designs and patterns.Experienced in scientific programming using OO/C++, numerical libraries, programming techniques for performances issues. |
Architecture and Design | Experienced in Object-Oriented architecture integration using design patterns to develop reusable software component or module (particularly targeting scientific software application) in large scale systems as well as smaller stand-alone systems. |
Software development process | Experienced in the use of Agile, SCRUM approaches to the software lifecycle to release quality products on time. Use and conduct code peer revues to establish best practices among team. |
Best practices | Utilize proven design patterns, custom libraries/components, and 3rd party libraries, to produce highly modular and quality code. |
Programming Languages
Language | Advanced | Intermediate | Basic | Status |
C++ | 15 years | Currently in use | ||
C++11/14/17 | 5 years | Currently in use | ||
Java | 1 year | Used a year ago | ||
Perl | 2 years | Used 4 years ago | ||
FORTRAN 90/95 | 7 years | Used 4 years ago | ||
STL C++ 11/14/17 | 4 years | Currently in use | ||
Mathematica, R | 3 years | Currently in use | ||
Object-Oriented programming | 10 years | Currently in use |
Simulation and Scientific Programming
Technology | Field | Application domain | Status |
Numerical Simulation programming | Coded advanced CFD numerical algorithms in Computational physics | Transfer technology project (University-Industry) in Open Channel Flow Simulation | Many years ago |
Physics Algorithm programming | Developed scientific libraries.for a variety of applications | Medical simulation, defense domain | Many years ago |
Math programming | Linear algebra, 3D API | 3D modeling | Used 3 years ago |
3D programming | 3rd party API based on OpenGLCAE in-house library | defense domain and virtual reality. physics 3D modeling | Used 3 years ago |
Video Streaming | GStreamer GNU | Transportation video surveillance | 2 years ago |
Image processing | Halcon imaging | Sawmill industry defect tracking algo | many years ago |
… | … |
Library and practices
Technology | Library (tools) | Status |
Unit test | Google unit test, VS unit test framework | Currently in use |
Scientific library | Numerical Recipes in C++, Boost Ublas, std numerical container | Currently in use |
Object-Oriented programming | Currently in use | |
3D modeling | OSG (Open Scene Graph), OpenGL, Autodesk FBX | Used 3 years ago |
GUI Development | QT and QML, Java Swing, Win32 API | Currently in use |
Agile, Scrum, Kanban | Jira, Rallye, Azure DevOps | Currently in use |
Boost | Libraries | Currently in use |
UML | Enterprise Architect | Currently in use |
Documentation | Doxygen, markdown, pandoc, Latex | Currently in use |
IDE | VS, Netbeans, eclipse, visual studio code | Currently in use |
Education
- 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) (proposal done but did not complete the final examination)
(Courses completed, proposal done but did not completed the final examination)
Jean Bélanger’s Experience
Elligno Inc. (June 2006 – ongoing)
Title | Founder (independent contractor) |
Project | Consulting (scientific and technical) |
Technologies | C++11/14/17, design pattern, Boost, STL, OpenGL, OSG, Autodesk FBX, Qt, real-time, Perl, Java, R, Matematica, FORTRAN90/95, numerical simulation, algorithm programming |
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. ■ Image processing algorithm based on image recognition and edge detection (sawmill industry) ■ Data gathering algorithm for real-time surgery simulator training system (health care industry) ■ Major porting video streaming application ■ Developed a set of tools (R scripts) for extracting statistical data to a more manageable format for visualizing and report creation (Financial application); Worked as a contractor for small and large sized organization to support development of existing projects; experience involving designing, testing, implementation and support of applications. ■ Scientific programmer responsible of the math library: (Biotechnology molecular imaging) ■ Software developer C++/3D create a 3D environment: (Virtual reality 3D modeling) ■ System software developer to integrate sensor model: (Military training system) ■ System software analyst supporting trading system: (Financial banking investment) Startup (my company) working on the development of a scientific programming environment (physics modeling) to facilitate and accelerate the programming physical algorithm. |
Oerlikon Contraves Inc. (October 2005 – June 2006)
Title | Software Systems Analyst |
Project | Virtual environment simulation (military) |
IT Technologies | C++, OO, CAE Simulation Framework, rigid body simulation |
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 | ■ Analyze an existing software (rigid-body library) and make recommendations concerning the re-use of some part (based on budget and time line); ■ Work on the integration of a rigid-body library in CAE STRIVE framework (real-time simulation environment); ■ Programmed new class (cross-language: call FORTRAN routine from C++) by using new features of FORTRAN95 language; ■ Developed a prototype to ease the integration process (testing functionalities); Technical Report “On the Re-Use of the ADATS Missile Model for the CAT Simulator”, – J. Belanger, Technical Note Oerlikon Contraves Inc. (November 2005) |
ART Inc. (February 2005 – September 2005)
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. |
Tasks and resposibilities | ■ Performed a Monte Carlo simulation for photon migration in a 3D medium (particle simulation); ■ Re-designed the curve fit library (optimization problem) architecture and promoted modular approach by using Object-Oriented paradigm. This new version of the library featured: — use STL numerical container for fast floating point operation; — use numerical recipes library for reliable algorithm; — could be extended for new optimization algorithm. ■ Participated in the R&D effort; ■ Manage the development and the implementation of new algorithms (numerical coding) into a stand-alone software package(s) for end-users of ART’s optical products |
CAE Inc. (November 2000 – May 2004)
Title | Software Developer |
Project | Synthetic virtual environment and simulation |
IT | C++, math programming, 3D programming, OO, distributed software, real-time |
Description | Core Technology group (warfare simulation) is responsible for the development of the next generation of simulation framework used through the company (STRIVE: Synthetic Tactical Real-Time interactive Virtual Environment). It is an open, extensible, distributed object based architecture featuring COM approach written in C++. |
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; ■ Data Representation and Interchange Specification (SEDRIS); ■ Responsible of the 3D engine library (rendering and terrain representation). Give support for customer demo (conversion of terrain file format and bug fix); ■ Designed prototypes for technology evaluation (R&D project). For example physics library for collision detection-response; ■ Act as a technical lead to define database format (requirement) for terrain representation; ■ Coordinated meeting across department for schedule, planning and work plan. Requirement definition, technical design and coding; ■ Develop prototype and architecture for new concepts and technology that would eventually be used by other department ■ Implemented an atmosphere model;In charge of the design of the mathematical library (coordinate transformation) for map projection package based on SEDRIS API (used for Global Positioning System); Technical Report “Coordinate Transformation Services” – J. Belanger, API Specification Document (April 2004) CAE Inc. |
Annex : Physics Modeling Project (Elligno Inc)
Scientific Programming
Rôle | Senior Scientific Architect and Programmer |
Project | Physics Modeling |
Technologies | C++11/14/17/20, numerical programming, scientific programming, software architecture, OO, UML, physics library, NR in C++, OSG (Open Scene Graph), Boost, STL, Qt, |
Description | Project SFX (Scientific Simulation Framework) This simulation project was initiated from my experience in industrial applications at CERCA (technology transfer center) working on Computational Physics simulation of Open Channel Flow simulation (Hydro-electricity industry). Also, from my experience as software developer at CAE Inc. a world leader in simulation. Development of a scientific framework efforts are focused on the development of scientific software aimed at understanding physics via modern modeling techniques and using new software development paradigms. Main objective is to provide a programming environment for the rapid prototyping of mathematical/physics based algorithm with emphasis on reusability and extensibility of software components. Scientific Simulation Framework Overview. |
Tasks and responsibilities | ■ C++ programming using Object-Oriented technique (program different modules); ■ Optimization technique (Numerical programming/data structure); ■ Perform simulation test to validate algorithm on the well-known solution; ■ Re-factored simulation code to obtain a more scalable and maintainable new generation; ■ Writing technical specifications for development projects (gather requirements); ■ Rewrite some of the numerical algorithm using optimized data structure; ■ Analyze the existing code to make modification (architecture);Program numerical algorithm based on physics; |