[pic]
Objective
Seeking a challenging position as Java/J2EE Developer with a dynamic
organization where my skills and experience will be extensively utilized,
enabling me to use new technologies while offering an opportunity for
growth and advancement.
Info
Name: Hamidreza Sattari
email: ******@*****.***
Phone: 416-***-****
Visa Status: Permanent Resident
Certificates
Sun Certified Web Component Developer for Java 2, Enterprise Edition 1.4 -
2003
Sun Certified Java Programmer for Java 2 Platform 1.4 - 2003
Microsoft Certified Application Developers (C#)-2005
Microsoft Certified Database Administrator-2002
Education
Master's Degree, Computer Software Engineering from Heriot-Watt University-
2008
Bachelor's Degree, Electrical and Electronics Engineering from Islamic Azad
University-1994
Training
R Programming from Coursera - July 2014
Machine Learning from Coursera -September 2014
Bioinformatics Algorithms (Part 1) from Coursera- February 2015
Programming for Everybody (Python) from - April 2015
Publications
Book: Spring Web Services 2 Cookbook : http://www.amazon.com/Spring-Web-
Services-2-Cookbook/dp/184*******, February 2, 2012
Article: Testing and Monitoring Web Services Service Technology Magazine
Issue LXI, April 2012
Technical skills
Java/J2EE, collections framework, multi-threading, serialization;
EJB 2, EJB 3, contract first/ RESTfull Web Services, Jasper Reports ;
Java Beans, JSP, Servlets, JSP Custom Tags, JSTL, JNDI, JDBC, JMS,
JavaMail;
XML (DTD, SAX and DOM), JAXP, JAXB, XML Beans 2.0;
JavaScript, AngularJS,JQuery, DHTML / HTML, CSS, AJAX, JSON;
SQL, PL / SQL;
Unit, functional and integration testing;
Jakarta Ant, JUnit, Log4J, Maven;
Frameworks: Struts, Hibernate, Spring;
Relational databases (RDBMS): Oracle 9i and 10g,MSSQL, MYSQL; DB Tools:
Toad, SQLDeveloper.
Application servers: Tomcat 4, 5 and 7, WebLogic 8.1,10, Jboss AS 7;
Platforms: Windows 2000, XP, NT, Linux, Unix, Windows 7;
IDEs: Eclipse, IBM WebSphere Studio (WSAD 5.x) ;
OO design patterns (creational, structural and behavioral); J2EE design
patterns (Presentation, Business and Integration Tiers patterns), SOA;
Source code version control SCM tools: CVS, Apache Subversion SVN;
Continuous Integration: Hudson, Jenkin
Bug reporting and project status reporting tool: JIRA
Work experience
1 Jan 2015- present, Developing a Java Web Application using AngularJS and
Web-Services for Saalamat Bakery in Toronto
This online application is to sell a start up business
(Confectionery/Bakery products) online. AngularJS along with RESTful Jersy
Web-Service are used in presentation tier, Spring IOC and Hibernate
frameworks are used to provide business and DAO services. MYSQL is the
database.
TECHNOLOGIES: JAVA/J2EE, Spring, Hibernate, AngularJS, RESTful Web-
Services,JSON, DHTML CSS, tomcat, MySQL,Linux.
Feb 2006, September 2014 with Marcura ( http://www.marcura.com/ ),
Dubai,UAE
Role: Senior Java Developer
COMPANY DESCRIPTION: Finacial or information sevices that facilitates
trade, improves efficiency, and increases transparency for maritime
customers.
RESPONSIBILITIES: Main role: Senior java developer and as a agile team
member, I was involed in the whole life cycle of multiple in house
projects:
Meet client to capture requirements
Architecture and design and confirm base line architecture with client
Estimate time of backlog and report project progress
Release management and creating deploy-able release for the client
DB development (queries, procedure, function ) and and some DBA tasks such
as backup and restore, create schema, tables pace
Lead teams of software development (2-3). Our team resources were very
flexible. when we had a big task to develop, a Senior developer took the
issue and up to availability of resources, he split the task into small
pieces and assign it into other developers and he was responsible to
receive test and integrate small tasks from developers.
Projects
Project: Re-factoring existing legacy application to use AngularJS as
presentation techniques and Service Oriented Architectures in the back
end.
Year: 2012, 2013, 2014
Role: Senior java developer
Technologies: JAVA/J2EE, Hibernate 3, Spring 3, Apache Subversion SVN,
JSON, AngularJS,JSP,DHTML,CSS, RESTful Web services by Jersy Eclipse
Indigo, Jenkins, Maven, Oracle 10, PL/SQL, Weblogic 10, LDAP, Linux
Worked with UX Designer and Senior Software Developers to re-factor our
main enterprise application(DA-Desk) . The old application used XSL/XML in
presentation and EJB 1 and processors and session beans in business layer.
We re-factored the application into Presentation, Business Service and DAO
layers. Jersy Web-service frameworks used in presentation layers that
interacted with AngularJS in JSON format, on front-end to view and alter
data. Spring IoC container used for instantiating, configuring, and
assembling beans and services. Spring AOP used as transaction manager for
the service layers' methods that interacted with Oracle data base.
Hibernate 3 used in DAO layer to save/retrieve data.
Project: A Web-Services application to expose our Data Model to external
application
Year: 2011, 2012
Role: Senior java developer
Technologies: Spring Web-Services, XML Schema, JBoss AS 7,JAXB, Hibernate
3, Hudson, SVN, Maven, JUnit, Unix, Oracle 10, SQL Developer .
We had several in house applications required to access database schema and
directly queried the database. I worked with a Senior Software Developer
to design and develop to expose our data model through a Web-Service
application. The application designed into End-Point, Service and DAO
layers.
Spring IOC 3 used for instantiating, configuring, and assembling beans
and services and Spring-Web services used to expose contract first web-
services to external applications. In DAO layer Hibernate 3 was responsible
for retrieving data from Database. External applications were able to call
a service and pass criteria to filter result and even include which part of
data from the model they need to minimize network traffic. To test this
application, spring integration test were used.
Project: Port point
Year: 2011
Role: Senior java developer
Technologies: WEKA, RapidMiner, Machine learning, Neural Net,Evolutionary
Algorithms
Cost and Time Estimation of shipping using Historical Data Several
algorithms and statistical methods (Neural Net, Kstar, ..) used in this
project to find the most accurate method to estimate the cost and time of
shipping for each port in the world( by WEKA and Rapidminer java api is
used as method implementation).
I worked on this project from very beginning to prepare data-set and did
research on how to apply evolutionary algorithms to to estimate the cost
and time of shipping for ports in the countries.
Historical shipping data used to train this system on daily basis and
the best model save into Database . This model used to estimate the cost
of shipping for particular set of parameter.
Project: Integration Application
Role: Senior java developer
Year: 2009,2010
Technologies: Spring,EJB,Hibernate, JMS,Web-service (SOAP,REST),junit
/cactus, Weblogic as server.
Our customers had different technologies to communicate with external
applications. The goal of Integration Application was to provide an
application that supports various communication technologies like JMS,
Web-service (SOAP,REST),HTTP . This application was a
communication channel between our main application and external world.
Hence this application was being changed and re - factored
frequently, a test application was created using junit/cactus to
automate testing of integration application.
I worked with a group of senior developers to design and develop this
application. Spring IOC used for instantiating, configuring, and
assembling beans and services and Spring-Web services used to expose
contract first web-services over http to external applications.
Communication between this application and out main enterprise application
was through JMS messaging service.
Project: Enhance,Maintenance of DA-Desk application
Role: Senior java developer
Year: 2006,2007,2008
Technologies: Java4, XML,XSL,JSP,JSTL,DHTML,CSS, Ant, JUnit, Weblogic,
Oracle,Hudson .
Our main application DA-Desk,was an on-line global logistics cost
management system, which is presently in daily use by over 4,000
subscribers worldwide. that provide following services to our clients:
I worked with a team of senior developers to design and enhance and bug
fixing of DA-Desk application
1 Dec 2003 to Jan 2006 with Wellogic-ME, ( http://www.wellogic.com )
Dubai Internet City,UAE
Role: Software Engineer
COMPANY DESCRIPTION: Health information solutions group.
Projects
Project: WellchAllyn (www.welchallyn.com)
Role: Tech Lead/Software Engineer
Technologies: Java, Tomcat, Oracle, XML, ACTIVEX, JSP, JSTL
Year: 2005,2006
Using this application, doctors/specialists/nurses were be able to monitor
patients remotely and capture/save/view/report patient vitals. I worked
as Tech Lead(Team size: 3). Research on communication between external
health care devices with JAVA Application.
Project:Misys Connectivity Project ( www.misyshealthcare.com )
Role: Software Engineer
Year: 2005,2006
Technologies: Java, AXIS Web Service, Hibernate Oracle, SQL Server, Tomcat
It was a web application(J2EE/JAVA) that accesses data in a distributed
environment (source of data,can be Web Service
from java(axis) or .Net C# web service, xml file or a socket, and database
ORACLE/SQL Server ) . it was built on a frame work that access data from a
data access layer (we had Shifted to Hibernate,latest Object relational
Mapping Tech ), this data access layer accesses data from different kind of
Dao's (Web Service DAO, XML DAO,Oracle DAO, SQL DAO ).The application
developer, access the data from data access layer, and no aware of real
source of data.
I worked as a software engineer on R&D and design and developing of
DAO's (web service, xml, socket DAO, database ORACLE/SQL SERVER Dao's) and
used SOAP (axis) and .Net C# for Web Service.
Project:Bedrock project ( www.cerner.com )
Role: Software Engineer
Year: 2004,2005
Technologies: Java, JSF, Tomcat
Cerner Healthcare R&D application that uses J2EE/EJB, Java Server Faces,
the latest Java presentation technology. Java Server Faces, was the new
generation of presentation technology that remove the border of Web, and
Desktop applications, it uses a Swing based technology, to create the
component,that maintains the state at server side. I worked on R&D and
design and developing of custom Java Server Faces components
Project:Power chart Project ( www.cerner.com )
Role: Software Engineer
Year: 2003,2004
Technologies: JAVA, Struts, Oracle, WSAD,JSP, JSTL,DHTML
Cerner Health care Application in J2EE/EJB/Struts. The system was intended
to help physicians to manage their clinical routines. The whole system was
architect as a single ear file and multiple war files, in order to use each
war file as a plug and play module. Each war file will handle each sub
projects inside. Excellent usage of J2EE design patterns and practices.
Major war projects are: Clinical Documentation, Orders, Chart, Dialog
Search, Cerner (base web-context), Messaging, etc .
I worked on building up the chart module, which contained all the
information of a patient, in a physician's
Perspective, like Lab, Medication, Blood Product Admin, Radiology,
Cardiology, Other Diagnosis Reports, different physicians notes, Allergies,
etc.
Module-documentations: Physicians could create different notes on a
patient's diagnosis; send to other physicians for advice, verification and
approval. This module was tightly integrated with messaging.
Orders: Physicians created orders in behalf of a patient, or any other
provider, for the services available, like Lab Tests, ECG, Echo, etc.
Dec 2002 to Dec 2003 with Systemgroup ( www.systemgroup.com ) Tehran,
Iran
Role: Software Engineer
COMPANY DESCRIPTION: The company's core business activities focus on
providing:
Business software solutions for mid & large size businesses across
manufacturing, service and commercial industries ; Business software
solutions for small size businesses ;Custom-made IT solutions for the
public sectors training, implementation and technical support of software
systems ;Advanced network engineering services and data security
Projects
Project:Office Automation
Role: Software Engineer
Year: 2003
Technologies: Java, .NET, Webservice, JSP, JSTL, Servlets, SQLServer,
Oracle and JBOSS
It was a large J2EE /EJB Web application and .NET (C#) window application.
It was built on a object relational mapping using EJB frame work to
interact with database, and also had published its business method to
interact with data base by Axis Web Service (Facade pattern to minimize Web
Service method numbers) so .Net client was able to use java server to call
business method by Web Service, to access data in database, and also uses
Dime Attachment of Web Service to pass large document (like scanned
document ) between .net client and java server .
I worked on R&D and design and develop on communication between Java and
.Net (by Web Service RPC, Dime Attachments) and also implementation of
Fa ade pattern .
(Lower level layer API, working directly with web service, so higher layer
level called these API,
not aware of Web Service, so if in the future we wanted to directly use
.NET, to interact with
database, we only changed these low level API, and not whole .NET client).
I also worked on a object relational mapping using EJB. (CMP EJB are mapped
to database tables, u can use objects to Interact with database, without
directly connecting to database)
Project:Web report project
Role: Software Engineer
Year: 2002-2003
Technologies: Java, JSP, Servlets, SQLServer and JBOSS
It is a java web application on MVC pattern, its database was Sql Server
2000. I worked on the reporting system on several categories (Human
Resource, Accounting, Treasury, Marketing/Sales and Contracts Systems).
Interests : New technologies, reading, running.
Languages: English, Persian.
References: Available upon request.
6