Noureddine - Développeur C ANSI
Ref : 100113O002-
91300 MASSY
-
Développeur, Ingénieur système (46 ans)
-
Freelance
From 12th March 2018 to present
Senior Software Development Tools Support, Build and Test Engine, Development in Sepura UK.
Manage Continuous integration/delivery/deployment system for Tetra telecommunication product
Use TeamCity as CI/CD tool as admin
Configure Team City with new projects and build steps
Perforce admin
Write scripts (bash, python,..) to manage build system environment
Languages used (C,C++,C#,Java) to write plugins within TeamCity
JIRA,AGILE,Scrum
From 4th September 2017 to 31st December 2017
Senior development engineer at Waters: contract
Migrating legacy code from VxWorks to Linux embedded
C/C++/ C# with visual studio, eclipse, debug in VS
Build server code in VS and install/uninstall executable services in Windows
Build and execute client code in Linux environment with cross compilation for embedded Linux target
Client/Server implementation to update target rpm files
Write scripts to install/uninstall/upgrade rpms packages
Development of new functionality like a TAR utility for extracting tar files.
Implement gz utility to decompress GZ files.
Create CmkeList files for build system in Linux and windows
Embedded Linux and windows
ARM chipset
From 3rd April 2017 to 4th August 2017
Senior software engineer at SKY: contract
Working inside software team to deliver new generation of software for new router (CPE) generation project
Responsible for delivering and customizing bootloader for SKY router
Responsible to port legacy host tool from old SDK to a new SDK with new chipset and flash
Flash mapping for NAND flash (previous project uses NOR flash)
Adapt GNU Makefiles to add image signature for signed image process
Add new partitioning proposal (UI assets partition)
Make sure TFTP, HTTP, recovery mode are ported and working
Embedded Linux (RTOS)
Setup Ubuntu machine as working environment
Working with GIT (branch creation, commit,..)
Defining and runing unit tests to validate feature related to bootloader
Using LauterBach to load CFE bootloader into RAM to debrick router board
Add Macronix flash settings to BRCM SDK to replace Micron flash used by BRCM
Update board params setting to adapt GPIOs from Ref board to SKY board as part of board bring up and also add a new voice board ID to voice board selection
Working with C language and some scripts in Perl.
Lauterbach debugger
Senior Field Application Engineer at MStar Semiconductors: Contract
From 1st July 2016 to 3rd March 2017
Senior Field Application Engineer at MStar Semiconductors: Contract
Providing customers technical support for companies using MStar STB chipsets, this is done on-site and by remote.
Target systems was embedded linux and eCos
I worked with remote connection to HQ servers (in Taiwan) and also locally using Fedora VM
Development languages: C++/C
DVB standards: DVB-S2- DVB-T and DVB-C
HDMI/HDCP
MIPS, ARM architectures
I worked with either digital and analog device as outputs
I used GIT and Gerrit for code review
I used mantis to log issues and update progress on working issues
I received training in HQ in Taiwan on :
->Android: Architecture, Bootup sequence,Android image build
->Nagra boot loader: bootstrap flow, bootloader flow and NOCS TS tests
-> CDI architecture, NDS FOSH tests
Achievements:
->I implemented IR remote control RC 6 protocol on IR Linux kernel driver for both modes 0 and 6A.
->I implemented IR remote control RC 6 protocol in PM (Power Management) module
->I implemented Front Panel wake up support on PM.
->I Fixed a crash issue when running a user space command and fix was implemented in both user and kernel space
->I Fixed timeout issue when running application command: Task was blocked on reading data from an empty queue and semaphore not released
->I did a demo to Sky customer to demonstrate the MStar capabilities on using WIFI interface to play a remote AV stream from laptop
->I fixed a repeat issue on IR kernel driver for both NEC and RC6 protocols
->I fixed a fast press issue on IR kernel driver for NEC and RC6 protocols
->I helped customizing supernova application for one UK customer (ARRIS) and deliver this with support on playing the demo
->On site customer support for ARRIS for local issues faced in using MStar tools
-> Help porting HAL layer of customer Middleware to MStar drivers API
From 15th January 2016 to 11th May 2016
Senior development Engineer at Pixsan in Shipley.
Integration and bug fixing in UTK software middleware which is a turnkey portable solution for STB.
Implementation of Audio E-AC3/HE-ACC support on UTKD middleware and utk demux gstreamer side for gstreamer version 1.4.5 and 0.10.36
Platforms MStar and PC ubuntu
Implementation of freeview player Wifi extension module in application level.
Communication with Qt modules and Mstreamer/Gstreamer
C/C++ development languages
Linux and windows environment.
Real time operating systems(RTOS), Embedded Linux, DVB-T DVB-T2
Agile methodology, Git, Gerrit, vagrant
Scrum meetings
From 27th March 2014 to 15th November 2015
Senior development Engineer at Samsung Electronics Research Institute in Staines.
Working as part of the mobile R&D and Security Team.
Developing new driver features in Linux environment, add support to some encryption algorithms using SW PolarSSl library.
Developing and modifying SW in both kernel and user levels, this work involves interaction between Real Zone and TrustZone. (REE & secure processing TEE)
Running QA auto test to check regressions
Bugs fixing in NW (Normal Word) and SW (Secure World)
Writing unit tests for testing driver’s API’s,
Working with Perforce, redmine tools, review board
Android environment
Embedded Linux
C Language and python
Klockwork tool
From 26th November 2012 to 26th March 2014
Senior development Engineer at STMicroelectronics Bristol.
Working as part of the DEMUX Security Team in STMicroelectronics center in Bristol.
Working in kernel and device driver’s level.
Add new APIs to STTKD driver (FW control function for SC device ….)
Add unit tests for STTKD driver
Add new API to STAPLER (OS abstraction layer) driver (workaround for memcpy issue in new toolset).
Add ARM support for STTKD, STAPLER, STFUSE drivers.
Make the build system works for Linux OS in some platforms
Add new platforms to build and release infrastructure scripts to be able to support both SDK1 (stapi) platforms and SDK2 platforms (non stapi).
Release new versions of STTKD, STAPLER, STFUSE drivers for NSK (NDS) & NOCS3(Nagra) projects.
Run sanity tests before driver’s releases.
Working with SVN and Clearcase (UCM) and git.
Bug fixing in STTKD, STAPLER drivers in embedded Linux targets.
Working with different types of STB platforms and chipsets (H416,cannes, H415, 7108, H205).
Working in Linux environment.
The platforms support both embedded Linux and OS21.
Using C language and python.
Writing and modifying makefiles specially when adding ARM support
Fixing crash issues in IPRC mode for single CPU for 7108.
Unit tests and sanity tests.
MIPS, ARM architectures
From 6th September 2011 to 23rd November 2012
Senior Integration Engineer at OpenTV Netherland (Nagra kudelski group).
Working inside System Integration team of OpenTV on UPC offices in Amsterdam
Tracking and fixing bugs in OpenTV middleware (NP & CORE) on 9 different platforms (Thomson, Pace, Cisco, Philips) with chipsets from (ST & Broadcom)
Unlocking production boards for debug (using STB keys provided by Nagra) (The first one to do that in OpenTV).
Nagra Conditional Access Certification tests.
Unit tests
Experience in Real Time applications and Operating Systems
C programming language in an embedded environment
RTOS environment (OS20,OS21) & Linux embedded.
Bugs tracking tools used: JIRA and bugzilla.
DVB-C
Tools used for recording streams and streaming (Dektec, DiviCatch).
Working with internal and external teams (Beijin, Sandiago, Paris, London,..)
From 18th Mai 2009 to 21st April 2011.
Senior Integration Engineer at NDS France (Paris).
Integration from Middleware (NDS MediaHighWay) to application side and development of some parts of code for KDG customer, the platform used is Sagem one which is based on ST7105 chipset, and other platforms of tests based on following chipsets (ST7111 and BCM7401).
Bugs Tracking, Code optimization, Boot time optimization.
Nagra Conditional Access Certification tests for Midlleware.
Robustness tests.
C, java and Linux embedded environment.
CVS and bugzilla.
TVTV, DVB-C
From 23rd October 2008 to 24th April 2009
Senior Application Engineer at Mirifice ltd ( BATH ).
Migration of Mirifice STB monitoring application from an old Amino board A110 based on Linux kernel 2.4 to a new Amino board based on Linux kernel 2.6 and STB7100 chip set for high definition.
Development of part of code in user space and kernel space. (read/write on device, workqueue,..) Compilation and load of drivers into Amino board.
Installation of Linux Ubuntu server and setup of DHCP server and Multicast server to use for Mirifice streams internal broadcast.
From 21st July 2008 to 21st October 2008
3-months contract
Senior Application Engineer Consultant at Latens System Ltd. (Belfast)
Design scheduler component for PVR application using JUDE tool for UML design.
Develop scheduler code using C/C++, Eclipse.
Develop settings feature for PVR application using C/C++
Development done on Linux environment with Eclipse tool, CVS.
Debug the scheduler and settings code and tests for different set top box platforms.
From 10th October 2007 to 10th April 2008
6-months Contract
Senior Application Engineer Consultant at SONY United Kingdom Ltd. (Basingstoke)
Working as Software engineer for a new SONY IDTV project and acting in the application layer.
Develop and bug-fix embedded C/C++ for DTV.
Devised Bug fixes and implemented various Change requests in various software modules of the TV GUI application such as: XMB, tuner manager, favourite list,etc
Worked closely with development teams in Spain, and Japan.
DDTS, Clearcase, Green Hills.
From 1st August 2002 to 9th October 2007
Permanent: Senior Application Engineer (Embedded systems) : STMicroelectronics Company. (Morocco)
Project leader and Expert in the Set top box advanced solutions in the consumer competence center
Key Skills: C/C++,Assembler,Perl,RTOS,STB,MPEG2,MPEG4,DTV,DVB-S,DVB-T,DVB-C,IPTV.
Software development:
Development of a GUI called (STGUI) for terrestrial and satellite Set Top Boxes (DVB-S, DVB-T) and the promotion of the product. :
Development of all the graphic part (Application, graphical libraries and basic objects).
Development of the GUI state machine as well as the mechanism of messages exchange.
DVB Engine code development used to extract a various data tables included on the incoming TS stream and also the code managing the channels scan for front end device.
Development of some tools enabling font generation, bitmaps conversion, JPEG software decode…
Implementation of tests for Graphic application STGUI.
Test of all transitions described in the state machine.
Random Test.
Quick zapping Test (Robustness Test).
Development and debugging for real time applications revolving on ST embedded systems.
Development of real times applications on digital TV (DVB-S, DVB-T) with RTOS systems (OS20,
OS21).
Dual decode application development (DVR + Live) for ST STB circuit.
Live Satellite/Terrestrial TS stream Recorded on the HDD.
The live stream decoding (Audio/Video).
Playback of the recorded TS stream on HDD using the PIP mode.
Dual TV application development using 2 separate Set Top Boxes.
The incoming live TS stream was recorded on the HDD under 2 files (Data file containing the TS stream and a second file contains the time information about the recorded TS packets).
The live stream is decoded on the 1st TV.
Playback of the recorded file on a second TV using a temporary buffer in which the bit rate is modified by the injection of stuffing packets to be able to recover the original bit rate.
The RF modulation board DB499 is used to carry the signal from the basic band to RF band and the new stream is sent to a 2nd TV.
Development of software application to enable the RS232 communication between 2 separated
STB.
LOW POWER mode implementation for an ST customer to use it in his STB low cost platform.
Consumption reduced up to 50%.
Graphical user interface developed for the Integrated Digital TV project (IDTV).
Embedded Linux training in Bristol for 15 days (user space and kernel space
development).
STB project development above the STGUI stack.
Customers Technical support :
Help and support STMicroelectronics customers which are using ST Set Top Box (STB) circuits to
produce their own boards either by debugging or software development.
1st line customer support for some companies like(Thomson multimedia, Philips, Sagem…) to
validate some important STB circuits capabilities like Audio/video decoding for various
standards H264, MPEG2/1, Still picture, Flash data saving and reboot,…
The support was done using ST evaluation boards and also Customers boards.
Several Customers visits in their own sites in European countries (Paris, Rennes, Bristol, Milan
& Grenoble) to give them a near technical support and also some others ST sites visit under
training mission.
Technical support for an Italian customer (MIVAR) which wants to use our GUI application with his
IDTV board solution.
Commercial role :
In charge for the STGUI product promotion as well as inside STMicroelectronics and for customers.
Build the STGUI Business conditions to help marketing stuff how to sale this product from
technical view.
Preparation of presentations showing the architecture of stack STGUI, his performances and his
added values compared to other competing products.
Preparation of several demonstrations using STGUI to show the capabilities of certain ST products
to the Customers presents in some important shows such as CES show in
USA and ANGA in Germany.
Development, Integration, Validation & Verification Skills.
knowledge of quality and development processes
Depth knowledge of real time programming.
Unit test, system integration & tests.
C/C++ programming.
Knowledge on network protocols: RTP, RTSP, TCP, UDP.
Agile software development.
Clear case, SVN.
Html, JavaScript.
Training:
From 1st March 2002 to 8th Juin2002
(3 months)
Project of End of studies:
At: National office for Telecommunication regulation – Rabat/ Morocco.
Subject: Suggest a way to do a GSM communications encryption between two terminals.
Propose a hardware and software solution to encrypt the GSM communications between a transmitter mobile and receiver mobile.
DES algorithm of encryption was programmed using the assembly language.
The Program test was done using a microcontroller PIC from Microchip.
From 1st July 2001 to 31st July 2001
(1 month)
At: Moroccan broadcasting television – Rabat/ Morocco
Technical study of a terrestrial modulation called COFDM.
Canal encoding and errors correction encoding.
COFDM implementation using MATLAB software program.
From 1st July 2000 to 31st July 2000
(1 month)
At: Popular bank – Ouarzazate/ Morocco.
Study of a various divisions composing the popular bank with a final report realization.
Graduate: Engineer in electronics and telecommunications.
School: Mohammadia School of Engineers. Rabat
Mohammadia School of Engineers (3 years)
June 2002: Engineer graduate in electronics and telecommunications.
June 2001: Second year engineering studies.
June 2000: First year engineering studies.
Semelalia University of Science in Marrakech/ Morocco
June 1999: 3rd year of physics studies.
June 1998: CEUS graduate in Physics and chemical specialty.
June 1997: First year physics and chemical studies.
AL WAHDA secondary school in Taounate/ Morocco
June 1996: Mathematics European Baccalaureate.
LANGUAGES & COMPUTER KNOWLEDGE
ENGLISH
Good
FRENSH
Excellent
ARABIC
Mother tongue
COMPUTER KNOWLEDGE: SOFTWARE & LANGUAGES
Good level in programming: C, C++ and Assembly language.
Real Time Operating systems RTOS (OS20, OS21).
Debugging tools.
UNIX, Redhat, Windows 9x/2000/XP.
Embedded Linux programming training.
Word, Excel, PowerPoint.
HARDWARE
Processors: STx, 8085,8086
Peripherals: UART, USB,FLASH memory, RAM, I2C, bus CAN, bus JTAG
Validation materials: logical analyzer, oscilloscope.
NETWORK
TCP/IP, OSI, LAN, VLAN, Ethernet.
QUALITIES & OTHERS
No problem for mobility inside the same country or international.
Autonomy
Team spirit and easy adaptation with people and projects.
Internet, music, travels…