|
||
|
||
Software Development : ·
Java API
and Lotus Domino C Software Engineer (Compoze Software Inc. Aug 2003 -
Present) As a Compoze Java API developer and Lotus Domino C software engineer I was responsible for: o API Development§ Designed, developed, certified and supported the foundation Compoze Java Domino API product § Ported the Compoze Domino Native service to RedHat Linux 8.0/Redhat WS 2.1 with gcc 3.2.0 § Developed several key components of the underlying C/C++ code layer on top of which the Compoze Domino Java API is developed · Compoze Memory Manager: A C memory manager utility module for tracking memory usage, detecting memory leak by the underlying Compoze C Domino API · Compoze Domino Admininstrator Console: A Java Swing based application that allows remote administration of Compose Domino Service (Java/C) · Compoze Domino Logging Manager: (Java/C) § Produced deliverables required for different phases of the project including sequence diagrams, object models, Java code, Javadocs, technical requirements documents, status reports, test scripts, and knowledge transfer documents § Participated as a system tester during test phase of product development and took responsibility for creating, running and analyzing performance and endurance tests § Developed build scripts to automate nigtly and weekly build of the Compoze domino product o
Sales Support § Supported the Compoze sales staff in pre-and post-sales activities §
Managed customer relationships in concert with the
Compoze sales team o
Customer Support § Supported customer help calls § Debugged, analyzed and fixed application problems/issues §
Assisted customers when performing Proof-of-Concept
engagements to help ensure Compoze’s ability to deliver a comprehensive and
effective solution o
Compoze Bug Tracker § Installed, Configured and Customized the open source bug tracking software - Bugzilla for internal use by all API and Portal developers § Developed custom modules for Bugzilla to support custom features internally required § Custom features implemented in bug tracking system were coupled with the Compoze products’ build process ·
Timesheet, Expense, and, Project Management
Tool (STEP) (Millenium Infosystems Oct. 2002-Jul. 2003) Timesheet, Expense, and, Project Management Tool enables employee to Log on to the system and submit the timesheet, expense report and manage task. (ROLE:
Design/Developer/Integrator/Deployer) o
Define Stage § Requirement gathering from end users and writing down business process § Enhance Business Requirements and translate it to HTML prototype §
Preparation of Design Documents and Application
Definition Documents o
Design Stage §
Implementation Design, and Data Modeling of STEP
Management using Objected Oriented Process and standard Design Patterns o
Develop § Developing STEPS using J2EE Architecture - Java, JDBC, JNDI, JSP, Servlet, XML, and several Jakarta-apache products §
STEPS, based on the Struts MVC framework (with a
Tiles presentation layer) and jakarta
commons project, is designed for multiple roles, providing different
interfaces for the various types of administrators and users o
Deploy § Installation and Configuration of IBM Websphere Application server on NT and Solaris servers § Configuring Front-End HTTP Apache web-server with IBM Websphere Application servers § Writing Perl scripts to make Deployable Jar and War files § Convert Perl/shell scripts into Ant build scripts to make Deployable Jar and War files §
Deploying the entire Application on Websphere
Application server ·
Tesoro Petroleum, San Antonio, TX. Mar. 2002 –
Sept. 2002 (http://www.tesoropetroleum.com):
o
Custody Management System – (ROLE – Database Script Developer/Build Master) Developed using Visual Basic, ASP,
Oracle. § Designed data model using Rational Rose and incorporated schema diagrams § Implemented a parser/code generator engine to convert unstructured data to SQL code § Maintained Oracle database schema, scripts, and analyzed complex data §
Implemented scripts for automatic loading of master
data · Excelon Corporation, Burlington, MA. Jul. 2000 – Feb. 2002 (http://www.exceloncorp.com): o COCOMO – Software Cost Estimation Tool (ROLE Architect/Enterprise Java Developer) § Led a group of ten business and technical consultants to design, develop, and deploy a multi-tiered, distributed, transactional, software cost estimation (COCOMO) tool based on J2EE architecture. § Technologies used were Servlets, JSP, EJB, JNDI, JDBC, RMI-IIOP on server side and HTML, CSS, and Javascript on the client side. § The MVC design pattern was used at the web-tier layer to decouple the presentation from the application data processing. § The application was deployed with IBM Websphere 3.5.2, application server on Solaris 2.7 § Wrote Ant build scripts to automate the build process. § Deploy the entire Application on Webspshere Application server o J2EE Reference Implementation (ROLE Enterprise Java Developer) § The J2EE reference application was developed to demonstrate a recommended implementation of core J2EE technologies § It included various design techniques to integrate key J2EE technologies such as JDBC, JNDI, Enterprise JavaBeans (EJB), Servlets, and Java Server Pages (JSP), and Struts framework on WebLogic application server § The Apache Struts framework was integrated into the presentation tier which enabled a central organizational structure for building, controlling, and extending web applications. Custom Struts JSP tags were used by page-designers to create displays § The Reference application presents an example of a scalable enterprise application. Project team developers can use it either as a pattern of how to design and develop a J2EE enterprise application, or as a source of reusable components, or both § Standardized the source directory structure for an automated local and remote deployment using the Ant build tool Technical Training (Jul. 2000 – Feb. 2002): ·
US Navy (http://www.fmso.navy.mil),
Ultramar Diamond Shamrock (http://www.valero.com), College
Foundation Incorporated (http://www.cfi.org/), WebCT (http://www.webct.com/) and Economical
Insurance Group (Canada): the following technical courses were designed,
developed, and taught with a particular emphasis on rapid application
development methodology and industry standard best practices: (Role: Portal Developer/ Course Designer/ Course
Developer/Instructor) o HTML, CSS, & Javascript o Programming with Java o Servlets and JavaServer Pages o Enterprise Java Beans (EJB) o
XML (DTD, Schema, DOM, SAX, JDOM, XSLT, XPath) · Seagate (http://www.seagate.com): Corporate Portal Development (Role: Portal Developer/ Portal Course Designer/
Developer/Instructor) o Designed and developed a three day technical training curriculum on "mySeagate" intranet corporate portal developed for Seagate corporation o The course taught developing rule-based templates (TIBCO Portal Builder) for content aggregation, portal administration, and on integrating legacy Seagate data source into portal-style content presentation o
The portal was developed using TIBCO Portal engine
and messaging components, on iPlanet Web server. Netegrity Siteminder was
used for authentication and Vignette StoryServer for content management ·
Internal Training and Mentoring (August 2000 –
January 2002) (Role: Course Designer/ Course Developer/Instructor) o Provided
framework code and templates for commonly used application logic patterns and
user interface idioms. o Trained over 300 C-bridge internal consultants for core Java, server side Java and XML based technologies. o Played mentoring role for new hires on several aspects of Rapid application development methodologies, J2SE, and J2EE best practices. o Started and conducted a self-study based approach to consultant training with an intention to formalize an approach that allows consulting staff to efficiently explore new technologies. o
Put together documentation for standards and best
practices, and encouraged commitment to building a high quality and
maintainable application. Scientific Computing (Ohio University 1995 – 1999) (ROLE System Modeling and Simulation) ·
Modeling and Simulation Tools: Ohio University (http://chaos.phy.ohiou.edu/~thomas):
Research and Development (The
following softwares were released under GPL terms) o HDARPF (Borland C++): § Real Time Chaotic Process Control and Model analysis software developed in Borland(5.0) C++, with GUI developed using OWL library. § Multi-threaded implementation to synchronize read/write with a National Instrument data acquisition board (Released 1997) o Vibro-Impact System (C, X-Window): § Chaotic Impact System Analysis and Control software (C, XWindow) (Released 1999) o Coupled Hyper-Chaotic System (C, X-Window): § Analysis Tool for spatially extended dynamically coupled systems (C Motif/Xlib) (Released 1999) ·
Data Analysis : Ohio University (http://chaos.phy.ohiou.edu/~thomas):
o Regression analysis, spectral analysis, noise filtering o Attractor reconstruction, detecting unstable periodic orbits in a chaotic attractor and controlling them o Pattern recognition using Artificial Neural Network technique o Genetic
Algorithm (GA) implementation for searching both discrete and continuous
solution space Miscellaneous Utilities and Projects (1995 – 1999) · Ohio University (http://chaos.phy.ohiou.edu/~thomas) o Lisp
Shell - A user shell that supports lisp syntax and provides basic shell
services such as launching Unix commands, input/output redirection, pipes
etc. o Data to Postscript Filter (d2ps): 2- and 3-D data plotting utility with color postscript output o
HTML to Latex Filter Engine (h2l): A filter,
written in GAWK, to convert an HTML document to LATEX/PS/PDF document o
Remote Procedure Call (RPC) based application - A
distributed asynchronous system to study the use of UNIX semaphores and RPC
mechanisms. Demo project was a race-car system where race-car client
processes (with different control algorithms) would compete against each
other on a central race track server. o Several independent (C/C++/Java) implementation of systems described by ordinary differential equations (ode), partial differential equations (pde), iterated function systems (IFS), Lindemayer systems (L-systems), cellular automata (CA), delay differential equations and other nonlinear dynamical systems. |
||
·
Software Engineer
Compoze Software Inc. (Aug. 2003-Present) ·
Senior Developer
Millenium Infosystems (Mar. 2002 – July 2003) ·
Senior Developer/Corporate Trainer at C-bridge Internet
Solutions and Excelon Corporation (Jul. 2000 to Feb. 2002) ·
Teaching/Research Assistant (Sep. 1993- Dec. 1999) Ohio University, Department of
Physics, Athens ·
Student Senate
(Aug. 1995- Jul. 1996) Ohio University, Department of Physics and Astronomy
Representative |
||
Presented papers at various professional international physics meetings. Among others: APS Centennial Meeting, Atlanta (1999), Dynamics Days, Atlanta (1999), 4-th Experimental Chaos Conference, Boca Raton (1997), APS March Meeting, St. Louis (1996), 3-rd Experimental Chaos Conference, Edinburgh (1995). ·
J. Thomas, Non-smooth Dynamics of Vibro-impact Systems
Ph.D. Thesis, March 2000 ·
J. Thomas and R. W.
Rollins, Hysteresis, Grazing Collisions,
and Chaos Control in an Impact Oscillator to appear in Phys. Rev.
E ·
Stephen Kariuki,
Howard D. Dewald, Joseph Thomas, and Roger Rollins, Electrochemical Oscillations of Indium(III) in
Nitrate and Chloride Solutions., Journal of Electrochemistry,
1998 ·
M. A. Rhode, J.
Thomas, R. W. Rollins, and A. J. Markworth, Automated
adaptive recursive control of unstable orbits in high-dimensional chaotic
systems, Phys. Rev. E, 54, pp 4880-4887, (1996) |