Résumé
Objective
To develop user-centric, accessible, internationalized quality software in the Bay Area for a responsible, innovative company or organization.
User Interface/GUI experience (14 years)
- Extensive UI/GUI design experience, through software consultation and as the 'UI guy' in development teams
- Accessibility and internationalization (i18n) specialist, with software development experience on four continents
- Experience with creating and reviewing UI design specifications, developing prototypes and conducting usability tests
- Implemented GUI/UI designs in Java (Swing, AWT, servlets/JSPs and applets), JavaScript, C, HTML, CSS, PHP, Delphi, Visual Basic and other languages
Java experience (10 years)
- Java desktop/control application specialist. Swing, AWT, and the core Java foundation class expert (JFC/JRE/JVM)
- Sound understanding and experience with generic types, JavaDoc, multi-threading, Swing drag-and-drop and JUnit
- JSP and Servlet skills. Java Struts and J2EE experience
- Middle- and back-end experience, including JDBC, JavaBeans, RMI and Apache configuration
- Experience with Eclipse, Java Studio, IntelliJ, Visual Café and vim (vi-improved) scripts for Java, including self-developed scripts
- Experience with Apache Tomcat, Microsoft IIS and other web servers, Perforce (P4), CVS and other source control systems, WebLogic, WebSphere and JBoss, and Apache Ant
- Sun-certified Java 2 Programmer
Other Programming Language and Technological experience
- 10 years of C experience through the development and maintenance of GUI and text-based desktop applications and server-side software. Experience with C++ code maintenance
- Experience with JavaScript, PHP, Delphi, Visual Basic and other languages
- Extensive development experience under Linux, Unix and MS-Windows. Familiarity with Mac-OS, OS/2 and TheOS. Habitually tests implementations under multiple platforms
- Substantial experience with Windows/DOS batch files and Unix shell scripting
- SQL experience, including MySQL, PostgreSQL, Oracle and other RDBMSes
- Experience with XML, including XSLT, SAX and DOM
General
- History of extensive client contact through analysis, design, testing, deployment and maintenance of software
- Track record for producing highly-maintainable, well-commented code, with JavaDoc documentation for all Java classes
- Experience with developing help systems, reports and user documentation
- Strong testing methodology. Habitually writes unit tests while writing code
- Excellent verbal communication skills, writing skills and 'people skills'
- Extreme Programming (XP) experience; familiar with Eclipse programming
- Comfortable in geographically disparate teams, face-to-face teams and as a sole software engineer. Team leadership experience
- Bachelor of Computer Science
- U.S. and Australian citizenship
Employment History
PlayFirst, San Francisco, California, U.S.A.
Senior Web Developer—March 2007 to present
As part of a three-member web development team, I am undertaking the full life cycle of the company's web site using Servlets, JSP, Jacarta Struts and JavaScript.
Applied Biosystems, Foster City, California, U.S.A.
UI/Software Consultant—January 2006 to February 2007
I developed the Java Swing UI component for a Real-Time Polymerase Chain Reaction System (a biotech instrument). I was also responsible for internationalization and Chinese localization of the product.
diCarta, San Carlos, California, U.S.A.
UI/Software Consultant—January to August 2005
As part of a nine-member front-end team, I developed Servlets, JSP, Jacarta Struts and JavaScript, to enhance diCarta's contract management software. I also took part in a refactoring and bug-fixing campaign to enhance the quality of this four-year-old software package.
Cemantica Corporation, San José, California, U.S.A.
UI/Software Consultant—December 2003 to December 2004
As the 'UI Guy' in a small startup development team, I contributed to the design, implementation, testing and deployment of a data transformation system. This was about 60% Java Swing, and 40% JSP, Servlets, Struts and JavaScript.
Sarwaja Timur, Kuching, Sarawak, Malaysia
UI/Software Consultant—March 2003 to 2004
As a sole software contractor, I developed a multi-threaded, English/Malaysian-language, Swing-based GUI to comply with local customs and modern GUI standards. This was designed to interface with the hardware controller I wrote in C for Transfield some ten years earlier (see below), which I also updated.
EverythingLinux.com.au, Five Dock, New South Wales, Australia
Software Consultant—December 2002 to February 2003
I developed stock management and accounting tools for internal use using PHP and MySQL.
Innovative Interfaces, Inc., Emeryville, California, U.S.A.
Software Engineer—April 2001 to July 2002
As a member of a large XP team, I developed and maintained a multi-tiered library management application, used by public and academic libraries worldwide. The clients are Java Swing applications, Java servlets and text-based unix applications written in C. The application's server, which I also maintained, is written in C, runs under various flavors of Unix, and uses either a proprietary flat-file based DBMS or Oracle for the data tier.
Berkeley Consultants Group, San Francisco, California, U.S.A.
Software Consultant—June 2000 to April 2001
I worked either by myself or in small teams on various small projects for corporate clients, using Java Swing/AWT, Applets, Servlets/JSP, C and C++. I initiated client contact, took part in project analysis, presented proposals, developed and deployed the final products, and wrote user and programmer documentation.
VantageMed Corporation, Sacramento, California, U.S.A.
Diagnostic Programmer—July 1998 to June 2000
I did maintenance coding for various medical practice management applications, wrote data repair and conversion tools to aid migration from legacy systems, lead a team of data conversion specialists, wrote technical and user documentation and did higher-level customer support on site and via telephone. The code I wrote and maintained was in Java, C, Visual Basic and TheOS Basic, and ran under Windows, Unix and TheOS platforms.
Queer Collaborations, Hobart, Tasmania, Australia
Software Consultant—November 1997 to June 1998
I developed a conference registration Java applet and provided support for its users.
University of Western Sydney, Kingswood/Parramatta, New South Wales, Australia
Tutor/T.A.—February 1996 to November 1997
I conducted tutoral sessions (16 to 200 students) on database concepts, software development and project management. I also graded student work.
Transfield Pty Ltd, Seven Hills, New South Wales, Australia
Software Consultant—March 1994 to May 1996
As a sole software contractor, I designed, implemented in C and maintained a GUI-based control system for hardware that structurally tests high-voltage transmission towers.
Synchrotech Software Ltd, Thornleigh, New South Wales, Australia
Software Consultant—July 1993 to June 1998
Initially as a contractor, and then as a member of a team of 6 to 8 developers, I developed and maintained hospital information systems in Visual Basic. This included interfaces with specimen testing equipment and the hospital mainframe system. I also conducted on-site software and hardware support.
Education
Bachelor of Computer Science
1997, Distinction ('A') average grade, University of Western Sydney—Kingswood/Parramatta, New South Wales, Australia
Bachelor of Computer Science (University Exchange Program)
1995, Dean's Honor Roll, California State University, Sacramento—Sacramento, California, U.S.A.
Sun-Certified Java 2 Programmer
2001, Sun Educational Services—San Francisco, California, U.S.A.