About Me

Einstein wrote that you should "Make everything as simple as possible, but not simpler". Using my experience in the field, and my ability to visualize solutions from abstract ideas I am able to make this statement reality by creating systems that solve complex problems using simple solutions.

Software development is the art of creating concrete implementations from abstract ideas using the best tool for the job. I am not a Java developer; I am a developer who regardless of the problem at hand will use the best tool for the job utilizing techniques that supersede programming languages and APIs.

Skills

The following section contains a brief overview of some of the technologies I've utilized during my career.

Java

I've been developing professional Java solutions for 7+ years utilizing a variety of toolsets for projects both on and off the web. I've developed a deep understanding of the core Java language and am constantly picking up new technologies through self driven study and experimentation. In addition to the core libraries (1.1 through 5.0) I also have experience with the following third party APIs:

  • Hibernate (version 1+)
  • Servlet / JSP
  • Spring
  • Groovy
  • Ant / Maven
  • Log4J
  • Jakarta Commons (logging, lang, collections, etc)
  • JUnit / TestNG
  • JGroups
  • JBoss APIs (JBoss-Cache, JBoss-JMX, etc)

(several technologies have been left off for the sake of brevity)

Database Design

Over my career I've had the opportunity to work with a variety of different database technologies, and as such have a good understanding of database design and implementation in the real world. Some of the database technologies I've developed for include:

  • Oracle (version 7+)
  • Oracle PL/SQL
  • MySQL
  • DB2
  • McKoi
  • Derby

Other

Operating Systems

Throughout my career I've worked and developed for a wide variety of operating systems. I have functional experience with the following operating systems:

  • Mac OS X (10.0 - 10.4)
  • Windows (3.1 - XP)
  • Solaris
  • Linux

Ruby On Rails

As someone who had developed using Ruby pre-Rails and the power it enabled towards object oriented design I was thrilled when Rails was released. Since that time I have deployed projects using Rails and have found it be a great tool for the right project. My experience with large enterprise software has given me the tools to develop projects utilizing rails that are secure, fast and finished in a short period of time.

Minor Skills / Software Tools

Finally the following lists some technologies and software packages that I've also become familiar with that I've used supplement my major skill-set:

  • Java IDEs (IntelliJ IDEA, Eclipse, Netbeans)
  • SVN / CVS
  • JProbe
  • AspectJ / JBoss AOP
  • Adobe Photoshop
  • Adobe Illustrator
  • Dreameaver
  • HTML / CSS / Javascript / AJAX
  • Cocoa
  • PHP
  • Perl
  • Shell Scripting

Experience

I've used my skills to create a large variety of projects for a number of different companies. The following is just a small sample of the type of software I've had the pleasure of developing:

  • Cross-Platform Laboratory Information Management System
  • Private Airline Reporting System
  • Credit Card Processing APIs
  • Online Game Servers
  • Online Travel Booking Systems
  • Design Documentation Consulting
  • Project Quality Review Consulting
  • Large Corporate Online Storefronts
  • Large Corporate Identity Websites
  • Small Niche Websites

For a large variety of companies including:

(a more detailed list can be found using the resume links at the bottom of this page)

Contact Information

If you need to contact me you can do so directly through email at chris@shorrockin.com.

Additionally you can download a Word or PDF copy of this resume by clicking on the preceeding links.