Mohammed Salah Abd El-Aziz
Software Engineer
Contact
Tel: +20 11 5555 1250
e-mail: m.sala7@gmail.com
https://eg.linkedin.com/in/mohammedsalah81
Career Objective
Seeking a position and work related where a smart creative mind, proven skills, hardworking and superior
work ethics will add value.
Profession Qualifications
Software development
 C, C++, Visual C++ 6, Objective C, C# and Java development.
 Embedded Linux Programming
 POSIX threads, Sockets programming and RTOS concepts.
 iPhone development using Objective C, Samsung bada O.S. development using C++ and Android
 SDL (specification and description language) and SDL integration with C/C++
 MySQL, SQL server and SQLite
 NodeJS, Java Script, mocha
General
 Strong ability to work with Standard Processes within CMMI model or Agile.
 S/W Architecture, design, implementation and unit testing.
 Meta programming and automatic code generation.
 OOP, Design patterns and UML modeling.
 Regular Expressions.
 Very familiar with Linux as development environment
Software testing.
 Testing levels, techniques, process, types, etc.
 Unit, Stress and Integration testing. Black box and white box testing techniques.
 Test cases design, implementation and execution.
Current fields of interest
 Automotive
 Embedded Linux
 Embedded systems
 Code/Test cases generation
Work Experience
IBM
Solution Developer
April 2013 till now
 C/C++, and Java under Linux/Windows Development for various projects
 Some internal tools using Java/C++ to generate code and test cases.
 Client: IEE (Automotive)
o Application design using IBM Rational Rhapsody
o Application Development using Eclipse CDT and IAR embedded workbench.
o Adding ASIC 1 functionality, adding LIN messages (tested using Vector CANoe).
 Client: CBA (Banking)
o Back-end server design and development using NodeJS
o Back-end unit testing using mocha (testcases design, implementation, and execution).
o Created tools for automatic code/test cases generation.
 Client: CDM
o Troubleshooting, fixing issues and implementing new features for CDM Applications
o SQL server and Visual C#
 Client: Openet (Tactical Team, Development Engineer)
o Developing FusionWorks plugins/add-ons using C++ and Java under Linux environment
 SOAP
 Diameter
 OAM (Swing and Web interface)
 XML / ASN parsers
o Compiling and building plugins/add-ons on Linux environment
o Create automated scripts for plugin building, Environment installation, and configuration.
o Developing and executing test cases for Unit Testing.
o Follow plugin/add-on release process.
 Client: MetLife Alico, Japan (Testing Engineer)
o Design, Develop and execute test cases
o Test cases automation
 Client: Melexis
o Data driven testing of angular sensor
o Inserted test vectors and used the MLX16 simulator to observe outputs.
 Client: Honda, Japan (Testing Engineer)
o Design, Develop and execute test cases
o Test cases automation and documentation
Orange Labs Cairo (R&D)
Senior Embedded Engineer April 2012 till April 2013
 C and C++ development under Ubuntu Linux development environment.
 Build modules for Embedded Linux on OpenBTS board.
 Installing Embedded Linux, OpenBTS, Asterisk and extension modules to Raspberry Pi
 Encoding/Decoding GSM AT commands and SIP protocol messages.
 Sockets, Threads, Boost C++ library, GSM AT commands and SIP protocol
 System Requirements, Architecture, Design, Implementation, Unit testing and documentation.
 Adding and deploying modules to OpenBTS project (Open Source)
 Outgoing External SMS module.
o Listen for and capture SIP requests from OpenBTS Queue and translate them to sequence of
GSM gateway AT commands (will be sent to GSM gateway using Telnet protocol) to send SMS
to GSM network.
 Incoming External SMS module.
o Fetching SMS messages from GSM gateway storage (using Telnet) and translate them to SIP
messages that will be forwarded to OpenBTS SMS module (on SIP port).
 USSD module that will use GSM gateway AT commands to send USSD codes to GSM network and
handle the network response.
 Developing Billing Solution by creating Asterisk dial plan and several billing scripts (CGI & Shell
scripts).
 Web GUI (PHP and sqlite3)
 OpenBTS is a UNIX application that uses a software radio to present a GSM Um interface to handsets
