1. 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)
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 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
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,