|
|
|
|
Operating Systems |
UNIX (Linux x86/PowerPC/ARM9, QNX), Windows |
|
Computer Languages |
C, C++, Python, |
|
GUI |
X11, Photon (QNX), GTK, wxWindows
(wxPython), Win32 Api |
|
Protocols/Networking |
TCP/IP (socket programming [UDP, TCP], configuration) |
|
Hardware |
x86, 16-bits and 32-bits RISC Processors, |
|
Development Tools |
GNU toolchain, Makefile, QNX (GNU), |
|
Cross-Development Tools |
GNU Cross-Development toolchain
(Linux 2.4 and 2.6, Mingw, QNX), Cross C-Compilers
and Assemblers, Debuggers (JTAG, Serial, TCP/IP) |
|
Software Configuration |
CVS, SVN, Visual Source Safe |
|
Scada |
COFIE [now ASNV group] (Proprietary), SYSECA Inc. [now Arinc] (Proprietary) |
|
Database |
SQLite, PostgreSQL
(LIBPQ, SQL), Faircom Ctree |
|
Porting |
Porting proprietary RTOSes to
Open Source/Linux and other RTOS environments – Porting code from x86
architecture to other architectures (PowerPC) – Porting Assembler to C,
or C to Assembler |
|
Linux Distributions (Desktop) |
x86 (Redhat, Mandrake, Debian), Alpha (Redhat), PowerPC (Debian) |
|
Linux Distributions (Embedded) |
Linux from scratch (x86, PowerPC, ARM9) |
|
Web Server |
Apache2, Boa, custom (C/C++) |
Software Development
(full lifecycles activities: Design, Code, Integration, Debug, Quality
Assurance, Documentation)
Real-time and Embedded
Systems
Industrial Process
Control Systems
Graphics User Interface
(both low-level and high-level)
Ability to deal with
large and undocumented amount of code
Ability to work either
in small team or large structure
Rapid Prototyping
Linux from Scratch:
compilation of the cross-compiler, u-boot (jtag
debugging with BDI2000), kernel, build of a Root Filesystem
[Flash, NFS, Disk] with BusyBox, SSH, etc.
Low level development:
Assembly, C, Driver development (Linux, QNX)
Application Engineering (pre and post-sales)
2002
-
Oak Grove Technologies
Oak Grove Technologies (100+ employees)., is a Research Triangle Park, NC based Services Company dedicated to delivering measurable solutions to our customers
Embedded Software Engineer:
Linux from scratch for PowerPC/ARM9/X86 - cross-compilation and configuration of the whole chain: Cross-Compiler and C/C++ libraries, u-boot with jtag debugging, Linux, Flash Root FileSystem, SQLite, openssl/openssh, XFree86, xfs/jfs filesystems, etc.
Ported applications from QNX to Linux (900,000+ lines of C code
Reorganized and Documented existent code (QNX, Linux)
Added new features to existent C code: design, code and test
Porting code to various Linux distributions (RedHat, Mandrake, Debian, etc.)
Work with different flavors of Linux: x86 (Redhat, Mandrake, Debian), Alpha (Redhat) and PowerPC
Python, wxWindows, Postgresql, TCP/IP
- Audio/Video Encoding, Decoding and Transcoding (MPEG4, MJPEG), using ffmpeg
- Designed/wrote Embedded Web and RTP server (in C++): javascript, ajax, ffmpeg
Server setup and management for Oak Grove Technologies: server (RAID1), DNS (Bind), email (qmail) [POP3, IMAP], http (apache), VPN (poptop), shared folders (DAV)
1998 - 2002 QNX Software Systems
A privately held 240 employee company producing an RTOS (Real-Time Operating System), Networking Protocols and Development Tools.
Field Application Engineer:
- Pre and Post-Sales.
- Conducted product presentation and demonstration to prospective customers (such Lucent, Alcatel, Tekelec, Nortel, Allied Telesyn Networks, GE, etc.)
- Conducted on-site training to promote the product line to key accounts
- Analyze, evaluate, and write demo software programs for new technologies (such High-Availability, Instrumented Kernel, etc.)
- Design Review and Consulting (FAA, GE, …)
- First-level technical-support
- Project Management for customers with an OEM support plan (Lucent, GE, …).
Software Engineer in R&D (Photon Graphics User Interface Group):
- Work on the HTML browser (Voyager, based on the Device Mosaic v2 code):
* UTF encoding/decoding
* Implement the Copy/Paste feature (copy to clipboard)
* Integration of the Terisa (Spyrus) SSL (Secured Socket Layer)
* Various Bugs fixes (Javascript, HTML engine, etc.)
- Work on the mail/news program (Vmail):
* Design and Coding
* Add new features (IMAP protocol, etc.)
* Add Newgroups (NNTP) functionality
* Various Bugs fixes
- Various works on Photon2, the latest version of the QNX Graphics User Interface (taskbar, worldview, shelf plugins, etc.)
1997 - 1998 Syseca Inc. (Formerly a Thomson
Subsidiary)
Before being sold to Harmon
Industries,
Software engineer
(Customer: NYCT Project:
- install and configure project environment (True64, NT, Oracle),
- Prototype and documentation of the user interface
- configure the SCADA applications (Centralized Train Control System)
- design/implement all customer dialogs (HMI), using ILOG, Visual C++ and Tcl.
1995 - 1997
C2ES (Intervox
Subsidiary)
Intervox is a privately held 300+ employees European Company that design and build Professional and Consumer security products (voice, image, etc.).
Project: send/receive alarm images over a phone line, without modem. As Software Engineer, I have:
- Done the project management with the customer (TYCO Europe)
- Worked closely with the hardware engineer to debug the custom hardware cards (ADSP-2105 and ADSP-2181 based).
- Designed and written an interactive Forth Cross-Compiler for the Analog Device ADSP-2181(my Forth compiler generates native DSP code).
- Written two embedded applications for the ADSP-21XX with this custom development environment.
- Designed and written a software for receiving and managing images sent over phone lines (without modem) by alarm central, under the QNX 4 RTOS and the Photon GUI (image reception, jpeg, storing/retrieving, NT and VAX interface, etc.).
- Trained the Tech Support people: installation, configuration, maintenance (OS and Application).
1994 - 1995 Cogesys
COGESYS expertise area is Software for Automated Testing for Card Payment Systems and has developed a unique expertise in Card-Systems technology. As Software Engineer, my work consisted of:
- The Design and Architecture of new application in C++ (Visual Studio): Testing and monitoring the performance of bank authorization servers (Visa/MC operations). Working with OSI levels 4-5 and X25.
- Adding new functions to existing applications
- Rewriting old applications in C++ (from C)
- Implementation under MS-Windows, with MSVC
1991 - 1994 I/O
Conseil
Vélizy (suburb of
I/O Conseil is a consulting company, specialized in RTOS such as QNX, and providing Development Resources under contract. EDF, COFIE were the main contracts I have done when I was working for I/O Conseil.
1993 - 1994
Customer: EDF (Electricité de
France) Suburb of
Company: EDF (the French Company of Electricity). Project: process control software. The application has been designed to control plugs within the steam generators of a nuclear power plant. As Software Engineer, my job consisted in:
- Design, Architecture and Choice of the Hardware:
* Desktop PC for the UI (non contaminated area) and Embedded PC (VME rack) for the contaminated and working area.
* XYCOMM analog and digital I/O cards (VME bus)
* Video incrustation card (Bravado, True Vision).
- Develop an API library (QNX4) for the True Vision video cards (reverse engineering of the provided DOS library).
- Application Design and Development (QNX4, Watcom C, QNX Windows): software used to assist operators to put the plugs onto the damaged pipes.
1991 - 1993
Customer: COFIE
This division is now part of the Ansaldo Signal NV Group.
Company: COFIE (now part of ASNV group) - Customer: Mexico City Subway, lines 1 to 7. Design and implementation of a Centralized Subway Control System, under the QNX 2.15 RTOS. This is a fault tolerance, redundant, distributed, PC based application, monitoring the 7 subway lines. Despite my role of technical adviser, within the 2 years of my work, I have done the following:
- Training of the whole team to QNX RTOS and QNX Windows GUI.
- Validation of the initial architecture choice (Arcnet redundant network switching, IPC using a Queue Manager, Network load, etc.), Proof of concept prototyping.
- Designing, Coding and Documentation of I/O driver for RTP devices (C and 386 assembler).
- Designing and writing of a subway line simulator (Sitralim). I have modelized and integrated all devices (Tracks, Switches, Signals, etc.) monitored by the centralized subway control system. This application has been used to test and validate the application of the centralized subway control prior to any on-site test. Each Mexico subway line (lines 1 to 7) has been modelized with Sitralim.
- Designing and writing of the complete UI of the centralization subway control system: dialogs for the subway operators, running on two 21 inches touch-screen monitor.
1988 - 1991
C2i
Various applications under MS/DOS, Windows 3.1, QNX 2:
- ‘Adilopti/Adildiag’: application of financial diagnostic and optimization of financing plans for buying, building and/or renovate a lodging, for the French Ministry of Town Planning and Housing. The software was used by advisers, who help people to build a financing plan regarding buying or renovating a new house. It was written in C (Borland), under MS/DOS.
- Embedded applications in z80 assembler (Rom-ed), on a custom hardware (Z80 based).
- Videotex server (modem and X25), under QNX 2. I wrote everything: the Videotex monitor (connection managment, historic, statistics, API for applications), and also several user applications (Application for the Telethon 89, 90 and 91 for instance).
1986 - 1987 Apalache
- Software for Management of alarm centrals, running on a supervision PC loaded with 4 modems: QNX, C language, text interface (no GUI).
- Various embedded applications (z80)
1983 - 1985 Contracts
Forth Language implementations (CP/M and 6809 Local Area Network), for the French Ministry of Education. This language has been deployed on all machines used into Schools and Colleges in France equipped with these computers.
1979-1982 French
University Degree for Sciences of Education (DEUG): ): Université Paul-Sabatier,
1979
French Baccalauréat C (Math, Physics): Lycée Michelet,
|
|
Pages
created |
|
Pages
last revised |