and uses a SIP soft switch or PBX to connect calls. (You might even say that OpenBTS is a simplified
form of IMS that works with 2G feature-phone handsets).
 Some internal tools using Java
CIT Global – MobiDiv
Senior Software Engineer April 2010 to April 2012
 System Requirements, Architecture and design.
 iPhone and Samsung Bada O.S. development using Objective C and C++
 android development using Eclipse and Java
 MTK development using C/C++
 Several in-house tools design and implementation (Java/C#)
ASGATech
Senior Software Engineer January 2010 to April 2010
 System Requirements, Architecture and design.
 Conducting C/C++ interviews and creating IOS
development team.
QuickTel®
Java Developer February, 2007 to January 2010
 System architecture, design, Implementation (J2SE, MySQL) and unit testing for various projects
(Management Applications for Communication Equipment. SDH, IPDSLAM, Access Network, …);
 Developing code generation and automation tools;
 Measurements coordinator (MC) according to CMMI level 2 (MA process).
 QA representative in various projects.
 CMMI Level 2 Pre-appraisal and appraisal attendance as MC and QA representative.
QuickTel®
Software Testing Engineer October,2006 to February, 2007
 Unit, Integration, load and stress testing for various projects;
 Developing Load and Stress testing tools, Simulators, test-case generators.
QuickTel®
Embedded S/W Engineer April 2005 to October, 2006
 Project IP DSLAM
o Implement IP DSLAM firmware using C/C++ under Linux
o Development and execution of unit test cases.
 Project C5-Switch
o Unit Testing C5-Switch embedded system.
o Developing test benches (Sockets, POSIX Threads) and test cases generation tool
o C/C++ under Redhat Linux.
o Re-design and implement one of C5Switch modules using SDL
o SDL (specification and description language) integration with C/C++ code
OnlineHorizons (web hosting)
Software Developer December 2004 to April, 2005
 Developing internal tools using VC++ 6 and ASP classic
Technical Tools
Development IDEs  IBM Rational Rhapsody Developer
 Rational Software Architect
 IBM Rational Tau SDL suite
 Keil uVision
 Eclipse
 IntelliJ IDEA
 XCode 4
 Android Studio
 SlickEdit and KDevelop
 Microsoft visual studio
Version Control SVN, CVS, MS VSS and GIT.
Bug Tracking JIRA, Mantis, Bugzilla and Remedy
Design and Modeling Rational Software Architect(RSA)
IBM Rational Rhapsody Developer
Testing CPPUnit, JUnit, NUnit, JMeter, and Mocha
Training Courses
Embedded Systems
Android
Embedded Systems - Shape the World
Programming Mobile Applications for Android Handheld Systems: Part 1
(Coursera.org)
Algorithms Algorithms: Design and Analysis, Part 1 (Coursera.org)
Java  IBM JA15: Java Programming Workshop
 IBM WF311: Servlet and JSP Development with IBM Rational Application
Developer V6
 Advanced java topics (RMI, CORBA, …)
Testing Structured methods for Software Testing (QAI).
SDL SDL (Specification and Description Language) Course.
Certification
 Professional Certification Program from IBM - Object Oriented Analysis and Design - Part 1 (Analysis)
 Certificate of participation from the IEEE's Computer Society in the CSIDC (Computer Society
International Design Competition) for the graduation project.
Education
Education B.Sc. in Computer Engineering (2004) - Computer Engineering Department
Faculty of Engineering, Cairo University.
Graduation
Project
EBG (Electronic Blind's Guide): helps the blind people to navigate using a laptop that navigates
the surroundings. Using path finding and motion planning techniques to calculate the optimal
path. The device uses a camera to discover the way. And notify the user using voice messages.
VC++ 6.0, Intel OpenCV Library and Microsoft Speech SDK (SAPI 5.1)
Projects
(samples)
O.S. Simulation 1 Simulating an operating system scheduler using
different scheduling techniques
C#
O.S. Simulation 2 Simulating a distributed Operating System
Scheduler
C++
Linux Tasks Linux Tasks Examples C
BMP to JPEG Encoder
Chip
Jpeg Encoder Chip using VHDL VHDL
PDP11 Microprocessor Design a PDP11 like microprocessor VHDL
Non-technical Skills
 Excellent problem solving and learning abilities.
 Excellent communications skills and Ability to work under pressure.
 Self-motivated.
Personal Information
Nationality Egyptian
Date of birth 11 Dec 1981
Marital Status Married
Military Status Exempted
Address Cairo, El-Obour city,

MSalah_20161010

  • 1.
    Mohammed Salah AbdEl-Aziz Software Engineer Contact Tel: +20 11 5555 1250 e-mail: m.sala7@gmail.com https://eg.linkedin.com/in/mohammedsalah81 Career Objective Seeking a position and work related where a smart creative mind, proven skills, hardworking and superior work ethics will add value. Profession Qualifications Software development  C, C++, Visual C++ 6, Objective C, C# and Java development.  Embedded Linux Programming  POSIX threads, Sockets programming and RTOS concepts.  iPhone development using Objective C, Samsung bada O.S. development using C++ and Android  SDL (specification and description language) and SDL integration with C/C++  MySQL, SQL server and SQLite  NodeJS, Java Script, mocha General  Strong ability to work with Standard Processes within CMMI model or Agile.  S/W Architecture, design, implementation and unit testing.  Meta programming and automatic code generation.  OOP, Design patterns and UML modeling.  Regular Expressions.  Very familiar with Linux as development environment Software testing.  Testing levels, techniques, process, types, etc.  Unit, Stress and Integration testing. Black box and white box testing techniques.  Test cases design, implementation and execution. Current fields of interest  Automotive  Embedded Linux  Embedded systems  Code/Test cases generation Work Experience IBM Solution Developer April 2013 till now  C/C++, and Java under Linux/Windows Development for various projects  Some internal tools using Java/C++ to generate code and test cases.  Client: IEE (Automotive) o Application design using IBM Rational Rhapsody o Application Development using Eclipse CDT and IAR embedded workbench. o Adding ASIC 1 functionality, adding LIN messages (tested using Vector CANoe).  Client: CBA (Banking) o Back-end server design and development using NodeJS o Back-end unit testing using mocha (testcases design, implementation, and execution). o Created tools for automatic code/test cases generation.  Client: CDM o Troubleshooting, fixing issues and implementing new features for CDM Applications o SQL server and Visual C#  Client: Openet (Tactical Team, Development Engineer) o Developing FusionWorks plugins/add-ons using C++ and Java under Linux environment  SOAP  Diameter  OAM (Swing and Web interface)
  • 2.
     XML /ASN parsers o Compiling and building plugins/add-ons on Linux environment o Create automated scripts for plugin building, Environment installation, and configuration. o Developing and executing test cases for Unit Testing. o Follow plugin/add-on release process.  Client: MetLife Alico, Japan (Testing Engineer) o Design, Develop and execute test cases o Test cases automation  Client: Melexis o Data driven testing of angular sensor o Inserted test vectors and used the MLX16 simulator to observe outputs.  Client: Honda, Japan (Testing Engineer) o Design, Develop and execute test cases o Test cases automation and documentation Orange Labs Cairo (R&D) Senior Embedded Engineer April 2012 till April 2013  C and C++ development under Ubuntu Linux development environment.  Build modules for Embedded Linux on OpenBTS board.  Installing Embedded Linux, OpenBTS, Asterisk and extension modules to Raspberry Pi  Encoding/Decoding GSM AT commands and SIP protocol messages.  Sockets, Threads, Boost C++ library, GSM AT commands and SIP protocol  System Requirements, Architecture, Design, Implementation, Unit testing and documentation.  Adding and deploying modules to OpenBTS project (Open Source)  Outgoing External SMS module. o Listen for and capture SIP requests from OpenBTS Queue and translate them to sequence of GSM gateway AT commands (will be sent to GSM gateway using Telnet protocol) to send SMS to GSM network.  Incoming External SMS module. o Fetching SMS messages from GSM gateway storage (using Telnet) and translate them to SIP messages that will be forwarded to OpenBTS SMS module (on SIP port).  USSD module that will use GSM gateway AT commands to send USSD codes to GSM network and handle the network response.  Developing Billing Solution by creating Asterisk dial plan and several billing scripts (CGI & Shell scripts).  Web GUI (PHP and sqlite3)  OpenBTS is a UNIX application that uses a software radio to present a GSM Um interface to handsets and uses a SIP soft switch or PBX to connect calls. (You might even say that OpenBTS is a simplified form of IMS that works with 2G feature-phone handsets).  Some internal tools using Java CIT Global – MobiDiv Senior Software Engineer April 2010 to April 2012  System Requirements, Architecture and design.  iPhone and Samsung Bada O.S. development using Objective C and C++  android development using Eclipse and Java  MTK development using C/C++  Several in-house tools design and implementation (Java/C#) ASGATech Senior Software Engineer January 2010 to April 2010  System Requirements, Architecture and design.  Conducting C/C++ interviews and creating IOS development team. QuickTel® Java Developer February, 2007 to January 2010  System architecture, design, Implementation (J2SE, MySQL) and unit testing for various projects (Management Applications for Communication Equipment. SDH, IPDSLAM, Access Network, …);  Developing code generation and automation tools;  Measurements coordinator (MC) according to CMMI level 2 (MA process).  QA representative in various projects.
  • 3.
     CMMI Level2 Pre-appraisal and appraisal attendance as MC and QA representative. QuickTel® Software Testing Engineer October,2006 to February, 2007  Unit, Integration, load and stress testing for various projects;  Developing Load and Stress testing tools, Simulators, test-case generators. QuickTel® Embedded S/W Engineer April 2005 to October, 2006  Project IP DSLAM o Implement IP DSLAM firmware using C/C++ under Linux o Development and execution of unit test cases.  Project C5-Switch o Unit Testing C5-Switch embedded system. o Developing test benches (Sockets, POSIX Threads) and test cases generation tool o C/C++ under Redhat Linux. o Re-design and implement one of C5Switch modules using SDL o SDL (specification and description language) integration with C/C++ code OnlineHorizons (web hosting) Software Developer December 2004 to April, 2005  Developing internal tools using VC++ 6 and ASP classic Technical Tools Development IDEs  IBM Rational Rhapsody Developer  Rational Software Architect  IBM Rational Tau SDL suite  Keil uVision  Eclipse  IntelliJ IDEA  XCode 4  Android Studio  SlickEdit and KDevelop  Microsoft visual studio Version Control SVN, CVS, MS VSS and GIT. Bug Tracking JIRA, Mantis, Bugzilla and Remedy Design and Modeling Rational Software Architect(RSA) IBM Rational Rhapsody Developer Testing CPPUnit, JUnit, NUnit, JMeter, and Mocha Training Courses Embedded Systems Android Embedded Systems - Shape the World Programming Mobile Applications for Android Handheld Systems: Part 1 (Coursera.org) Algorithms Algorithms: Design and Analysis, Part 1 (Coursera.org) Java  IBM JA15: Java Programming Workshop  IBM WF311: Servlet and JSP Development with IBM Rational Application Developer V6  Advanced java topics (RMI, CORBA, …) Testing Structured methods for Software Testing (QAI). SDL SDL (Specification and Description Language) Course. Certification  Professional Certification Program from IBM - Object Oriented Analysis and Design - Part 1 (Analysis)  Certificate of participation from the IEEE's Computer Society in the CSIDC (Computer Society International Design Competition) for the graduation project. Education Education B.Sc. in Computer Engineering (2004) - Computer Engineering Department
  • 4.
    Faculty of Engineering,Cairo University. Graduation Project EBG (Electronic Blind's Guide): helps the blind people to navigate using a laptop that navigates the surroundings. Using path finding and motion planning techniques to calculate the optimal path. The device uses a camera to discover the way. And notify the user using voice messages. VC++ 6.0, Intel OpenCV Library and Microsoft Speech SDK (SAPI 5.1) Projects (samples) O.S. Simulation 1 Simulating an operating system scheduler using different scheduling techniques C# O.S. Simulation 2 Simulating a distributed Operating System Scheduler C++ Linux Tasks Linux Tasks Examples C BMP to JPEG Encoder Chip Jpeg Encoder Chip using VHDL VHDL PDP11 Microprocessor Design a PDP11 like microprocessor VHDL Non-technical Skills  Excellent problem solving and learning abilities.  Excellent communications skills and Ability to work under pressure.  Self-motivated. Personal Information Nationality Egyptian Date of birth 11 Dec 1981 Marital Status Married Military Status Exempted Address Cairo, El-Obour city,