Implemented the Flipbook Wizard, a quickstart "wizard" approach
to creating Flipbooks to lower the barrier of entry for Facebook
After the restructuring of Flip.com, in which it was streamlined
into a social network application,
took over as tech lead of the project, including all
new development and maintenance of the Flip application
Flex, Java, Facebook, MySpace, OpenSocial
Implemented integration of Flip.com's Flipbook Creator with Photobucket.com
, a photo hosting/sharing site, into Flip.com's Flipbook Creator.
Flex, Actionscript, FlexBuilder
Joined the development team of Flip.com
, a social networking site
Flex and php, using IBM's Websphere application server,
the Clearcase source management system and a unix development environment.
Work involves interaction with all of CondeNet including a QA department and editorial, and the developers on CondeNet's other websites.
Designed and implemented the Standard MVC Application Framework (nicknamed "Jakeworks"), that
refactors away a lot of the functionality common to most Swing apps written at HBO,
and also enforces a standard MVC pattern at compile time in the resulting application code.
The framework was used with great success on the NQC project (see below), eliminating a
significant percentage of the code base and promoting a more Agile-ish development process.
It is expected to be used as the foundation for many client-side projects in the department
going forward. The framework leverages Java's strong-typing, generics, and the liberal use of
template-methods and abstract classes to let the compiler and IDE (IntelliJ) do as much of the
work and decision-making as possible on the part of the end developer.
"The OO Presentation": co-created a presentation on object-oriented design,
how to read UML diagrams, and a bit about The Unified Process development cycle.
Delivered the presentation to non-developer groups (reporting, DBAs, business analysts)
in the department on an ongoing basis, to acquaint them with the motivation and process
behind the developers' design decisions.
Co-chair, CHOIR Communications Team: elected to the communications team of the department-wide
"CHOIR" advisory board. Communications team develops approaches to improve communication throughout
the department, including the research of online collaboration tools, group outings to promote
team-building, and best practices with regard to email and other online and offline communication.
Proposed the idea of organizing full-day team volunteer outings to promote team-building, taking
advantage of Time Warners's benefit of 5 salaried days available for volunteer work,
which otherwise generally goes unused. Concept still in development.
Helped implement the front-end of the NQC
project (Network Quality Control),
a Swing/Spring/Hibernate system that streamlines a highly detailed and stringent
process for managing and screening all media assets that enter the company,
including integration with a third-party tape management system.
Used Velocity templating engine to produce html reports on the fly.
Java 1.5, Swing, Spring, Hibernate, Velocity.
Helped lead a reading group on "gang-of-four" Design Patterns, presenting and leading discussion
of a number of patterns.
Researched object-oriented and post-relational databases and how they might
be integrated into the existing enterprise, focusing on db4object. Research ongoing.
Researched online collaboration tools, including wikis and various proprietary products.
Designed and implemented the front-end for the Tango
project, an invoicing system
catering to multiple departments of the company. Contributed significantly to
the analysis/design models and backend design. Made use of Jasper Reports
to generate invoices as PDFs.
Java 1.5, Swing, Spring, Hibernate, Jasper Reports, UML.
Editor/Co-author: department-wide best practices documents for
Jakarta Struts and Java Server Faces web technologies.
Budget Year Admin web application: collected requirements, designed user interface,
implemented web front-end using JSF (Java Server Faces). Application allows Finance
department to control departmental yearly budgets and control access to the company-wide general ledger.
APL (Account Profit/Loss) Reconciliation project: programmatically reconciles Sales
and Marketing user's orders with the company-wide General Ledger, making sure
the two sides reconcile and facilitating the research of discrepancies for the
Finance department. Collected requirements, designed
user interface, architected, designed and implemented front and back end (Struts,
EJB 2.0, JDBC/SQL, Oracle).
Ongoing development of the HBO Common Library (department-wide java library). Wrote HBO's custom Java/Swing drag-and-drop
framework, providing image-dragging and data flavor functionality
within Java 1.2 and 1.3, and used in numerous applications department-wide.
Joined the CCPI project, a large-scale Swing/EJB 2.0/Oracle application
used to manage operation of HBO's telemarketing incentive
programs and contests. Did debugging as needed and wrote new
functionality to meet a number of hard business-driven deadlines
and deliver much complex functionality in little time. Worked
on both client and server as needed.
Debugged and rewrote large portions of the iBroadcast
project, a large-scale Swing/EJB 2.0/Oracle application used
in Asia and Europe to control virtually all of HBO's overseas
broadcasting operations, including tracking tapes and shipments,
scheduling on-air programming and managing on-air interstitial
content. Much refactoring was required because the project
was originally outsourced, and proved unmaintainable in its
original state. Also implemented many new features, client-side and
server-side. Brought on to help the team meet a tight deadline.
Designed and implemented the Sports Tape Logging project, an EJB 2.0,
JSP/Struts/SQL/Oracle web app acting as a conduit between the third-party Media Log
videotape-logging application and our database.
The app uses the Context InterMedia database indexing package to provide
fast and flexible text-searching capabilities similar to that of a web
Helped design and develop the Swing client and developed parts of the EJB 1.1/Oracle
server of the New NOVA project, a large enterprise/Weblogic 5.1 application
intended to replace a legacy mainframe system that controls the authorization
and descrambling of HBO's and other vendors' cable channels for distribution
to a complex affiliate network.
Collected analysis requirements and co-designed the user interface of the
New NOVA project. Developed numerous and extremely varied approaches to the GUI as
the functional requirements of the system fluctuated. Made frequent
presentations of the GUI to users as it developed and changed, including
prototypes written in Java/Swing, to determine front end usability. Authored
extensive documentation of the GUI's behavior and of the functional
requirements of the system.
Debugged, extended and redesigned much of the front-end Report Broker
product, a browser-based database report scheduler (subset of the WEBFOCUS
package). Worked with Java, JDK 1.0 and 1.1, Cafe Pro, and FOCUS database
language, all on NT. Rewrote parts of the backend report scheduler to use
Java servlets and JDBC/SQL, and converted the existing FOCUS scheduling
database to SQL.
Implemented the Portable FOCUS product, converting existing software to a
multi-platform software package. Worked primarily in C, with conversion of
and integration with FORTRAN code, and worked with FOCUS language. Worked
on UNIX with use of CMS mainframe.
Helped implement the first international language-support version of FOCUS
for Windows. Wrote sections of the front-end, and did general debugging
(all work done in Visual C++, MFC).