James P. Wells
www.jameswells.net  |  james@wells.net

Senior C++ Developer

Summary of Qualifications:
Professional Experience:
Software Engineer
IPFX
June 2005-
Present
IPFX is a small, private company that builds VoIP solutions for call centers.
  • Built a replacement for the existing database server. This allowed remotely connected software clients to have access to the company's database layers.
  • Extensive work in a client application framework. This middle layer software handled the common aspects of IPFX client software including network access, thread management, and timeout management. This layer included an ATL front end to allow for .Net client access through Interop.
  • Wrote a service manager application to help transition the existing user space servers to proper Windows services.
Independent Contractor
Self Employed
January 2002-
April, 2005
Worked for small companies on small scale software projects.
  • Developed a fingerprint matching system for use in access control. This system was written in C++ and runs on Windows and Windows PocketPC.
  • Developed a child safety program. This program is used to collect information about children, including photograph and fingerprints, to create a form for parents to give to police if the child should go missing.
  • Ported PerSense, a financial calculator, from DOS to Windows. PerSense was originally written and sold in 1992 and has enjoyed continued success since then. The original DOS interface was re-written in Delphi in order to make it look and act like a modern GUI application.

Software Engineer
Predictive Networks
April 2000-
September 2001
Predictive Networks was a company that provided private, targeted content to users on the internet and on Interactive Television.
  • Maintained and extended the Content Delivery Server. This server was the backbone of the Predictive Network. It was written in C++ using the Win32 API as well as ODBC, TCP/IP, and STL. The server ran on Windows 2000 and was ported to Solaris.
  • Rewrote the ODBC database class layer so that the system could scale up to the larger demands placed on it as the company grew.
  • Worked with AT&T to create a user logging/monitoring server so that AT&T and Predictive Networks could partner to bring Predictive Networks' technology to AT&T's discounted internet service offering.

Software Engineer
IBM
June 1997-
March 2000
Worked with the Advanced Internet Technology group in Cambridge MA. The group's main objective was to create cutting edge Internet technologies to help push IBM products further into the Internet.
  • Created a CIFS server that was the center of the Sash back end tool kit. This system allowed developers to surface their file system in Windows as a common network drive. This tool kit was used in Lotus Domino and IBM's Visual Age for COBOL. It also resulted in the patent listed below.
  • Created components for the Sash front end tool kit. This toolkit allowed developers to quickly and easily create Windows UI components in simple DHTML. This work was mostly based on DHTML and Javascript.
  • Lead a group of summer interns in the first ever Extreme Blue program. This ongoing program is used by IBM to recruit top talent from universities around the country and engage them in interesting software projects within IBM.

Patent:
US Patent #6,988,101
Method, system, and computer program product for providing an extensible file system for accessing a foreign file system from a local data processing system

Continuing Projects:
KlassModeler
The KlassModeler is a tool for class diagraming and documenting. The interface is similar to other UML tools, but with a tighter concentration on classes. It can read in and generate header files and HTML based documentation. The KlassModeler can be found at many open source websites. It is written in C++ using the wxWindows class libraries and runs in Windows, Linux, and BSD.

REngine
The REngine is a game engine used to create Rift, a space fighting game. It includes libraries to handle math, 3D modeling in OpenGL, a 2D windowing system in OpenGL, and a rigid body physics simulator. It is written in C++ using SDL, OpenGL, and OpenAL. It runs in Windows and Linux.

Education and Training:
Lehigh University, Bethlehem, Pa.
  BS, Computer Science, 1997
  Minor in American Literature
Computer Skills
Programming: C++, STL, Boost, ATL, MFC, OpenGL, OTL, and wxWindows.
Operating Systems: Windows XP/NT/2000/PocketPC and Linux.
Networking: Common Internet File System (CIFS), TCP/IP, and NetBIOS.