Real Time Operating Systems : VxWorks, Precise/MQX, WINDOWS CE, familiar with pSoS, QNX and Linux.
Other Operating Systems : FreeBSD, UNIX ( hp9000 and Solaris ), MS-DOS, WINDOWS 95, WINDOWS NT.
Technical Skills :
- TCP/IP protocol suite: DNS, DHCP, HTTP, FTP, RIPv2, Mobile IP, IPsec, NAT, …
- Programming languages: C, C++, Java (Servlets, JSP, Hibernate, Struts, JDBC, …)
- HTML, XML, SOAP, PHP/MySQL
- Real time software development
- Multithreaded design
- OOP and OOD
- Software Development Lifecycle
- Strong debugging and trouble-shooting skills
- Analysis and design of advanced data structures and algorithms
- Have a very good knowledge of information security standards such as the
BS 7799-2:2002 and the ISO/IEC 17799
- Encryption protocols (AES, RSA, DES, …)
- TR69, DLNA, USB
- CVS, SVN, CPS, BugZilla, SourceSafe, …
- Telemetry, SCADA
09/2008- Present : Assistant Professor of Computer Science, University of Manouba
Tunisia
07/2005 – 09/2008 : Senior Software Project Manager/Architect
Sagem Software and Technologies (SST), Megrine – Tunisia
· Started the Gateway activity at SST
· Hired the members of my team after performing job interviews to tens of applicants.
· Provided training and technical support to my team members.
· Wrote weekly reports about the activities of my team and about the state of progress of each project under development.
· Participated with my colleagues in France in the definition of the specifications of the following projects: TR69, TR98, USB Printer Server, USB Driver porting from Linux 2.4.18 to Linux 2.6.12, DLNA IPTV
· Wrote the planning of each one of the above projects and performed their follow up to make sure that the deadlines are respected.
· Wrote the architecture and design documents of the above projects and explained them to my team members.
· Coded the critical parts of the modules ( C, Linux )
· Performed code reviews to make sure about the quality of the software and its conformance to the specifications.
· Wrote validation test plans as well as user guides and integration documents.
· Wrote the code of some in house testing tools ( using java )
12/2004 – 07/2005 : Consultant, N.T.S.D Tunis - Tunisia
08/2001 – 08/2004 : Embedded Software Engineer, TCP/IP Implementation
Specialist, Data Radio Inc. Montreal, Quebec, Canada.
· Participated in defining and writing the product (Wireless Gateway supporting IP mobility ) requirements. This product has a version that is used in telemetry and SCADA systems and another version that supports full mobility.
· Tested and evaluated some off the shelf hardware boards and recommended the one to be used in the product.
· Participated in the design of the overall software architecture and in writing the analysis and design documents.
· Coded and tested some of the software modules ( C, MPC860, MQX, BDM/JTAG on chip debugger)
· Prepared the demos for the beta version of the product.
· Wrote the test plan for the validation team.
· Wrote the user manual of the product.
· Performed code reviews for some other members of the software team.
· Provided support for clients and for Field Engineers.
· Provided TCP/IP training for the members of the test and validation team.
· Wrote the code of some in house testing tools ( using java )
06/2000 – 06/2001: Senior Software Design Engineer, BroadTel Canada, Saint
Laurent, Quebec, Canada.
· Developed a Media Access Control (MAC) protocol based on DOCSIS and IEEE 802.16 for BroadTel’s IP based high speed Broadband Wireless Access Product.
· Designed the MAC architecture for the BasePoint ( or Wireless Access Termination System ) based on the developed MAC.
· Studied a Point to multipoint cable modem reference code design that was written for pSoS and QNX environments and ported some of the code into VxWorks.
· Implemented the forwarding/bridging modules at the BasePoint side and the AccessPoint ( or Wireless Modem ) side: the code was developed to run in VxWorks environment.
· Implemented some of the data structures ( as well as the functions that manipulate them ) to link the software modules ( bridging, ranging, registration, MAP, …) together.
9/1999 – 5/2000 : Assistant Professor of Computer Science, Concordia University
Montreal, Quebec .
· Taught the following courses :
System Hardware, Operating Systems, Computer Architecture.
7/1998 - 8/1999 : Software Developer, M3iSystems Inc Longueuil - Montreal
Job description:
· Developed and maintained real time software programs that are used in wireless communications ( Radio Modem Drivers ).
· Participated in the coding and the debugging of the M3iSystems implementation of WINSOCK DLL: it has the same API and functionalities as the WINSOCK DLL implemented by Microsoft but it was optimized and adapted for low bandwidth ( <= 9600 bps ) wireless channels.
· Ported WINDOWS 95 and WINDOWS NT software to a WINDOWS CE environment.
· Debugged and enhanced the code written by former employees of the company.
· Visited the sites of the clients to install and test software.
· Helped clients in implementing security solutions to their networks.
1994 - 1997 : Assistant Professor of Computer science, University of Tunis III
Tunis - Tunisia
7/1991 - 3/1993 : Programmer, University Testing Service
State College, PA, USA.
JUNE 1988
| : ENGINEERING DEGREE Ecole Centrale de Paris, Paris – France ( Electronics option) |
MAY 1992 | : MASTER OF SCIENCE in Computer Engineering The Pennsylvania State University, USA.
|
DECEMBER 1993
| : Phd in Computer Engineering The Pennsylvania State University, USA.
|