Resume
JOHN HODGSON
jabhodgson@computer.org
ENTERPRISE APPLICATION ARCHITECTURE AND DEVELOPMENT
OVERVIEW
PROFILE
John Hodgson is a senior architect and
developer in the field of high performance
multi-tier Web and client-server business
computing. He has provided technical
leadership and designs in areas of
application architecture, object-oriented
analysis and design, integration with
databases and other services, system
administration and management, and
testing/deployment on a wide variety of
enterprise projects. His recent experience
is with Sun Java 2 Enterprise Edition. His
professional interests include Java-based e-
commerce solutions for the intranet and the
Internet, and integrating powerful middle-
tier business services with evolving e-
commerce Internet application architectures.
PROFESSIONAL OBJECTIVES
-- Stay on the leading edge of enterprise
and e-commerce technology
-- Provide technical leadership for
outstanding business software
-- Achieve satisfaction through high
quality of services
-- Build a reputation for technical
excellence and reliability
CORE EXPERTISE
-- Java 5.0, generics, annotations, JDBC,
JAVA 2 Servlets, JSP, JSTL, JTA, JMX, XML
ENTERPRISE technologies including JAX-WS, JAAS, J2CA,
EDITION JavaBeans, RMI, CORBA, JNDI, ANT, EJB
(J2EE) -- Spring Framework, Struts, Velocity
-- BEA WebLogic Server 9.2, Websphere 5,
Tomcat, clustering
-- Data: advanced ER modeling, database
ORACLE design, normalization and optimization,
physical and conceptual models
-- Client:: Advanced SQL, SQL
optimization, client configuration, JDBC
drivers, SQLNet
-- Server: End-to-end performance tuning
and troubleshooting, Oracle server/session
parameter optimization, unix server
optimization, table and storage
optimization
-- Service Oriented Architecture (SOA)
APPLICATION design patterns
DESIGN -- Web services
-- High usability Web application design
and business process analysis, including
portal and portal-type applications
-- Custom framework design and development
-- Deep knowledge of Java and J2EE usage
and design patterns, including synchronous
and asynchronous access and processing
patterns
CHRONOLOGY OF PROFESSIONAL EXPERIENCE
Sept. 2005-Feb. 2007 Workbrain, Inc. Toronto
J2EE Technical Architect
n Definition and development of new, top-
level, service-oriented architecture for a
large multi-module application used by major
corporations worldwide; technologies: Spring
Framework 1.2.7, 2.0
n Design and development of interoperable
Web services infrastructure and frameworks;
technologies: Apache Axis 1.4 and WSS4J
1.5.0, WS-I
n Development of new frameworks for
dependency injection, services, and Web MVC;
technologies: Spring Framework, J2EE Servlet
2.4, Apache Velocity, WebLogic Server 9,
Websphere 5 (basic administration,
application deployment and extension),
Oracle 10g, DB2 v8, SqlServer
n Integration with legacy application
components, including transaction management
n Definition of new design and coding
standards
August 2005 Environment Canada Toronto
Senior Consultant, John Hodgson Software
Inc.
n Audit and review of proposed
application architecture for an in-house
thick client data entry multi-tier
application; technologies: J2EE, Swing,
JDBC, javax comm
n Revised the high-level architecture and
mentored on architectural methodologies
n Provided advice on composition of
development team and on project cost and
schedule estimation
June 2005-July 2005Canadian Standards Association Toronto
Senior Technical Architect, John Hodgson
Software Inc.
Designed and developed custom Model-View-
Controller framework with clustering
(failover) capability for high-availability
enterprise portal environment; technologies:
SAP Enterprise Portal 6.20, JDBC, Oracle
Dec. 2004-Jan. 2005 Environment Canada Toronto
Senior Consultant, John Hodgson Software
Inc.
n Audit and review of application
architecture, design patterns, and practices
for an in-house multi-tier application based
on Java 2 Enterprise Edition; technologies:
JBoss, JMS, EJB, JDBC, JTA, JMX, Hibernate,
Erwin, Oracle, Postgres
n Some higher-level mentoring and
training of application developers
Jan. 2000-Sept. 2004Mackenzie Financial Corp. (Canada) Toronto
Senior Technical Architect, John Hodgson
Software Inc.
n Provided OOAD and architectural
technical leadership and mentoring for
initial team of four in-house Java
developers; technologies: J2EE, WebLogic
Server 6.1, JBuilder
n Designed and developed a high-
performance enterprise-wide business domain
information service in Java, as a
cornerstone architectural component to be
used by all future enterprise applications;
technologies: RMI, CORBA, JNDI, JDBC
n Designed and developed custom,
enterprise-duty Java framework and utility
packages to complement and extend standard
Java packages
n Initiated configuration management
practices for Java, including package
hierarchy, version management, and build
framework to support future development;
technologies: PVCS 6, unix scripting, Apache
Ant
n Liased with data department on issues
of business domain data modeling;
technologies:: S-Designor (now
PowerDesigner), Oracle, Erwin
n Provided technical advice on a variety
of issues, e.g., integrated development
environment tools, operating systems, and
system testing; technologies: Velocity,
Rational Rose, TopLink, Cocobase,
Optimizeit, LoadRunner
n Designed and developed a high-
performance data service, including a custom-
designed object-relational mapping and
persistence layer, to support uniform,
enterprise-wide data update services;
technologies: JDBC
n Architected a Web browser-based data
entry application, including design and
development of a Model-View-Controller
framework., for dealer and sales
representative support; technologies: J2EE
Servlet 2.3, WebLogic Server 6.1, Struts,
JSP, JSTL
n Architected a highly scalable and
extensible Web browser-based inquiry and
reporting system, with initial deployment to
customer support; technologies: J2EE Servlet
2.3, WebLogic Server 6.1, Struts, JSP, JSTL
n Provided technical advice and support
for configuration and administration of BEA
Weblogic server; technologies: WebLogic
Server 6.1
1998-Jan. 2000 DMC Inc. Toronto
Senior Consultant
n Designed FortE 4GL three-tier
architecture and applications for securities
trading data entry at Merrill Lynch Canada
n FortE development, deployment, and
administration (Solaris/Sybase)
n Performed OOAD, business modelling, and
forward-reverse engineering
1996-1998 Descartes Systems Group Inc.Waterloo, Ontario
Senior Software Engineer
n FortE 4GL and FortE Express client-
server development (NT/Oracle)
n Integrated Seagate Crystal Reports as a
middle-tier service for scalability
n Wrote autodocumentation application for
development environment
1995-1996 University of WaterlooWaterloo, Ontario
Lecturer
n Prepared and delivered C++ and other
computer courses, 1st-year Engineering
n Prepared and delivered algorithms
course, 4th-year Engineering
1989-1995 University of WaterlooWaterloo, Ontario
PhD Candidate and Research Assistant
EDUCATION AND PROFESSIONAL DEVELOPMENT
1999 Oracle Mississauga, ON
Oracle8 for Application Developers
1996-1998 FortE Oakland/San Francisco, CA
n FortE Forum, presented paper at annual
convention (1998)
n FortE Fusion (Conductor) course (1997)
n FortE System Administration course
(1996)
1998 Seagate Crystal ReportsWaterloo, ON
n Report design course
1989-1995 Ph.D. University of Waterloo
n Pattern recognition and artificial
intelligence research
n Extensive unix, programming, and
Internet development experience
1984-1987 M.A.Sc. University of Toronto
n Plasma physics and fusion reactor
materials research at University of Toronto
Institute for Aerospace Studies
1977-1981 B.A.Sc. University of Toronto
n Engineering Science, Aerospace option
MISCELLANEOUS
n Fluent in English, Russian and German
n Professional Engineer (Ontario), Member
IEEE Computer Society
TECHNICAL EXPERTISE
Category Years
GUI/Client front end 4 (JSP, Struts, Javascript),
4 (FortE)
Middle-tier and back 5 (J2EE), 4 (FORTE)
end
3 GL 13 (C), 11(C++), 13 (Lisp)
Java 8
Operating Systems 15 (unix), 8 (NT/95/2000/XP)
HTML 10
Application Server 4 (BEA WebLogic Server)
SQL 8
Reporting Tools 1 (Crystal Reports), 1
(Actuate)
CASE Tools 4 (S-Designor), 2 (Select),
1 (Rational)
OOAD 9 (generic), 4 (UML)
Databases 8 (Oracle), 1 (Sybase)
Configuration 4 (PVCS)
Management
Data 6
Modelling/Analysis
Project Management 3
SUMMARY OF RECENT TECHNICAL QUALIFICATIONS
JAVA
-- extensive practical experience with Java and J2EE packages
and APIs; knowledge of most recent updates in Java 1.5, latest
features of Java 2 Enterprise Edition including Servlet, JSP,
JSTL, EJB 2.0, JDBC 2.0, JTA, JNDI, JAAS, J2EE security, JMX; Java
language syntax and semantics, effective package hierarchies;
Javadoc inline documentation; design for multithreading, compile-
time and run-time features, virtual machine organization; Java
distributed computing with RMI; experience with advanced IDEs,
e.g., Borland JBuilder and IBM Visual Age for Java; experience
with application servers, e.g., BEA Weblogic Server, best
practices of distributed computing, Web, thin- versus thick-
client, Internet, and intranet, and user interfaces.
CORBA
-- practical experience with ORBs, understanding of CORBA 2.3
Java-IDL mapping, RMI over IIOP, CORBA service for two-phase
distributed transaction control, naming service, Java wrapper APIs
for CORBA services
CONFIGURATION MANAGEMENT
-- practical experience with setting up a version control and
management system involving multiple developers in PVCS, promotion
groups, version labeling; automating the build process for Java
and J2EE applications and libraries using GNU make
UNIX
-- extensive experience with SunOS and Solaris since 1989, and
recently with Linux
-- shell scripts, job control, batch jobs, basic system
maintenance, Xwindows (OpenWindows, CDE), compilation and
debugging, network utilities
OOAD
-- practical experience with Rational Rose and Select, OMT and
OID diagrams, forward- and reverse-engineering, developed
effective design patterns for distributed multi-tier client-server
applications, familiarity with various basic design patterns in
enterprise computing, use case analysis, storyboarding, and
interviewing of users
DATABASES
-- practical knowledge and experience of databases (Oracle,
Sybase), normal forms and good schema design, DML and DDL,
performance issues (multithreaded libraries, disk and RAM
utilization), performance tuning issues and indexes, partitioning
of processing (stored procedures vs. middle-tier processing),
multi-transaction data concurrency, contention, and integrity