AddThis Social Bookmark Button
Zhong-Dan LAN
Edison, NJ - 08817 USA
Expertise :
Job Type :
Position :

Resume
 

Objective
Software Architect


Summary

A challenging position as a software architect, designer, developer that will utilise my developed analytical, technical and interpersonal skills.

HIGHLIGHTS OF QUALIFICATIONS
Strong software design, implementation and test background in Java, Enterprise Java, C/C++/Visual C++ and Microsoft technologies.

Strong database implementation, design and data warehouse skills
Thorough understanding of Object Oriented design and methodology, Design Patterns with UML.
Holder of Sun Certified Programmer, Sun Certified Developer, Sun Certified Web Component Developer for Java 2 Platform and Sun Certified Enterprise Architect for Java 2 Platform Enterprise Edition.
Holder of Microsoft Certified Professional and Microsoft Certified Solution Developer for Visual Basic and SQL Server, Microsoft Certified Database Administrator Candidate.
Holder of IBM Certified Developer, XML and Related Technologies

Holder of BEA Certification of Achievement for Developing Enterprise Applications with BEA Weblogic Server.

Excellent experience in UNIX and Windows operating systems.
Professional in Numeric Analysis, Signal and Image Processing, Mathematical Modeling and Algorithms.
Good understanding of financial fundamentals as fixed income, derivatives.
Professional in Client, Server and n-tier applications.
Professional in Data Modeling.
Self motivated, high energy individual who learns quickly and independently.

Solid organisation skills and leadership.
Sociable, enjoy working in a team environment.
Fluent in French, English and Chinese.

Internet and component Programming : Java 5 years Java Bean 2 years J2EE 4 years Servlet, JSP, EJB 3 years
XML, XSL, CSS 2 years Perl 2 years COM, OLE 2 years Weblogic, WebSphere 2.5 years
SOAP, Web Services 1 year HTML 5 years Java Script 3 years Struts, Tiles 2 years
C Lang 9 years C++ 6 years Visual C++ 4 years MFC 3 years
UNIX shell 7 years Mqseries 2 months FORTRAN 1 year Prolog, LISP 1 year
Windows NT 4 years Windows 9x/3x 7 years UNIX 7 years Linux 4 years
X-WINDOWS 7 years Mac 1 year
Matlab 1 year Maple 4 years Vista years Khoros 1 year
Ms-Office 5 years Latex 5 years Emacs 7 years CVI 3 months
Database and Database Tools : ODBC 2 years JDBC 2 years Oracle/ PL/SQL 1 year Paradox, OPAL 1 year
VB, VBScript 2 years SQL Server 2 years Access 2 years SQL 3 years
UML 2 year Design patterns 3 years


Employment

2005 -  Present
Software Architect

Software Architect Worked as a software architect in Ishi Systems Inc
Worked on Fire Prevention, Smoke Detection, Community Activity project for NatGeo, constructed Domain Model with Rational Rose and SODA, constructed Data Model with Erwin.
Worked in Fannie Mae for their Early Lender Funding Project, used Struts Framework as the MVC implementation, Spring Framework as IOC container and Hibernate as OR Mapping Tool.
Worked in Fannie Mae for their trade support applications, used Struts Framework as the MVC implementation and worked on over twenty crystal reports from scratch. Build was done in ant, The applications were deployed in Weblogic.


2005 -  2005
Software Architect

HARDWARE PC Solaris Software Architect Worked in New York Times as a software consultant of Intercentury Technology Inc Software Architect Worked as a software architect in Ishi Systems Inc
Implemented methods in session bean to find recent advertisement list, classification, zone code list using JDBC.
Designed and implemented generic error handling framework for exceptions and validation errors which stores detailed technical message with a serial number as the primary key to database and returns client a more user friendly error message and serial number which is used for technical support.
Worked on reverse publishing : I wrote a standalone java program which loads xml input with ftp client library, invokes a method of a session bean and stores output with ftp client .I implemented the method of the session bean which encapsulates the business logic on the server side.
Fixed defects in buy process for different releases, from client layer, web layer, struts action layer to backend EJB layer. The buy process is the e-business process in New York Times used to place advertisements which involves lots of transactions.


2004 -  2005
Software Architect

HARDWARE PC Solaris Software Architect
Worked as a software architect in Integ Enterprise Consultant. Integ is a software company which provides software products for electricity and health companies and IT consulting services.

Project for electricity companies as AEP, PSEG, etc

