F. Grahame Murray
Raleigh, NC 27604
Last Updated: Sunday, May 3rd, 2009.
Check http://grahame.com/ for the most recent version, available in HTML, PDF, Word and text.
Java, JEE, PHP, AJAX, Javascript, Servlets, XML, XSLT, JSP, HTML, SQL, PERL, CGI
I am looking for a full-time position as a lead and/or senior software engineer, designing and developing challenging, interesting, and dynamic web applications.
- 10+ years software development and design experience
- Product development and consulting experience
- Depth in educational and community projects
- Java web application development on mainstream application servers
- Application design and modeling
- Presentation layer coding and scripting (HTML, JSP, PHP, DHTML, XSLT, JavaScript, AJAX, PERL, ColdFusion)
| Technical Lead & Senior Software Engineer,
September 2002 - Present | BBH Media | Raleigh, NC |
- Architected and developed and new website platform; moving all high-volume sites into a centralized, load-balanced, three-tier, standardized codebase using jQuery, PHP on Zend Framework, SOAP, JPA, EJB3, MySQL, and Lucene
- Built a web-service-exposed, JEE middleware to power customer self-service and management portal using JPA, EJB3, SOAP, and MySQL
- Architected, designed, and developed a scalable, clustered, high-availability, J2EE-based content authoring and management system using JBoss, Hibernate, JSP2, XSLT, and SQL Server
- Designed, optimized, and normalized all major business systems' database schemas
- Developed custom content management system using JBoss, EJB, Struts, Velocity, JSP, JSTL, and PostgreSQL
- Made heavy use of DHTML and JavaScript for both front-facing and internal applications, including remote scripting and AJAX
- Built and extended a custom PHP-based CMS system for e-zine publication
- Wrote functional, integration, and unit tests
- Administered CruiseControl and Hudson continuous integration and build systems
- Mentored junior and new engineering hires
- Documented requirements for outsourced projects
- Designed and built internal web applications to automate internal business functions, such as content publishing, indexing, and search
- Built international, multi-currency money management system, including automated thirty-party import and international credit card processing
- Created and maintained PHP and PERL scripts for website management and content validation
- Ported and rewrote legacy PERL scripts with more robust PHP scripts, also adding new site features such as pagination
- De facto and acting Linux, BSD, and Windows system administrator
| PROJECTS: + Redesign of websites using Zend Framework + JEE(J2EE) Content Management System + PHP Electronic Zine CMS + Multi-currency Payment Processing System + Public PHP & PERL scripts
| |
|
|
| Lead Engineer,
May 2002 - September 2002 | Sun Microsystems | Menlo Park, CA |
- Led engineering effort for devCK, Developer Community Knowledge project
- Main developer for reimplementation of JCP site, tasks included:
- Redesigning the entire DB schema, as well as creating object-relational mapping
- Porting and upgrading the administrative site from old Vignette TCL to the new Java platform
- Rebuilding the public website from JSP (Model 2) site to MVC, as well as using the new data model
| PROJECTS: + Java Community Process
+ Developer Community Knowledge
| |
|
|
| Java Engineer,
September 2001 - January 2002 | James Irvine Foundation | San Francisco, CA |
- Independently contracted with the James Irvine Foundation to complete Coral Connect project.
- Designed and implemented message boards, file storage, address book, and other interactive services of the project using Arsdigita Community System, XML, XSL, and Oracle 8i.
- Configured qmail, Courier IMAP, JWMA Web mail, and ACS for Java on Solaris 2.8 for custom integrated webmail feature.
| PROJECTS: + Coral Connect
| |
|
|
| Java Systems Engineer,
March 2001 - September 2001 | Liquid Thinking | San Francisco, CA |
- Designed and implemented binary parsing, scoring, and other educational algorithms for an interactive educational product using Rational Rose and ATG Dynamo 4.5.
- Architected and designed file system integration for intranet using Arsdigita Community System 4.6, XML, and XSL.
- Implemented product family parametric search for Cypress Semiconductor using JavaScript, PERL, and ColdFusion.
- Led Quality Assurance effort for Certicom site redesign using Logigear TrackGear.
- Began work on CoralConnect but entire team was then down-sized (finished at subsequent position with James Irvine Foundation)
| PROJECTS: + Leap Track
+ Cypress Semiconductor
+ Certicom
+ Coral Connect
| |
|
|
| Software Engineer,
June 1999 - February 2001 | SRI International | Menlo Park, CA |
- Architected and implemented many web applications, online surveys, and web assessments using Java Servlets, JSPs, XML, and MySQL databases.
- Designed and coded various reusable frameworks, from survey tools to database abstraction layers.
- Co-developed and designed ChemSense, a Java-based Knowledge Building Environment for high-school chemistry students.
- Built CILT Knowledge Network and affiliated web sites, and single sign-on framework in Cold Fusion and MySQL on Linux.
- Designed and authored TeamLab, a Palm Pilot-based open-ended assessment application, desktop conduit, and website that supports off-line data collection and on-line statistical analysis.
- Helped port URLex from Python code to Java.
- Implemented Instructional Metadata IMS Metadata XML Generator tool, on a contract for Sun Microsystems
| PROJECTS: + TeamLab
+ ChemSense
+ CILT KN
+ URLex
+ LOM-IMS XML Toolkit
| |
|
|
| Software Engineer Intern,
June 1998 - August 1998 | SRI International | Menlo Park, CA |
- TAPestry Java applet maintenance and enhancements for TappedIn, an online community of educators.
- Extended functionality of URLex, an online community and web-based bookmark management web application, written in Python and Javascript.
| PROJECTS: + TappedIn
+ URLex
| |
|
|
Computer Languages:
Java, JSP & JSTL/EL, XML, PHP, DHTML & XHTML, Groovy, XSLT & FO/P, PERL, Javascript, bash, Python, Velocity, i18n, C, C++, ColdFusion, Lisp, MIPS assembly, InstallShield Script
Databases:
MySQL, MS SQL, PostgreSQL, Oracle, Solid, FileMaker Pro, mSQL, Access
Platforms:
JBoss, Tomcat, Zend Framework, Spring, Resin, ColdFusion, Vignette, ATG Dynamo, Arsdigita ACS
Tools:
IDE: IntelliJ IDEA, Eclipse, NetBeans, Xcode, Visual Studio, CodeWarrior, JBuilder
Modeling: Visio, Rational Rose, Visual Paradigm, Poseidon, Argo UML
Version Control: Subversion, CVS, Perforce, SCCS, RCS
Bug Tracking: JIRA, Bugzilla, Eventum, TrackGear
Web UI: jQuery, YUI
Build: Ant, Hudson, Cruise Control, Maven2, Make
Unit Testing: JUnit, Cobetura, EasyMock, JMock, Cactus, TestNG
Performance Testing: JMeter, Apache Benchmark, JProbe
Caching: Memcache, APC, XCache
Web/Integration Testing: Selenium, JProbe
Search: Lucene, SOLR, Verity
Persistence: Hibernate, JPA, EJB, OJB
MVC: Struts, Grails, Spring MVC, Cake PHP, Bebop
Virtualization: VMWare Server, ESX, Xen
Messaging: JBossMQ & JBoss Messaging
Text Editor: vi(m), Emacs
Installer: InstallShield, NSIS
Command Line: GNU tools, Cygwin
IM: Jabberd, Openfire
Aspect Handling: AspectJ, JBossAOP
OSes:
Windows Vista/XP/2000/NT, Linux, MacOS, Solaris, PalmOS, BSD, SunOS
Disambiguating Drag-and-Drop: The Click-and-Fill alternative to managing hierarchies
I explained my implementation of a new "Drag and Drop" like interface
Published: CHI 2000 Conference Proceedings, April 6, 2000
Workpad + Palm Series Powered Pack 2000 Edition
My software was written up, rated, and included on accompanying CD-ROM
Published: ASCII Corp., March 10, 2000
Workpad + Palm Series Powered Pack
My software was written up, rated, and included on accompanying CD-ROM
Published: ASCII Corp., June 11, 1999
1995 - 2000
Goucher College Towson, MD
BA in Computer Science
Courses in Java, LISP, 3D Graphics, A.I., Assembly, Software Engineering, Algorithms, Hardware Architecture, and Computation
Summers 1994 - 1997
University of Delaware Newark, DE
Graduate & undergraduate courses in C, C++, compiler design, computer graphics, and multimedia design.
Available upon request