Post a Job Sign in

Mohamed Farag

Mid-Level Java Developer - FedEx Services

Pittsburgh, PA

-

• 5 years of experience in Information Technology with focus on gathering System Requirements, Analyzing the requirements, Designing, developing the system and operating system development. 
• Successful experience in all phases of the Iterative Software Development Life Cycle (SDLC) using lots of methodologies such as Waterfall, Agile XP and Prototyping. 
• Core competency as design and development of applications using JDK 1.4/1.5/1.6/1.7. 
• Proficiently developed GUI using JSP, JSF Framework used for developing Web Modules, JSTL in JSPs, Action forms, Action classes, Form beans, spring and Hibernate. 
• Proficiently used Java Persistence API (JPA) to map entities to existing tables with the aid of POJO classes. 
• Proficiently developed Database Applications using JDBC for MySql 5.0 or above, Oracle 10g and MS Access 2007/2010. 
• Proficiently developed Standalone Database application using Oracle Forms and Report Generator. 
• Expertise in SQL, PL/SQL and familiarity using Data Modeling tools, creating Data Flow Diagrams, ERDs (Visio 2003/2007/2010, Smart Draw 2010). 
• Experience in Object Oriented Design using MS Visio tool with UML standard, Use cases, Interaction (Sequence, Communication, Collaboration), Class, State Chart, Activity and Deployment diagrams. Worked on Visual Case. 
• Extensive experience in Application Transfer from JSP to JSF and vice versa. 
• Proficient in learning new technologies and quickly adapting to new environment. 
• Strong team-oriented, analytical, problem solving and communication skills. 
• Experience of using IDEs like Eclipse and NetBeans. 
• Used AJAX while working on various projects where constant refreshing was required form the server side. 
• Experience in Application Servers like Glassfish Server and Apache Tomcat. 
• Experience with Several Platforms such as Linux, FreeBSD, PC-BSD and Windows (98/XP/2003 Server/Vista/7). 
• Experience with solving problems using different patterns such as Visitor, Template, Composite, Decorator, Singleton, Factory, Façade, Builder, Mediator, Iterator, Command and Strategy. 
• Experience with different scripting languages including Perl and Shell. 
• Experience with Project Planning using Microsoft Project 2003/2010. 
• Experience with testing the code and apply different testing approaches using JUnit4.x/TestNG with applying code coverage tools to satisfy the most effective test cases using Eclemma. 
• Experience with HTML and JavaScript to facilitate web programming. 
• Experience with working in different environments including Project Based or Multiple projects at the same time. 
• Experience of creating new project and committing updated code to Subversion Repositories using Subclipse. 
• Experience of reporting bugs on faulty code using Bugzilla.

Work Experience

Mid-Level Java Developer

FedEx Services
-
Pittsburgh, PA
-

June 2012 to Present

Description: 
Participating in the development of the discounting and pricing applications. 
 
Environment: Core Java, JPA, Hibernate, Spring, JMS, SOAP, WSDL, Weblogic, Oracle, XML, Apache-Maven, Ant, Toad, JUnit, Subversion.

Manager

Google
-
EG
-

September 2010 to June 2011

Description: 
Leading one of the biggest Google Developer Groups in Egypt. 
Responsibilities: 
• Developed an application combining Google Maps and Google Earth Features within QGIS in addition to administering it using QT C++ GUI with a connection to JOOMLA website and Android Mobile. 
• The above-mentioned project received 1st Place in Programming Field in Egypt, 2011. 
• Google Representation in Menoufia University and Ismailia University 
• Author in Global Google Technology User Group Magazine. 
Project: Tourism Motivation 
Description: 
This application was developed for the Tourism ministry to facilitate the communication between tourists and tourist-guides, keep track of the tourist locations and generating statistics for future plans. This project consists of three parts; first one is Joomla based website for receiving applications from clients and entertainment purposes, second one is android application connected to the website for portability and keeping track of tourists, third one is desktop application connected to the website to provide helper tasks through generating statistics and connect the application with QGIS for Map editing, Geo-referencing and adding new layers for future plans. 
Responsibilities: 
1. Responsible for QGIS and the desktop app with building connections in service oriented architecture approach (Used Qt, Google Map, Google Earth and QGIS). 
2. Participated in the UI design in JOOMLA. 
 
Environment: C++, Qt, QGIS, Oracle, JOOMLA, Google Maps, and Google Earth.

Developer

Google
-

May 2010 to September 2010

Online Position) 
Location: Mountain View, California 
Role: FreeBSD Developer 
 
Description: This project aimed to design new kernel loadable module attachment for FreeBSD Team. 
 