Designed and implemented a XML based data access framework, in which input and output are both xml files with some predefined format ; xml of other format are converted to the predefined format using xslt to use our framework. Wrote several SAX based component to deal with special cases when the amount of data is huge.
Introduced JUnit Test in this project.
Automated the building process with Ant.
Introduced use of AspectJ for logging purposes.

Project for health, medical company credential smart
Designed a barcode application using java mail and a C based barcode reader software. The application reads attachments in email and calls the barcode reader software using java runtime library.
Designed the application based on struts.

Web based project for PS and G for form submission, validation, notification, etc
Designed the application based on struts 1.1 and tiles.
Used spring IoC framework as a lightweight container in business tier, ant to automate build process, Cactus to automate integration test and httpunit to automate functional test.


2003 -  2004
Developer

HARDWARE PC Solaris Software Architect and Lead Developer
Worked in AT and T as consultant of comrise, worked on PDM and EFMS project.
Prepared the design document for PDM, EFMS foundation framework, from front end JSP, tag library to back end Data Access Objects. The framework is using Struts intensively.
Designed the context based and role based personalization and implemented the related custom tags.
Introduced a HTML production framework to facilitate the HTML generation, using Composite and Abstract Factory Design patterns.

Designed and implemented Table and TableColumn custom tags which work together to display data in table format and provides sorting, filtering, paging features, used javascript for form submission.
Designed and implemented ComplexTable and ComplexTableColumn custom tags to display table inside table and provided sorting, filtering and paging features, used javascript for form submission.
Designed applications using Struts 1.1 and tiles.
Designed logging framework based on log4j.
Designed XML, XSLT transformation framework.
Migrated the framework from weblogic to iplanet 6.
HARDWARE PC, Solaris
SOFTWARE Windows 2000 JSP, Web Logic 7 EJB 2.0, Struts 1.1, Tiles, UML, Rational Rose 2000 Together Control Center, Design Patterns, XML, Oracle, CVS, ant, junit, cactus, iplanet.


2002 -  2003
Senior Software Designer

Senior Software Designer
Worked in AT and T as consultant of comrise, worked on Dbor project. This is an EAI project that aims to provide a uniform view to client for different products and different backend.
Built the n-tier framework to aggregate different backend to each product, used Strategy pattern for different backend implementation.
Built the template for parallel query to different backend using Message Driven Bean to send message and temporary query to get response message which improved the performance.
Designed and implemented the DborToolSet and several different tools as Free Circuit tool, Dulicate Uso Number tool, Service Disruption Alert, from front end to back end. Each tool involves several different backend. Used Intercepting Filter for configurable security of this web application. Designed input validation library using javascript.
Designed Web Services for Nodal project, used SOAP and WSDL.
Designed applications using Struts and tiles.
Evaluated and proposed WLI as the tool of next Dbor project.
Designed and led DBOR/E-MAP project development. For the first phase, this project is related to 2 backends URSP and EFMS, they are both relational databases. EFMS is a tracking system and we need real time data ; USRP is an ordering system and we decided to load data from there to our local database daily to improve real time query. The project consists of 2 parts : batch load part and real time part.

a. Batch load part load data from USRP and use an external socked based application called map info tool to populate some geo longitude and geo attitude data. 3 stored procedures in USRP and map info tool are used to populate 4 tables in our local database. This batch load part consists of several components : Reader, Mapper, Transformer, Writer. Reader load data from USRP stored procedure, Mapper maps the result from Reader to format of our local database, Transformer performs some transformations defined in the requirement and Writer saves the transformed result to our local database. Mapper and Writer are generic, they is used in other projects only with configuration file change ; Implementation of Reader and Transformer are specific to this project but other projects can write classes that implement same interface.
b. Real time part queries the 4 tables and EFMS and aggregates them and return aggregated result to real time users. This part consists of several layers : access, aggregation and client. Access layer queries the 4 tables in our local database and EFMS. SQL statement for queries to our local database are dynamic, ie, it can vary depending on value of certain input ; query to EFMS involved several tables and lots of business logic. Aggregation layer first goes to our local table to get uso number and then use the uso number to query EFMS and aggregate result from our local database and result from EFMS. Client layer further aggregates result from aggregation layer and provides a client specific view to E-MAP.

I prepared UML diagrams for both part : use case diagrams, activity diagrams for each use case, domain object diagrams, component diagrams, class diagrams and sequence diagrams .I prepared ant build for compilation and ejb, war creation using doclet.


