Emanuel's Freelancing Projects

In the last ten years or so, I have been more or less actively involved in freelancing and contract work. I usually do this kind of work besides my regular full time job (currently in the position of a Lead Software Developer) (or school (MIT) in the past). I found that doing such work helps me keep up to date with the newest technologies and languages, and it makes me more versatile in the marketplace (the extra money is nice too). On that note, I prefer to charge a per project fee over an hourly pay, which varies from project to project. My skills are primarily concentrated around software, database, web and e-commerce development using Java/J2EE (with J2EE, frameworks, app servers, etc), XML, HTML (with JavaScript, DHTML, etc.), SQL, and others. I have also started working with Ruby, PHP, and ColdFusion and I always have some familiarity with pretty much everything else (C++, ASP, .net, etc.). Most recently I have been involved in serious J2EE application development using Tapestry, Spring, Hibernate and EJB.

The following list of projects excludes what I have done as part of my regular employment, because those can be seen in my Resume.


Easy League

This is a small startup effort in which I have been actively involved for over a year now. It provides a league management platform/service to town sports leagues (baseball, football, etc.). Written in Java 6 and running on Tomcat 6 and MySQL, it utilizes the newest versions of Spring and Hibernate. Currently, it also uses Tapestry for the view, but I will most likely switch to Spring MVC with JSPs (and possibly Freemarker) in the near future. It includes paypal integration for payment support, player, parent, and coach management, league, team, division management, reporting and analysis support and all the other functionality required to run a sports league smoothly and effortlessly. I perform all the technical duties for this startup, including design, development, implementation, deployment, maintenance, technical support, and so on.
To see a demo, please visit http://www.needhambaseball.com:8080/demo

Secure Remote Backup (Socket Client/Server, J2EE based UI with AJAX)

This complex project revolves around secure remote file backup functionality utilizing java sockets with encryption and compression for the actual heavy lifting along with J2EE (MySQL, Tomcat, Hibernate, Spring, Tapestry) for the UI with some AJAX thrown in for good measure (actually we use AJAX to render file system views).
To see a demo of the live system, please contact the project contact named below.
This project was performed in collaboration with Stevel Lintz (slintz@gmail.com)
Started in April 2006, version 1.0 released in November, 2006
Owner: Safe Data Technologies http://www.safedatatech.com
Contact/Reference: Jason Korkin (jkorkin@safedatatech.com)

Institute For Justice (J2EE/Google Maps)

Also currently working on a large scale application for the above-named non-profit organization (which fights against eminent domain abuse). I am the sole developer on this project involving datbase development (SQL Server), back end development (J2EE using Tapestry, Hibernate and Spring), and most of the heavyweight front end development (Google Maps API integration, some HTML and lots of Javascript with XML (AJAX)).
To see some of the front end work, please visit http://maps.castlecoalition.org
Started in September 2005, finished in spring of 2006.

Distributed File Synchronization (JBoss/EJB)

Developed an application somewhat akin to a client/server model using JBoss, EJB and Postgre SQL databases on both ends in order to synchronize (store) image files originating (and temporarily stored) at multiple locations (clients) in one server.
Completed around December, 2006.
Contact/Reference: Pradeep Khurana (pkhurana@continuserve.com)

Implementing a smart card shuffler in java

I have been challenged to implement an algorithm which finds the number of perfect shuffles necessary to bring a deck of cards back to its original order. The deck is comprised of n unique cards and the length of the cut is k where k < n. More details here.
Completed around July 25, 2005.

Setting up PEAR to work with Apache, MySQL and PHP

July 12, 2005.
Owner/Reference: Bob (rgeletasf-cl1@yahoo.com)

Just helped Bob straighten some things out to get everything working together harmoniously.

Setting up Apache, MySQL, PHP (and a few other modules)

Finished in July, 2005
Owner/Reference: Rev. Lance Orndorff (lance@orndorff.com)

Helped set up a server/development environment with Apache 2, MySQL 4.1, PHP 4.4, along with some other modules, and to create and run some examples.

Tomcat/Oracle/JSP/Servlet configuration

Finished in June, 2005
Owner/Reference: Stone Xiu (xxd@excite.com)

Helped fix and upgrade some servlets and JSP pages to work with a newer version of Tomcat and Oracle; then, configured the servers and the application to work correctly.

Muscular Therapist (Website)

Finished in June, 2005.
Owner/Reference: Diane Bennos (diane@musculartherapist.com)
781-953-6586

Natural Product (Website)

I built this online store in 1996 and ran it profitably for a few years, then I sold it and the new owner gave up after a while, so the site is inactive.

The Day Spa (Website)

Built around 1999, this site served as the internet front for a spa, but the spa itself has gone out of business, so the site is gone as well.

The Palace Salon and Day Spa (Website)

Built in 2002 this site has likewise served as an internet front for another spa, but it is also down now.