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
Senior development engineer at Waters: contract
septembre 2017 - décembre 2017
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
Senior software engineer at SKY: contract
avril 2017 - août 2017
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:
juillet 2016 - mars 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
Senior development Engineer at Pixsan in Shipley.
janvier 2016 - mai 2016
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
Senior development Engineer at Samsung Electronics Research Institute in Staines.
mars 2014 - octobre 2015
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
Senior development Engineer at STMicroelectronics Bristol.
novembre 2012 - mars 2014
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
Senior Integration Engineer
at OpenTV Netherland (Nagra kudelski group).
septembre 2011 - novembre 2012
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,..)
Senior Integration Engineer
at NDS France (Paris).
mai 2009 - avril 2011
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
Senior Application Engineer at Mirifice ltd ( BATH ).
octobre 2008 - avril 2009
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.
Études et formations
Engineer graduate in electronics and telecommunications.
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 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.
No problem for mobility inside the same country or international.
Autonomy
Team spirit and easy adaptation with people and projects.
Internet, music, travels…