2001 -  2002
Senior Software Designer

HARDWARE PC Solaris Senior Software Designer
Worked in Bell Actimedia, responsible for the personalization of the site BellZinc.
Worked on the project of registration to BellZinc, registration to WebMail and registration to UMS. Reviewed the use case document. Designed the whole system with UML and Rational Rose.
From the use cases, constructed sequence diagrams and class diagrams for registration to BellZinc, WebMail and UMS. Wrote some base servlet classes and EJB classes for web level control and back end control and integrated them with Weblogic E-Commerce Server, Weblogic Portal 4.0.
Proposed to use MVC pattern to separate presentation and application logic and mediator pattern to minimize dependencies between JSP and its controller.
Redesigned the web pages to use XML and XSL instead of HTML to have more flexibility.
Used synchronized token pattern to solve the double submit problem in different cases as registration, online help, etc.
Applied Data Access Object and Value Object Patterns in user management to better separate the business logic tier and data tier.
Redesigned the user language management using session and cookie management instead of weblogic commerce server dependent code.
Designed applications using Struts.
Proposed JSP templating using Composite View Pattern for customized portal design.
Migrated WebLogic Server 6.1 and WebLogic Commerce Server 3.5.
Led developer meeting for technical discussions, focused on OO design, JSP templating, Model 2 XML, XSLT design, UML, J2EE Design Patterns, Custom Tag Library Framework etc.

Mentor of UML and OO design of other developers.
Helped to move backend database from SQL Server to Oracle.


2001 -  2001
Software Designer

HARDWARE PC Solaris Software Designer HARDWARE PC Solaris Senior Software Designer
Worked in SIBN, Cognicase as consultant of Group TGC, Montreal. Responsible to construct the framework of BVI2 in the project ICE
Designed the whole n-tier BVI2 system with UML and Rational Unified Process.
From the use cases, constructed the sequence diagram for self registration, bill payment and administration system and designed the classes for both presentation tier and application tier .I used some of design patterns like MVC to separate presentation and application, Mediator for servlet dispatcher, Command for event handling, Adapter for code reuse, Faade for subsystem encapsulation, Template for small framework construction etc.
Proposed code standard and code review and refactoried some existing code for better reuse.
Written codes for bill administration on both presentation and application tier.


2000 -  2000
Software Developer

HARDWARE PC SOFTWARE Windows 2000 Jsp WebSphere Servlet EJB UML Rational Rose 2000 Design Patterns Software Developer Cimmetry Systems Inc Montreal
Worked on Jvue product with Java, a software to view and edit different kinds of documents.
Used ByteInputStream and ByteOutputStream to deal with communication between Java object and ASP object.
Solved focus problem that exists in several GUI components with requestFocus and FocusManager.
Rewrote several classes with better design and code reuse.
Worked on 1 servlet as middle ware between java web server and DMS. The communication between java web server and servlet was performed through XML and the communication between servlet and Document Management System was carried out through ByteArrayStream.
Constructed the XML RPC framework for the communication between client and server using implementation of helma.
Helped to design SQL server database and maintained the database as a DBA, created maintenance plan for backup and restore, full database backup, differential database backup and log backup.


2000 -  2000
Software Consultant and Data warehouse Architect

HARDWARE PC Software Consultant and Data warehouse Architect Worked in Systemcorp as consultant of Permabec Corporation Montreal HARDWARE PC SOFTWARE Windows 2000 Jsp WebSphere Servlet EJB UML Rational Rose 2000 Design Patterns Software Developer Cimmetry Systems Inc Montreal

Worked on PBFS project with Java. This project management software uses IBM MQ-Series to transfer message in XML format and DB2 as database system.

Proposed project standard, visual source safe rules, Java coding standard, JDBC coding standard.
This project involves lots of databases and the relationships between them are complicated .I proposed general class design for each table to separate different tasks and public interfaces for each class .I used lots of design patterns.
Implemented classes for address book, organisation and filter tables. Each table is related to several classes.

I worked on a financial report application as SQL Server DBA and Visual Basic developer..

Used SQL Server OLAP services to build a MOLAP data warehouse
Implemented the DTS to import data to OLTP database to the data warehouse.
Automated routine maintenance tasks.
Used visual basic to display several reports.


1999 -  2000
Software Developer

