Souad Megaache
Summary:
• A senior software developer who consistently demonstrates the ability to critically think through difficult problems and
craft solutions that are accurate and efficient, have the ability to think outside the box, and craft approaches that are
innovative.
• Reliable and see tasks through to completion regardless of the effort or difficulty.
• An excellent amalgamation of intelligence, commitment, perseverance, and creativity.
Education:
• MSc in Advanced Software Engineering Westminster University, London, UK 1998 – 2000
• First Class Software Engineering Degree University of Science and Technology, Algiers, Algeria 1990- 1995
Technical Skills:
Java Technologies: Core Java, Multithreading, DWR, JSP, HTTPClient, Servlets, JavaMail, JDBC, SSL,
RMI, CORBA, Hibernate 3.0, Web Services, XML, XSLT, Quartz, Lucene, Compass,
EHCache RSA, JTS, WSDL, TestNG, JUnit, Mockito, Cobertura, Jakarta Commons
libraries, TDD.
Web Technologies: JavaScript, HTML, HTTP, JSP, JSON, EXT JS (SENCHA), AJAX.
Application/Web Servers: Apache Tomcat 5/6/7, GlassFish
Design Patterns: Factory method, Singleton, Façade, Builder, Model View Controller (MVC)
Frameworks: Spring Framework (Core Spring, Spring MVC, Spring security, Spring Web Services,
Spring Batch), Hibernate, Hibernate Spatial, Struts 2, Mule ESB 2.x, Agile-scrum
Database: ORACLE 11g/10g/11g Spatial/XE, Sybase OLTP, Sybase IQ, MySQL 5, MS SQL Server
2008.
IDEs: IntelliJ IDEA 8/9/10, Eclipse.
Tools: CVS, SVN, Maven, Hudson, SoapUI, Artifactory, J Profiler, Oracle JDeveloper, Sybase Power designer, Intergraph
Geomedia, Aqua-Data Studio, Fire-Bug, Putty, Liferay Portal 5.
Languages: Core Java, C, C++, Java-script, SQL, PLSQL
Operating Systems: Windows, UNIX (Solaris, AIX).
Professional Experience:
Clifford Thames, Chelmsford, Essex UK Oct 2011 – Oct 2013
Senior Software Developer
Project: Athoris
The project involved implementation of vehicle and contract checks between authorized repairers and leasing companies,
enabling cost-effective and time-efficient repairs to fleet vehicles. Repairer systems integrate with Athoris Web Services to
enable leasing companies to manually or automatically authorize vehicle maintenance, avoid double keying and receive
pre-approved repairer invoices.
Responsibilities:
• Design and development of repairers upload processes using Mule scheduled tasks and VTD XML parser.
• Implemented Compliancy checks using both Mule services and custom Rules engine.
• Enhanced the Integration of Customer specific security systems.
• Environment: Core Java, Struts 2, Mule ESB 2.x, Liferay Portal 5, MS SQL Server 2008, log4J, TestNG, Mockito,
Cobertura, Maven, Hudson.
Ohio Department of Transportation, OH Jul 2006 – Oct 2011
Senior Software Developer
Project: ODOT internal libraries Jan 2007– Oct 2011
This ongoing project consists of creating a set on internal libraries (total of 10 libraries so far) that are being used across
multiple projects. They consist of reusable domain models and set of service interfaces to them. The domain models
consist of providing a set of Linear Reference System (LRS) based abstractions of the roadway inventory, temporal
conflation services, dynamic aggregation and transformation of data.
Responsibilities:
• Analysis, design and development of highly reusable libraries used across multiple projects
• Implemented Business Manager APIs, Java Persistence Objects needed
• Implemented domain objects using Hibernate
• Use highly configurable and reusable classes using Generics
• Created unit tests using Junit and testNG
• Set up maven Enterprise repository for the management of the internal and the external libraries
• Environment: Core Java (collections, generics, etc), Spring Framework, log4J, Oracle 10g/11g/spatial, JUnit, testNG,
and Hibernate Framework, Jakarta Commons libraries, Maven.
Project: Dtranz Nov 2010 – Oct 2011
The Dtranz is a rich web application dedicated to the management of roadway inventory asset.
Responsibilities:
• Developed and implemented major backend components of the application in addition to their supported domain
object and service classes
• Implemented back end jobs and processes using Spring batch
• Created unit tests of the developed business processes using JUnit
• Involved in architecture discussion, and decisions of the application
• Resolve complex issues related enterprise architecture such as proper transaction management and database
performance optimization
• Worked on proof of concept, for suggested technologies (Oracle spatial work space manager)
• Designed data models of the application using power designer
• Developed stored procedures for spatial data processing using Oracle Spatial procedures
• Created SQL script to copy data cross Oracle instances ( from production to development)
• Provide expertise related to roadway inventory to customers and peers
• Environment: Core Java, Spring Framework, Spring MVC, Spring batch, Spring security, Spring web service, EH-
Cache, SLF4J, JUnit, Hibernate Framework, Hibernate Spatial, JTS suite, Ajax, EXT JS(Sencha), Oracle spatial 11g,
Power Designer, Tomcat 6/ 7,Maven,CVS.
Project: RIMI (BTRS Automation) Sep 2009 – Oct 2010
This project consists of automating the generation of the official roadway inventory data. The generated data is being used
for mapping, reporting, enterprise applications, and as a frame of reference for other assets such as bridges, rail
crossings, accident, and traffic data.
Responsibilities:
• Led the development team
• Analysis, design and development of Application based on Java technologies and Design Patterns
• Implemented multithreaded Spring batch jobs that generate and reconcile huge data sets, and resolved
synchronization issues
• Involved in architecture of the application
• Provided mentoring on Spring technologies to team developers
• Helped trouble shoot and resolve issues related to the application
• Implemented underlying domain objects and their associated service methods
• Created unit tests using testNG
• Designed data models using power designer
• Provided expertise related to roadway inventory to customers and peers
• Actively participated in discussions on Spring forums (Spring batch)
• Environment: Core Java, Spring Framework, spring batch, SLF4J, Oracle spatial 10g, Power Designer, Maven,
TestNG, and Hibernate Framework, Multithreading.
Project: Pavement Web Sep 2008 – Jun 2009
The pavement web application manages all project history datasets through a web application provided to the Office of
Pavements. It has the base set of functionality for the Office of Pavements to manage the existing roadway projects as
well as automatically import projects from other internal ODOT systems. The system uses Lucene a text-based search
database for fast searching of projects.
Responsibilities:
• Analysis, design and development of the application backend components based on enterprise technologies and
Design Patterns
• Implemented the security framework of the application using Spring security, Active Directory, web services and RSA
(server side)
• Enhanced the Ext.Auth component, Javascipt component to implement RSA encryption on the client side (web)
• Involved in architecture discussion, and decisions of the application
• Implemented underlying domain objects and their associated service methods
• Developed quartz tasks that synchronize contracts data stored in different data sources (Oracle and Sybase)
• Build a standalone application that initializes lucene indexes, used for the application search tools.
• Developed a contract management user interface using Ext Js (Sencha) framework
• Worked on proof of concept, for suggested technologies (JAX_WS web services, Access JDBC)
• Created unit tests using testNG
• Build and deployed the application to tomcat 6 on AIX
• Actively participated in discussions on Spring forums (Spring security, spring web services)
• Environment: Core Java, Spring Framework, DWR, Spring security, Spring web service, Active directory, log4j,
Oracle 10g, Sybase IQ, Power Designer, Tomcat 6, TestNG, Hibernate, EXT JS, Ajax, JSP, RSA encryption, Lucene,
Compass, Quartz, CVS, Jakarta Commons libraries.
Project: Safety Analyst Import Jan 2008 – Dec 2008
This project consists of generating roadway inventory data to the Safety Analyst Application. The latter is used to identify
high hazard locations to facilitate the development of roadway safety planning/ improvement projects.
Responsibilities:
• Analysis, design and development of application
• Implemented underlying domain objects and their associated service methods
• Created unit tests using testNG
• Created the SQL scripts to create the safety analyst import data schema, load reference data, and export resulting
data
• Created documentation for the project
• Environment: Core Java, Spring Framework, log4J, Oracle 10g, Power Designer, TestNG, Hibernate, CVS,
SQLLDR.
Project: Pavement history Jul 2006 – Dec 2007
This project consisted of publishing the Roadway inventory historical data to the enterprise. The roadway inventory is not
a static network, but a dynamic system that changes on frequent basis as roads are added, changed and realigned. Each
year a version of the network is published. The project consisted of loading and reconciling the data back to 1985.
Responsibilities:
• Analysis, design and development of Application based on core Java
• Implemented underlying domain objects and their associated service methods
• Created unit test using testNG.
• Created documentation for the project
• Corrected and reconciled historical roadway inventory data
• Environment: Core Java, Spring Framework, log4J, Oracle 10g, My SQL, TestNG, Hibernate, and CVS.
IBM (formerly Micromuse LTD), London UK Jan 2000 -Oct 2003
Senior Software Engineer
Project: ISM suite (2.1, 2.2, 2.3)
The Netcool/Internet Service Monitors (ISM) product provides real-time Internet availability and response time information
for a number of Internet protocols and applications by regularly testing each service as an end user. The reporting and
configuration interface (ISM Server) is a Java application to which a user connects via a web browser.
Responsibilities:
• Design and implement the Internet Service Monitor Server (ISM Server)
• Designed and implemented the distributed architecture of the ISMservers where one Master ISMserver handles Slave
ISMservers on remote locations
• Maintain and release several patches of the product
• Provided customer support where I managed to solve critical problems and implemented important enhancements
within short time frame
• Participated in the reachitecture of ISM 3 version
• Wrote the documentation of the ISMserver, which was used in both the reference manual and the company training
program
• Provided training to different System Engineers and colleagues
• Created unit test for the testing department
• Created shell script to deploy the application on different Unix flavours
• Trouble shouted java specific problem on different Unix system
• Wrote shell scripts for starting up and shutting down the server
• Environment: Core Java, HTML, Javascipt, CSS, XML, XSLT, HTTP, clearcase, MKS.
IT department, Bureau of Taxation, Algiers Algeria Jul 1996- Aug 1997
Software Engineer
Project: The national taxation warehouse
This project consisted of building a central database for the tax services, by reconciling and gathering all the information
regarding customers and different services of department of the taxation.
Responsibilities:
• Participated in the design of the National Database (data warehouse) for the tax services.
• Heavily involved in requirements gathering, data filtering and proposing the initial design of the datawarehouse.
• Proposed a new and efficient workflow to improve the different departments existing procedures.