jerimoth.com: free tech job search and resume posting

Developing with Jerimoth

Jerimoth is Open Source, released under the Apache License 2.0.

Visit sourceforge.net/projects/jerimoth to download the source code.

The Jerimoth software is divided into two parts: a stand-alone Java client, and a Java server. Communication between the two is handled using SOAP, specifically Apache Axis. Due to performance considerations, a SOAP implementation other than Axis may be used in future versions, although the client and server will remain written in Java. Of course, clients could be written in languages other than Java and because the web services API is available in WSDL any stub code could be autogenerated.

The SOAP format is doc-lit, although XML resumes and employment postings are sent as strings. Objects are marshalled using Castor.

The Jerimoth client and server will be released as Open Source when the documentation is finished and some technical issues have been solved.

The SOAP interface to this service parallels the functions in the user interface of the client. There are five "managers", each of which handles a specific type of functionality (posting, searching, etc.) and has its own SOAP service URL. Each manager contains CRUD methods (create, retrieve, update, and delete), plus other methods as appropriate. Most managers contains list methods allowing sets of postings, resumes, etc. to be retrieved according to various parameters.

Common types representing GUIDs and similar objects are shared among the managers.

The managers are as follows. The links lead to their WSDL files:

While these managers do call each other in some cases, the software is mostly compartmentalized and new managers could be added as needed.

In addition, each of the sections of the main control panel in the client is a plugin, and new sections can be added by coding to that plugin API. A new GUI could be provided that places each of the main panel sections in each window, or, instead of being buttons, makes them menu choices. The plugin API is flexible enough to make that possible. Another GUI might use an MDI-style interface.

The configuration file will be used to produce a customized version of the main panel: one for job seekers, a different version for job applicants. For now, those two roles are combined into the one main control panel.

Of course, any feedback on the overall GUI design and usability or on the design of the SOAP interfaces would be appreciated.


RSS feed