Responsibilities: 
Played active role in FreeBSD Development Team. 
• Designed and developed new Kernel Loadable Modules Attachment Approach for FreeBSD which* is loaded at the beginning of the kernel via perl script to match the desired kernel modules with the ones stored in BIOS and load them at the very beginning steps of the kernel. 
• Obtained Certificate from Google. 
 
Environment: C, Perl, Shell Scripting, and FreeBSD.

Free Lancer

Online Postion
-

2010 to May 2010

Analyst, PHP Developer & Joomla Developer 
 
Description 
• Single-handedly designed and developed website adapting unique needs of travelers flying to different locations based on cost of flights. 
Information about Application Mentioned Above: 
Traveler Home is an online airline ticketing system to match user requirements for tickets with the actual flights and find best matches. 
Responsibilities: 
• Responsible for analyzing the business and design the system components. 
• Responsible for agent unit (Neural Network-Like) for matching the user requirements to the records in the database based on cost. 
Environment: Java, MySQL, Visio, Smart Draw, Visual Case, UML, ERD, Joomla and PHP.

Co-Manager & Developer

Menoufia
-

January 2008 to December 2009

Description: Leading one of the biggest Java User Groups in Egypt which supplies Java projects for the most important clients in Egypt. 
 
Responsibilities: 
Oversaw all aspects of company developing Java applications, organizing events, and sharing knowledge of Java with students. Managed 25-50 employees. 
• Designed and built complete Java application to simplify faculty transfer process for Faculty of Computer & Information at Menoufia University. 
• Automated and improved management of reception process at Shibin Al-Kawm Hospital, engineering and building Java database application. 
• Planned and organized +20 events such as Software Freedom Day, and Open Source University in Menoufia (OSUM). 
• Handpicked to represent Menoufia University in Industrial Modernization Center (IMC) Conference. 
• Honored in Menoufia University's scientific community for outstanding contributions and innovation. 
 
Project#1: Faculty Transfer Process Project 
Description 
This project aimed to store all the faculty member information willing to leave the college. In this project, MySql and Oracle Databases were used to store the different types of information. 
Responsibilities 
• Responsible for develop, maintain and facilitate JDBC connections between Java and Databases. 
• Participated in the UI Development with usage of different UI components to enhance the view. 
Environment: Java, Oracle 10g, MySQL, UML, Visio, ERD, Smart Draw, NetBeans, Eclipse and Windows. 
 
Project #2: Shibin Al-Kawm Hospital Project 
Description 
This project aimed to reorganize Shibin Al-Kawm hospital reception. System was reanalyzed, redesigned and new one was developed. 
Responsibilities 
• Leading Technical Team for project development. 
• Responsible for system analysis. 
• Used JPA to connect patient entities to patient database. 
• Participated in both JDBC and UI development. 
Environment: Java, MySQL, UML, Visio, ERD, Smart Draw, NetBeans and Windows. 
 
Project #3: Student Affiliation Office Project 
Description 
This project aimed to construct an oracle application to handle student data in Menoufia University using Oracle 10g database, Oracle Forms and Oracle Report Generator. 
Responsibilities 
• Leading technical team for project development. 
• Responsible for Oracle Forms and maintaining CRUD operation on the database. 
Environment: Oracle 10g, Oracle Forms, Report Generator and Windows.

Education

MSc in Computer Science

Maharishi University of Management -
Fairfield, IA

2011 to 2012

Middle East focusing on FreeBSD operating system development

Ain-Shams University -
Cairo, GA

2011 to 2011

Additional Information

TECHNICAL SKILLS: 
 
Languages Java (Core, Multithreading, etc), J2EE, JavaFX • C • C++ • Matlab • Perl • Shell Scripting 
Web Technologies JMS, JSF, JSP, Servlet, HTML , JavaScript, XML, AJAX, Spring, Hibernate, JPA 
Web Services SOAP, WSDL, REST 
Application/Web Servers Tomcat, Glassfish, Weblogic 
System Design UML, ERD. 
IDE Tools Eclipse, Net Beans 7.0, 6.9, 6.8 
Databases/API Oracle 10g, MySQL 5 or above, DB2, MS Access 2007 and SQL Server 2005. 
Operating Systems Unix, Linux, Windows 7/Vista/2003/2000/XP 
Data Modeling Toad, Visual Case and Smart Draw 
Design Patterns Visitor, Template, Composite, Decorator, Singleton, Factory, Façade, Builder, Mediator, Iterator, Command, Strategy 
Testing/Helper Tools JUnit, TestNG, Perforce, Subclipse, Eclemma, FindBugs, Bugzilla, Ant, INI files, JDBC, JMS, RMI 
Networking Monitoring Tool GNS3, Wireshark, Qemu (Emulation)