HARDWARE PC SOFTWARE Windows NT Java JDBC XML SQL UML and Design Patterns DB2 SQL Server Software Developer Corel Corporation Ottawa
Worked on web form designer for Paradox database with Java, used lots of JDBC and Swing.
Worked on publishing Paradox database to JSP and XML.
Developed software Paradox10 in WordPerfect 2000 finished publishing chart to html with C++, DLL and OPAL functions, used State pattern for Switch between design and run mode of chart.
Worked on BDE sources of Borland under Borland 5.01 fixed some problem of old BDE source files.
Worked on PdxVBA project, created OLE automation server to enable VB users to call OPAL functions, wrote VB client code to test the server, used Singleton for Database management, etc.


1999 -  1999
Analyst and Data Analyst

HARDWARE PC SOFTWARE Windows NT Java JSP XML Visual C++ COM OLE Paradox OPAL SQL Design Patterns Programmer Analyst and Data Analyst Group Barette Chapais Fenclo Montreal HARDWARE PC SOFTWARE Windows NT Java JDBC XML SQL UML and Design Patterns DB2 SQL Server Software Developer Corel Corporation Ottawa
Designed and developed software for optic, laser, forest applications. 1 software end dogging reduces the complexity of the previous algorithm from O to O, another software solves a geometric deformation problem called snap scan with exhausted searches, both are designed with good looking user interfaces.
Implemented and tested the software.
Used Visual Basic and SQL to build result report about the applications.

Wrote SQL server jobs to automate routine works.


1998 -  1999
Software Designer and Researcher

HARDWARE PC SOFTWARE Windows NT CVI C Maple SQL Server Software Designer and Researcher National Institute of Scientific Research Telecommunication Montreal
Designed and developed dense and sparse robust matching software and applied it to 3 - D films.
Implemented and tested the algorithms in C, C++, visual C++, MFC and Matlab.
Developed Intranet web site with HTML and Java applet for demonstration and communication of the developed software


1997 -  1998
Software Designer and Researcher

HARDWARE PC SUN SOFTWARE Windows NT/95 Java C C++ Visual C++ MFC Software Designer and Researcher
Designed and developed the first automatic segmentation algorithm for human brain images.
Implemented and tested the algorithm in C and C++, visual C++, using MFC, ActiveX, ODBC, SQL, the library STL and Vista.
Designed and implemented some user interface in Java for a client server project.


1993 -  1997
Software Developer and Researcher

HARDWARE PC SUN SOFTWARE Windows NT/95 C/C++/Visual C++ MFC ODBC SQL Java JDBC Software Developer and Researcher National Polytechnic Institute of Grenoble France
Designed and developed 5 algorithms in image processing, 2 algorithms in pose estimation.
Implemented and tested the above image processing packages in C and C++, Visual C++, using MFC, OLE, ActiveX, ODBC, SQL and the pose estimation packages in Maple. Each of them gives better performance and speed than previous algorithms.
Implemented and tested the Graphic User Interface of the above packages.

Some work was done using Java, JDBC and Bourne, C, Korn/Z shell.
HARDWARE PC, SUN
SOFTWARE Win95/3 .x, C, C++, Visual C++, MFC, OLE, ActiveX, ODBC, SQL, Java, JDBC

Software Developer and Research Assistant Oct 1992 - Oct1993
Nice University, France
Designed and developed 2 signal filtering methods.
Implemented and tested the improvements, using C and Maple and created the User Graphic Interface for the application.
HARDWARE PC, SUN
SOFTWARE Win3 .x, Xwindows, C, Maple


1997 -  1998

Scholarship in Max Planck Institute Leipzig Germany .


1992 -  1996

Scholarship of French government .


1988 -  1991

Scholarship WuHan University China . LEADERSHIP LEADERSHIP


1998 -  1999
Social cultural director

LEADERSHIP LEADERSHIP Social cultural director of INRS Tele Association Montreal .


1996 -  1997
President

President of Chinese Students Association in Grenoble France .


1991 -  1992
President

President of the Students Association in WuHan University China .




Education

PhD, Specialised Honours of Computer Science, 1997
National Polytechnic Institute of Grenoble, France

MSc, Computer Science, GPA : A 1993
Nice University, France, BSc, Math and Computer Science, GPA : A+ 1992

WuHan University, China.



Miscellaneous

HOBBIES
Go, Chess, Chines Chess, Bridge, Music, Running, Fitness, Swimming and Table Tennis.

I have Canadian Citizenship and I am eligible to work in Canada on a PERMANENT basis or work in US with TN visa.

References and Publication List Available upon Request -





Positive

Negative




Quick People Search



People like Zhong-Dan

Popular skills