Portfolio
Below are a couple detailed examples of my professional work over the years. If you’d like a more summarized complete view of my professional work check out my CV/Resume.
Zynga
Senior Software Engineer 10/2010 - 09/2012
The Ville - 2012
- Developed tools and technology to support designers making facebook games
- Developed and supported massively scalable server technology to support millions of daily active users for The Ville product
Electric Bat Interactive
Lead Software Engineer 9/2008 - 10/2010
Weblords - 2010
Weblings 2.0 Pets - Launch April 2010
Weblings Initial Release - September 2009
Terracotta Distributed Memory Clustering
During our initial server architecture design we researched various ways to handle scaling of a Java server in a clustered environment that is using Hibernate as its persistence layer, and we came across a very powerful technology called Terracotta.
Terracotta essentially extends the Java memory model and concurrency model to multiple distributed JVM’s. This allows you to write your Java applications as a “normal” multithreaded application where some of the “threads” are actually the other distributed JVM processes. Below are some sample technical write ups I did describing Terracotta and it’s potential application to our server architecture.
- Webwars Terracotta use cases
- Terracotta Tutorial
NCSoft
Software Engineer 10/2007 - 9/2008
Java MMO Client With Guild Wars Server:
I worked on an unannounced project building a java MMO client using the jmonkeyengine which uses OpenGL to implement a scenegraph 3D engine. The client is connected to a modified Guild Wars server through a cross-language messaging system similar to Apache Thrift or Google protocolbuffers.
Java World Builder Tool:
At NCsoft we were building a 3D Java MMO game client, and also we built Worldbuilder tools in Java to allow designers to build different zones for the game. The following is a video demonstrating the capabilities of the Worldbuilder tool written entirely in Java utilizing the jmonkeyengine OpenGL technology.
Java OpenGL 3D Applet with Google Maps
We wrote a prototype to demonstrate a 3D Java applet that uses the jmonkeyengine that can communicate with Javascript applications and webservices using JSON messages. As an example we had a 3D globe that could be rotated and animated and the user could select a point on the 3D globe and the embedded Google Maps view would reflect the Lat/Long selected.
General Dynamics C4S
Software Engineer 1/2004 - 10/2007 Work was done for Government and Military contracts, See my Resume/CV for details.
Bay Computer Associates
Software Engineer Internship 6/2003 - 8/2003
I worked at Bay Computer Associates as a summer intern doing embedded software development and had the great opportunity to work on a variety of projects ranging from building a TCP/IP protocol stack and embedded web server to control an embedded device, to building .NET applications to support bug tracking and feature requests.