Keywords
Skills
Programming languages
- C/C++,
- Java
- Jscript
- SQL
- Python
- C#
- Bash
- SDL-RT
- UML
- Visual DSP++
- Tasking
- QT
- MS Visual Studio
- LDRA Tool suite
- Eclipse
- Cmake
- x86
- ARM, Cortex
- Microchip PIC32
- AD Blackfin DSPs
- ST ST71xx
- Routing protocols (RIP v1 & v2, IGRP, EIGRP, OSPF, BGP).
- IPv4
- IPv6
- VPN
- IP Sec.
- LAN
- WLAN
- VOIP:SIP, H323.
- TCP,UDP,
- GIT
- Redmine
- Mantis
- CVS
- SVN
- SCRUM
- TDD: Test Driven Development.
- Embedded Linux
- Linux
- YOCTO
- FreeRTOS
- Windows
Project history
Embedded Systems engineer
From October 2014 to Now :FN Herstal (Belgium)
ENVIRONMENT
FN Herstal, Armament and defense systems manufacturer,
Herstal (1200 people) – Belgium
DTS team (42 persons) –
Member of Aero Software development team, I worked on 3 project:
- Digital Armament Management System (DAMS) ,
- Head Up Display system (HUDI) .
- Digital POD.
PROJECT DETAILS
• Embedded software development (C/C++ under GNU/Linux).
• As GNU/Linux kernel modules specialist I created FPGA module driver communicating via PCIexpress managing video feed as V4L2 device, and other different communication buses (ARINC 429, 1553, TTY) and application secure access control to I/Os.
• I had the role of OS management, this task includes creating a linux system, kernel and flash filesystem with required packages and partitions, optimize boot time , meet the OS requirements, generate a toolchain with SDK, using YOCTO.
• Create OS upgrade procedure including MCU Firmware upgrade.
• Create a Cmake based development framework capable of running :builds(release, debug, profiling), documentation generation using doxygen, running unit tests and integration tests, support C.I. with Hudson, do Onbuild static analysis verifying MISRA-C Compliance , dynamic analysis and coverage report generation using LDRA testbed.
• User mode Software component development , new features/Bug fixing/ proof of concepts.
• Propose and Develop an “Optical Geometric Distortion” correction solution, the distortion is induced by the lens on the projected display for the HUD system, using a matrix of Mrad measurement of induced distortion and OpenGL libraries.
• Writing specification documents.
• Standards: MISRA -C 2012, DO178C
TECHNICAL ENVIRONMENT
Tools:
• CMAKE,
• Eclipse,
• Reviewboard,
• Hudson
• YOCTO
• SVN
• LDRA Tools Suite
• OpenOCD
Program languages:
• C/C++, PYTHON, Bash
Environment
• Embedded Linux
• PikeOS
• Stm32,
• Amd G-Series X86-64
• Windows
Software Analyst
From November 2013 to June 2014 : Philips/TPVision
ENVIRONMENT
Philips/TPVision-Innovation Site Europe, the branch of Philips developing TV/SmartTV sets.
Location: Belgium
Certification team: 20p
Member of Philips certification team, I had to design and develop a Remote test automation system to help distant teams in the world (Taipei, Bangalore) to access Philips SmartTVs as if they were in front of it so they can test and debug software versions and reproduce bugs or test cases, and I had also to develop Test Automation scripts for certification and system validation teams.
PROJECT DETAILS
• Design a system architecture that meets the technical requirements (real-time access, resources access managing, roles / privileges, scalability).
• Find and study solutions for technical obstacles met when implementing different features of the system (technology and means of implementation).
• Embedded software development on Embedded Linux based ARM platform: Manipulate all inputs/outputs of a Philips SmartTV(LOGs, Audio, Video, PCMCIA/CI+, LNBs, IR, POWER, USB, Ethernet) and execute commands from control application.
• Client software development on QT / C++: Remote control client application (real-time video, manipulate all inputs/outputs of the remote equipment), open and manage a VPN connection.
• Features been implemented on the embedded equipment and control application:
- VPN connection between ARM Boards and the client application.
- Boards use a discovery algorithm to register and connected clients are managed with roles/privileges.
- Real time AV Streaming from boards to clients.
- File transfer & USB mass-storage emulation function between board and TV .
- Drive all the switches connected to the board (DiSEqC™ and CI+).
- Sending IR Commands to the TV.
- Routing Uart connection to a TELNET console integrated in the client application.
• Implementing ROBOT Framework Test Automation libraries in Python.
• Writing specification documents.
TECHNICAL ENVIRONMENT
Tools:
• QT5
• Ride
• Git
• Robot Framework
• Mantis Program languages:
• C/C++, PYTHON
Environment
• Embedded Linux
• Arm,
• Windows
• VPN, IPSec
Embedded software development Engineer
From December 2010 to September 2013: SAGEM Communications
ENVIRONMENT
SAGEM Communications, French company specialized in developing electronic/embedded products including DVB related products, Gateways, Printers..
Location: Tunisia/France.
Digital Decoders: 120p
Member of Digital Decoders Department team my main role was drivers and middleware related development on Linux based SetTopBoxes.
PROJECT DETAILS
Development of drivers and middleware components on E-Linux based SetTopBoxs
• Developing and debugging SW components (SAT Scanning, SSU download process, DVB tables Acquisition) on Embedded LINUX, for the multiple Digital TV actor in Europe and in the world including Bouygues, Canal +, Digiturk. Telefonica.
• Development and debugging CAS, Nagra V7 using Merlin CAK7: CAS initializing, setting up listeners for notifications, implementing ‘Requests process' related to:
- Programs descrambling process.
- Retrieving Smartcard data.
- Buying VOD products.
- Retrieving IRD messages.
• Linux Drivers development (Network, Char) and Middleware (C++, Java) on Embedded Linux decoder.
• Professional assignment in response to customer’s queries.
• Code integration role in the team.
• SetTopBox software maintenance, hardware components debugging: Demux, Frontend, Hdmi.
• Developing hardware qualification, Factory test Automation tools
• Writing specification documents.
• Preparing validation test plans.
TECHNICAL ENVIRONMENT
Methodology: Scrum, V-Model Languages: C/C++.
Platform: Embedded Linux Code analysis: Klocwork.
Emulator/Debugger: Stm-1,Stm-2 Standards: DVB, CAS.
Validation tools: Testlink
Embedded software development Engineer
From January 2010 to November 2010 : TARGET technologies
ENVIRONMENT
TARGET technologies: embedded solutions Development Company.
Embedded Systems (6 persons) –
Working as embedded system engineer
PROJECT DETAILS
Development of a fleet management solution using satellite positioning system
• Development on FreeRTOS kernel, target STM32 (ARM Cortex-M3).
• Developing Drivers for GPRS communication modules and GPS acquisition.
• JTAG Debugging using OpenOCD.
• Data acquisition server developed and deployed on FreeBSD.
Development of highway emergency communication terminal using VO-IP.
• Development on embedded Linux.
• Implementation on Atmel target Diopsis 940HF. (Arm9 and DSP integrated)
• Use of G729 codec for audio and SIP protocol for signaling.
• (Study and Version 0 code was made on my Graduation project)
TECHNICAL ENVIRONMENT
Tools:
• Svn
• Eclipse
• Linux
Protocols/Standards:
• SIP, H323, G729
Program languages:
• C / C + +
Embedded software development Engineer
From September 2009 to December 2009 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Multimedia/Dect team: 120 persons.
Member of the DECT SAGEM development team.
PROJECT DETAILS
Equipment Dect SAGEM CC220: Portage and adaptation of Sagem Dect soft to CC220.
• Implementation of user interface on CC220 equipment (arm9).
• Implementation of new features and menus on handset.
• Project under the CMMI level 3 standard.
TECHNICAL ENVIRONMENT
Tools:
• Windows
• Visual Studio 6
• CVS
• Trace32, Lauterbach
Normes:
• CMMI Lv3 Program languages:
• C / C + +
Embedded software development Engineer (consultant from Telnet)
From December 2008 to September 2009 : SAGEM Communications
ENVIRONMENT
SAGEM Communications, French company specialized in developing electronic/embedded products including DVB related products, Gateways, Printers, Energy..
Location: Tunisia/France.
TRC (Energy Metering): 80p
Development of an Automated Meter Management (AMM) solution based on OFDM PLC for our client EDF-GDF (Electricité de France-Gaz de France).
PROJECT DETAILS
• Working in collaboration with a team from MAXIM USA in order to develop an automated meter and management (AMM) solution based on OFDM PLC (power line communication) for the client EDF-GDF (electricity France-Gaz de France).
• DLMS COSEM and OBIS libraries implemented in C + +, User Interface with PYTHON and PERL scripting.
• Connecting and data transfers between “Data Concentrators” and meter via IPv6.
• Developing Kernel space Linux IPV6 compatible modem driver: Ethernet specific Driver, programmable MAC address for each modem, compatible IPv4 and IPv6 support signaling.
• Developing 6lowpan and Tty layers on Modem.
TECHNICAL ENVIRONMENT
Tools:
• Linux (Eclipse, Data Concentrator)
• Windows VStudio6 (Modem)
• Database: POSTGRESQL (Data Concentrator)
• SVN
Protocols/Standards:
• IEC 62056
• SNMP Program languages:
• C/C++, PYTHON, PERL
Embedded software development Engineer
From June 2008 to December 2008 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Electronic department.
Development of VDSL2 equipment for PATTON Electronics
PROJECT DETAILS
• Study and comparison of different technologies and platforms for the development of VDSL2 equipment for Patton Electronics.
• Choice of IKANOS development platform (?C Fusiv, MIPS).
• Linux environment, development on embedded Linux based board.
• Compiling kernel and porting network driver.
• Customizing and adapting the solution to PATTON needs.
TECHNICAL ENVIRONMENT
Tools:
• Linux
• SVN
Protocols/Standards:
• VDSL2 Program languages:
• C / C + +,
• Shell Scripting.
Graduation project
From February 2008 to June 2008 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Electronic department.
PROJECT DETAILS
Study and realization of a VOIP gateway board : Hardware and software.
• Study and realization of a VOIP gateway:
• Hard (ALTIUM Designer) : Design of PCB card with a microcontroller from Atmel ARM7-TDMI AT90 for VoIP terminals and Analog-Devices Blackfin BF533 for the gateway.
• Soft (Embedded Linux, µCLinux) using the ?C integrated DSP for encoding decoding G723, G729.
• Porting Asterisk Gateway : A software that has proven itself for routing VOIP.
• Developing session initialization and audio IP streams transfer libraries terminals side: using SIP session initialization, G723 and G729 for audio coding.
• Equipment meets the standards VOIP audio (G723, G729) and protocols (SIP, H323).
TECHNICAL ENVIRONMENT
Tools:
• Linux (Soft Development, Embedded Linux)
• Windows (Hard, Altium Designer)
Protocols/Standards:
• SIP, H323, G723, G729 Program languages:
• C / C + +
• SHELL
From October 2014 to Now :FN Herstal (Belgium)
ENVIRONMENT
FN Herstal, Armament and defense systems manufacturer,
Herstal (1200 people) – Belgium
DTS team (42 persons) –
Member of Aero Software development team, I worked on 3 project:
- Digital Armament Management System (DAMS) ,
- Head Up Display system (HUDI) .
- Digital POD.
PROJECT DETAILS
• Embedded software development (C/C++ under GNU/Linux).
• As GNU/Linux kernel modules specialist I created FPGA module driver communicating via PCIexpress managing video feed as V4L2 device, and other different communication buses (ARINC 429, 1553, TTY) and application secure access control to I/Os.
• I had the role of OS management, this task includes creating a linux system, kernel and flash filesystem with required packages and partitions, optimize boot time , meet the OS requirements, generate a toolchain with SDK, using YOCTO.
• Create OS upgrade procedure including MCU Firmware upgrade.
• Create a Cmake based development framework capable of running :builds(release, debug, profiling), documentation generation using doxygen, running unit tests and integration tests, support C.I. with Hudson, do Onbuild static analysis verifying MISRA-C Compliance , dynamic analysis and coverage report generation using LDRA testbed.
• User mode Software component development , new features/Bug fixing/ proof of concepts.
• Propose and Develop an “Optical Geometric Distortion” correction solution, the distortion is induced by the lens on the projected display for the HUD system, using a matrix of Mrad measurement of induced distortion and OpenGL libraries.
• Writing specification documents.
• Standards: MISRA -C 2012, DO178C
TECHNICAL ENVIRONMENT
Tools:
• CMAKE,
• Eclipse,
• Reviewboard,
• Hudson
• YOCTO
• SVN
• LDRA Tools Suite
• OpenOCD
Program languages:
• C/C++, PYTHON, Bash
Environment
• Embedded Linux
• PikeOS
• Stm32,
• Amd G-Series X86-64
• Windows
Software Analyst
From November 2013 to June 2014 : Philips/TPVision
ENVIRONMENT
Philips/TPVision-Innovation Site Europe, the branch of Philips developing TV/SmartTV sets.
Location: Belgium
Certification team: 20p
Member of Philips certification team, I had to design and develop a Remote test automation system to help distant teams in the world (Taipei, Bangalore) to access Philips SmartTVs as if they were in front of it so they can test and debug software versions and reproduce bugs or test cases, and I had also to develop Test Automation scripts for certification and system validation teams.
PROJECT DETAILS
• Design a system architecture that meets the technical requirements (real-time access, resources access managing, roles / privileges, scalability).
• Find and study solutions for technical obstacles met when implementing different features of the system (technology and means of implementation).
• Embedded software development on Embedded Linux based ARM platform: Manipulate all inputs/outputs of a Philips SmartTV(LOGs, Audio, Video, PCMCIA/CI+, LNBs, IR, POWER, USB, Ethernet) and execute commands from control application.
• Client software development on QT / C++: Remote control client application (real-time video, manipulate all inputs/outputs of the remote equipment), open and manage a VPN connection.
• Features been implemented on the embedded equipment and control application:
- VPN connection between ARM Boards and the client application.
- Boards use a discovery algorithm to register and connected clients are managed with roles/privileges.
- Real time AV Streaming from boards to clients.
- File transfer & USB mass-storage emulation function between board and TV .
- Drive all the switches connected to the board (DiSEqC™ and CI+).
- Sending IR Commands to the TV.
- Routing Uart connection to a TELNET console integrated in the client application.
• Implementing ROBOT Framework Test Automation libraries in Python.
• Writing specification documents.
TECHNICAL ENVIRONMENT
Tools:
• QT5
• Ride
• Git
• Robot Framework
• Mantis Program languages:
• C/C++, PYTHON
Environment
• Embedded Linux
• Arm,
• Windows
• VPN, IPSec
Embedded software development Engineer
From December 2010 to September 2013: SAGEM Communications
ENVIRONMENT
SAGEM Communications, French company specialized in developing electronic/embedded products including DVB related products, Gateways, Printers..
Location: Tunisia/France.
Digital Decoders: 120p
Member of Digital Decoders Department team my main role was drivers and middleware related development on Linux based SetTopBoxes.
PROJECT DETAILS
Development of drivers and middleware components on E-Linux based SetTopBoxs
• Developing and debugging SW components (SAT Scanning, SSU download process, DVB tables Acquisition) on Embedded LINUX, for the multiple Digital TV actor in Europe and in the world including Bouygues, Canal +, Digiturk. Telefonica.
• Development and debugging CAS, Nagra V7 using Merlin CAK7: CAS initializing, setting up listeners for notifications, implementing ‘Requests process' related to:
- Programs descrambling process.
- Retrieving Smartcard data.
- Buying VOD products.
- Retrieving IRD messages.
• Linux Drivers development (Network, Char) and Middleware (C++, Java) on Embedded Linux decoder.
• Professional assignment in response to customer’s queries.
• Code integration role in the team.
• SetTopBox software maintenance, hardware components debugging: Demux, Frontend, Hdmi.
• Developing hardware qualification, Factory test Automation tools
• Writing specification documents.
• Preparing validation test plans.
TECHNICAL ENVIRONMENT
Methodology: Scrum, V-Model Languages: C/C++.
Platform: Embedded Linux Code analysis: Klocwork.
Emulator/Debugger: Stm-1,Stm-2 Standards: DVB, CAS.
Validation tools: Testlink
Embedded software development Engineer
From January 2010 to November 2010 : TARGET technologies
ENVIRONMENT
TARGET technologies: embedded solutions Development Company.
Embedded Systems (6 persons) –
Working as embedded system engineer
PROJECT DETAILS
Development of a fleet management solution using satellite positioning system
• Development on FreeRTOS kernel, target STM32 (ARM Cortex-M3).
• Developing Drivers for GPRS communication modules and GPS acquisition.
• JTAG Debugging using OpenOCD.
• Data acquisition server developed and deployed on FreeBSD.
Development of highway emergency communication terminal using VO-IP.
• Development on embedded Linux.
• Implementation on Atmel target Diopsis 940HF. (Arm9 and DSP integrated)
• Use of G729 codec for audio and SIP protocol for signaling.
• (Study and Version 0 code was made on my Graduation project)
TECHNICAL ENVIRONMENT
Tools:
• Svn
• Eclipse
• Linux
Protocols/Standards:
• SIP, H323, G729
Program languages:
• C / C + +
Embedded software development Engineer
From September 2009 to December 2009 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Multimedia/Dect team: 120 persons.
Member of the DECT SAGEM development team.
PROJECT DETAILS
Equipment Dect SAGEM CC220: Portage and adaptation of Sagem Dect soft to CC220.
• Implementation of user interface on CC220 equipment (arm9).
• Implementation of new features and menus on handset.
• Project under the CMMI level 3 standard.
TECHNICAL ENVIRONMENT
Tools:
• Windows
• Visual Studio 6
• CVS
• Trace32, Lauterbach
Normes:
• CMMI Lv3 Program languages:
• C / C + +
Embedded software development Engineer (consultant from Telnet)
From December 2008 to September 2009 : SAGEM Communications
ENVIRONMENT
SAGEM Communications, French company specialized in developing electronic/embedded products including DVB related products, Gateways, Printers, Energy..
Location: Tunisia/France.
TRC (Energy Metering): 80p
Development of an Automated Meter Management (AMM) solution based on OFDM PLC for our client EDF-GDF (Electricité de France-Gaz de France).
PROJECT DETAILS
• Working in collaboration with a team from MAXIM USA in order to develop an automated meter and management (AMM) solution based on OFDM PLC (power line communication) for the client EDF-GDF (electricity France-Gaz de France).
• DLMS COSEM and OBIS libraries implemented in C + +, User Interface with PYTHON and PERL scripting.
• Connecting and data transfers between “Data Concentrators” and meter via IPv6.
• Developing Kernel space Linux IPV6 compatible modem driver: Ethernet specific Driver, programmable MAC address for each modem, compatible IPv4 and IPv6 support signaling.
• Developing 6lowpan and Tty layers on Modem.
TECHNICAL ENVIRONMENT
Tools:
• Linux (Eclipse, Data Concentrator)
• Windows VStudio6 (Modem)
• Database: POSTGRESQL (Data Concentrator)
• SVN
Protocols/Standards:
• IEC 62056
• SNMP Program languages:
• C/C++, PYTHON, PERL
Embedded software development Engineer
From June 2008 to December 2008 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Electronic department.
Development of VDSL2 equipment for PATTON Electronics
PROJECT DETAILS
• Study and comparison of different technologies and platforms for the development of VDSL2 equipment for Patton Electronics.
• Choice of IKANOS development platform (?C Fusiv, MIPS).
• Linux environment, development on embedded Linux based board.
• Compiling kernel and porting network driver.
• Customizing and adapting the solution to PATTON needs.
TECHNICAL ENVIRONMENT
Tools:
• Linux
• SVN
Protocols/Standards:
• VDSL2 Program languages:
• C / C + +,
• Shell Scripting.
Graduation project
From February 2008 to June 2008 : TELNET Technologies
ENVIRONMENT
TELNET Technologies, Leader on developing high-tech solutions in several areas: telecommunications, Transport, security, defense...
Location: Tunisia
Electronic department.
PROJECT DETAILS
Study and realization of a VOIP gateway board : Hardware and software.
• Study and realization of a VOIP gateway:
• Hard (ALTIUM Designer) : Design of PCB card with a microcontroller from Atmel ARM7-TDMI AT90 for VoIP terminals and Analog-Devices Blackfin BF533 for the gateway.
• Soft (Embedded Linux, µCLinux) using the ?C integrated DSP for encoding decoding G723, G729.
• Porting Asterisk Gateway : A software that has proven itself for routing VOIP.
• Developing session initialization and audio IP streams transfer libraries terminals side: using SIP session initialization, G723 and G729 for audio coding.
• Equipment meets the standards VOIP audio (G723, G729) and protocols (SIP, H323).
TECHNICAL ENVIRONMENT
Tools:
• Linux (Soft Development, Embedded Linux)
• Windows (Hard, Altium Designer)
Protocols/Standards:
• SIP, H323, G723, G729 Program languages:
• C / C + +
• SHELL
Local Availability
Only available in these countries:
Belgium
France
Paris
Belgium
Brussels
Paris
Belgium
Brussels
Other
2005-2008: Engineering Degree in Telecommunications
2003-2005: Diploma of General University Studies (Mathematics-Physics)
TRAININGS
? Cisco Certification.
? LDRA software Analysis
2003-2005: Diploma of General University Studies (Mathematics-Physics)
TRAININGS
? Cisco Certification.
? LDRA software Analysis