Projects

Mindfire has deep experience developing Java web applications and Java-JSP-Servlet-Struts-driven web sites. We describe some of these Java web project experiences below, and will be glad to share our expertise in detail with you.

  • Applet for uploading Images
  • Mac Address Finder
  • Integration of BrowserHawk
  • Fax Gateway
  • Image Server Gateway
  • Modality Worklist Gateway
  • InBoundFax Client
  • DICOM Image Viewer
  • Java Based Space Ship Game
  • School Asset Management System
  • Web based application for tracking mobile user usage data
  • Google Analytics Connector and Sales Demo
  • UI Radiology Application
  • Baby Portrait Shopping Cart Site
  • Google AdWord Campaign Creation Portal
  • RSS Mail Subscription
  • Reporting Solution
  • Paid Referral Campaign Support
  • Order Delivery System
  • Online Sales Tracking System
  • Online Order Pplacement and Accounting
  • Campaigns and Ad Groups
  • Financial Management System for Restaurant
  • Currency Trading Application
  • Google Integration
  • Books Management - Administration Interface
  • Customized Application for Dukascopy jForex Trading Platform
  • Student/Class Registration System
  • Scan Manager
  • Peering Manager
  • XML Parser
  • ACS - AdvancedUploader
  • Assisted Conversion Tracking
  • Lead Management/Tracking System
  • Keyword Tagging Tool
  • External conversion data
  • Java Library as Wrapper to Webservice
  • Record Reader
  • Preferred Share Tracker
  • Campaign Extension
  • Books Management
  • Order Delivery System (ODS)
  • Student/Class Registration System 
  • VB DLL
  • XML Parser
  • ACS – Advanced Uploader
  • Java Robot Application for Automates polling solution
  • BI for Performance Management
  • JSON Query
  • Java - Blackbox
  • Chat App testing
  • Marketing Automation System
  • Reports for Healthcare
  • Liferay – Aperte Workflow Integration
  • Liferay - Event Portlet
  • Liferay - SolrSearch Portlet
  • Gaming Application
  • Online Offline Content Management Application
  • Order & Process Management
  • Form Sweeper
  • Finance Application
  • Project Management Application
  • Retail Platform
  • Business Process Management Application
  • Management Information System
  • Print Management System


Applet for uploading Images

Client:
A media and publishing software provider
Industry:
Graphics / Imaging.
Technologies:
Java Applet/Servlet

A digitally signed Java Applet with elegant and intuitive desktop like interface for uploading multiple images to server. Provides flexible thumbnail view where user can single/multiple select a set of images to upload. The selection could span multiple folders as well as the applet has folder navigation tree to the left. It also supports filtering based on file name/type/size. All applet options are server configurable.

We also did the server side programming using Java servelets for receiving the files uploaded by the applet. The servelet supported multithreading for simultaneous uploads.


Mac Address Finder

Client:
Online proofing approval software provider
Industry:
Publishing
Technologies:
Java, C, MacOS API

A Java applet for finding MacAddress of the client machine and to be used as licensing and authorizing process. Proved to be more complicated than our initial estimates as it had to deal with various combinations of Win32, MacOS 9, OSX, IE, Safari, Netscape, different signing methods etc. Also there was no straight method of doing the above in Java so we have to use different approaches for different OS including using JNI on MacOS 9.


Integration of BrowserHawk

Client:
Healthcare technology and services company
Industry:
Healthcare
Technologies:
JSP, Oracle 10g, BrowserHawk 10.1 Enterprise Edition

This is an automated tool to detect certain browser settings, system settings, and plug-in versions in order to determine if a client has the appropriate environment. In other sense, it works as a diagnostic tool to inform the user if their browser supports to run an existing application. Along with detection, the tool must also be capable of sending the test result for the analysis.

Research: BrowserHawk is the best approach for automated browser and system analysis. BrowserHawk makes it easy for professional web developers to build high impact sites that reach the widest possible audience, while ensuring a Flawless Web Experience for every visitor regardless of their browser settings and system capabilities. The product is very matured, well-documented, easy to use, and full-featured.


Fax Gateway

Client:
Provides web applications and services
Industry:
Healthcare
Technologies:
Java Swing, Netbeans

The Fax Gateway service is a service developed to poll URLs on the Internet and check to see if a fax needs to be sent. If a fax is in the Queue at a given URL the gateway pulls the fax from the Internet location and sends it to a local Fax Server which handles the delivery of the actual fax. This UI application will consist of 4 different views inside one Main Window Frame and one dialog. A Card Layout or some other suitable layout scheme will be used to change the views inside the Main Frame Window based on Menu and Tool Bar events. The Main Frame Window will have both a Tool Bar and a Menu Bar.


Image Server Gateway

Client:
Provides web applications and services
Industry:
Healthcare
Technologies:
Java Swing, Netbeans

The Image Server Gateway service is a service developed to send DICOM files from an SCU (Service Class User) modality to the practice management system. This UI application will consist of 5 different views inside one Main Window Frame and one dialog. A Card Layout or some other suitable layout scheme will be used to change the views inside the Main Frame Window based on Menu and Tool Bar events. The Main Frame Window will have both a Tool Bar and a Menu Bar.


Modality Worklist Gateway

Client:
Provides web applications and services
Industry:
Healthcare
Technologies:
Java Swing, Netbeans

The Modality Worklist Gateway service is a service developed to pull patient information from the practice management system into a DICOM SCU (Service Class User). This UI application will consist of 4 different views inside one Main Window Frame and one dialog. A Card Layout or some other suitable layout scheme will be used to change the views inside the Main Frame Window based on Menu and Tool Bar events. The Main Frame Window will have both a Tool Bar and a Menu Bar.


InBoundFax Client

Client:
Healthcare technology and Services Company
Industry:
Healthcare
Technologies:
Java, Netbeans, Jax- RPC

This project has been developed for creating the client library and wrapper for inbound fax web service. Also designed a client application to test the wrapper library and download the pending faxes from the Inbound server.


DICOM Image Viewer

Client:
Healthcare software company
Industry:
Healthcare
Technologies:
Java, imageIO, DICOM

The application supports a wide verity of Transfer Syntaxes and is very user friendly. It is designed to work with a very capable PACS system. It allows images to be arranged on the basis of their Patient ID, Study ID, Series ID, etc.


Java Based Space Ship Game

Client:
Online Gaming Company
Industry:
Gaming
Technologies:
Java, Sql Server

The project is an online strategy gaming system where players can choose from a list of available battle space ships, crew, weapons and shields or build their custom fleet to battle against other online players. A challenging AI is developed with 5 levels of play. Players gain points and ranks as they win battles and joins an elite group.


School Asset Management System

Client:
IT firm
Industry:
IT Solutions Provider
Technologies:
Java, J2EE, Apache Tomcat, Eclipse, iReport, Javascript, Ajax, MySQL, Linux

Implemented reports for a multi-role based access system for schools that allows management of assets. Used iReport for PDF generation. The application allows to generate several custom reports to track inventory and costs and provides a unique way of forecasting reports and determining budget for the next year.


Web based application for tracking mobile user usage data

Client:
Mobile Services Provider
Industry:
Mobile Services Provider
Technologies:
JDK 1.6, Ejb 3.0, Hibernate 3.2, Spring 2.5, Quartz Scheduler1.6, MySql, NetBeans6.5

Designed and implemented a web application that allows mobile service subscribers to register and specify thresholds to receive notifications when usage exceeds specified threshold. Using this application Wireless mobile phone users can set thresholds and track their minutes used, SMS and other internet data usage. The other key feature of the site is that it keeps inventory of the transactions/events including calls, sms, mms, data connection to internet, etc that the user has made. The data is collected from the respective operator web sites periodically and stored locally for the user to view and generate custom reports.

The objective is to allow users to use their mobile phones without worrying about exceeding their minutes and have one place where they can review all events over the time. User receive a message based on their preference automatically by email and/or sms. The system was designed to account for a large user base and the downloads from operator websites can be done once in a day.

Apart from the website a Data Gathering module, which is loosely coupled with the web module was designed and implemented and was responsible for collecting user data from service provider websites, parse the data and log user details.

A Periodical monitoring module was also designed and implemented for periodically comparing usage data with the threshold set by user to send alert messages.


Google Analytics Connector and Sales Demo

Client:
Software Development
Industry:
IT
Technologies:
Java, Google Analytics API, DOJO framework, XML, HTML, CSS

The project has two sections:

1. Google Analytics Connector

The application is built as a Java class file, using the Google analytics API to pull web site analytics data, and place inside a MYSQL database.

Following functionalities were implemented:

1. Connect to the Google Analytics API with a Google account from a properties file.

2. Properties for the class includes anything environment specific, database connect info, Google account info, timeout settings, OS dependent paths, etc.

3. Retrieve all NEW data (data not in the MYSQL database) for the whole sites.

4. Used a SAX parser to convert XML to Java Objects.

5. Report (log) any invalid / incomplete data.

6. Protect against API timeouts.

7. Report (log) API unavailability.

8. Method that if called by an external thread would interrupt the execution, and clean up all memory structures and external connections to the API and database.

9. Insert the data into a MYSQL database structure that closely matches the API data format, but has additional fields to help with retrieval at a later date, such as "insert time" and "a unique identifier".

10. The insert should be transactional so ensure partial data is not inserted.

11. Report (log) database errors and rollback any pending inserts that are related to the data being inserted.

12. Perform all data operations in less than 1 minute optimally, 5 minutes absolutely.

13. The database structure should have sufficient indexing to allow fast retrieval of all data.

2. Sales Demo

Developed sales demo to simulate a web application. Content lives within an XML file. It simulates a web application that already exists and used by the customer Sales-force. Application works in IE 6, 7, 8 and the most recent version of FireFox (Mac & PC), Safari (Mac & PC) and Google Chrome.


UI Radiology Application

Client:
Software Service Provider
Industry:
Healthcare
Technologies:
Java 1.6, Swing, Netbeans 6.5, JavaDB

The Radiology service is a service developed to pull information and images from the practice management system which is then listed into the UI application. The application provides the detail view of the studies and open a custom view to display the images of the study.

The application is mainly used by the doctors to review the study and provide their feedback on the same. The feedback is converted to XML and uploaded to ftp server through a service.

This UI application consists of 3 different views inside one Main Window Frame and 4 dialogs. The Main Frame Window consists of a Menu Bar. Some dialog elements are generated dynamically. Application has also the local storage which is the native JavaDB. The database stores the configurations of the application and custom report templates created by the doctors.


Baby Portrait Shopping Cart Site

Client:
IT Solutions Provider
Industry:
Information Technology
Technologies:
Java, J2EE, Spring MVC Framework, Hibernate DAO, MySQL, Acegi security, authorize.net

Desiged and Implemented a shopping cart solution for an existing baby portraits web site that allows parents to upload photographs of their new born child. Implemented enhancements that allows parents to send links to friends and family via which recipients can directly view their albums and order photos.

Implemented process flow to allow users to add photos to cart, create account and checkout via authorize.net. Implemented member portal to view status of their orders.


Google AdWord Campaign Creation Portal

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java/JSP, Google AdWords Library, MySQL, jQuery, Ajax, GWT

The project aims to provide an interface/portal to the users to create the Campaigns for any specific Google AdWord account along with storing all the Campaign details in the database for future reference. Interface/Portal have the facility to set all the details of the Campaign including geographic locations, languages and scheduling information. The application uses JQuery and Ajax to fetch all the related information from the Database and represent in a proper way.


RSS Mail Subscription

Client:
Software Services Provider
Industry:
Software Service
Technologies:
Java, Spring 3.0, iBATIS 2.3, PostgreSQL, RSS Reader: CURN

This project has been developed to forward RSS Feeds to the registered users with active accounts. The features include a registration procedure wherein a user has to register for getting RSS feeds on his email account. The user then needs to activate his account by clicking on a link sent to his email. A RSS reader package, CURN, is used to read feeds and send mails to the activated users. CURN has been developed in Java.


Reporting Solution

Client:
Software Solutions Provider
Industry:
Software Services
Technologies:
Java, Pentaho Report Designer, Pentaho BI Server, Pentaho SDK, PostgreSQL, JavaScript, jQuery

This project uses Pentaho report designer to design reports and publish them on a website. The report design involves fetching data from database and using the required fields to display the reports. The report can get parameters and then display the results accordingly. This project also has a module which supports ad-hoc reporting wherein a normal user (without any database knowledge) can design his/her own report. The reports can be viewed as PDF document, Spreadsheet, CSV and Word Document (rtf/doc).


Paid Referral Campaign Support

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java, MySQL, GWT and SmartGWT, Google Visualization API

This project aims to provide an interface to its user for managing all the advertising accounts from this interface itself. The user can create any number of advertising accounts, sign-up, and then also can update the sign-up details. This interface stores all the login credentials and then provides the credentials to the user for logging in to the advertising account. If the advertising channel is not Google AdWords or MSN adCenter then the user can also directly create campaigns for these channels and manage them. This application also has an interface to display analytic data of all the campaigns using charts and tables. The application has been developed using SmartGWT and GWT, and Google Visualization API is used for creating charts.


Order Delivery System

Client:
Windows And Doors Manufacturer
Industry:
Manufacturing
Technologies:
Java, JSP, Servlet, Struts Framework

The ODS is designed to be handled by direct dealers of various products offered by the production farm. All dealers can create their own admin account using their valid account number and thereafter they can create user under them. Dealers can set permission, pricing preferences and product preferences for their corresponding users. Users will work with the ODS to place QUOTE or BID or ORDER for a particular product with in their respective authorities or permissions. Dealers or the admins of a particular account will have the authority to setup or modify users.



In the user part, a user can place a QUOTE or BID or ORDER for any product as per the permission granted to them by the dealer or admin. While placing an order, to view the product for the given dimension will be displayed by the system, which is generated dynamically. After the user accepts the view it goes to the pricing section where the pricing for that particular order is done. There after the final acceptance from user it moves to the checkout for billing purpose. A user can view any placed order and can take a dynamically generated receipt printout at any time. One can also edit an incomplete order at any time. A user can check the status of the order placed as they are in process in the production farm. While placing a QUOTE or BID or ORDER, user can choose the shipping type from few options provided by the farm.



The ODS also provides a rapid response window for their users, which opens during the working hours of the production farm. This window works with urgent orders or quotes and helps the users to get quick response from the production farm.


Online Sales Tracking System

Client:
ISV
Industry:
ISV
Technologies:
Java, J2EE, JSP, Java Wickets

The Web Application's general purpose was to provide a way for the salesman to track their customers purchase and sales report and for the sales manger to track the salespersons overall sales and purchase details. There were three main functional areas of application like pricing and availability of items , Salesperson's dashboard and sales report. For the sales report we used the Google chart API to display different reports according to user of application. In the UI of salesman dashboard jQuery is extensively used to make application more dynamic.


Online Order Pplacement and Accounting

Client:
ISV
Industry:
ISV
Technologies:
Java, J2EE, JSP, Java Wickets

The Web Application's general purpose was to provide a way for the Client's customers to place orders on line and to review accounting information such as Invoices and A/R aging. There were mainly three functional sections of the site Order Entry, Accounting & Administration.

The Order Entry and Administration sections had tabbed panels to select the various functions within them. The Accounting section had Summary panel containing a panel for recent invoices, a panel for open orders and panel for A/R aging. A link on each of the invoices and open orders panel had linked to a full panel view of either invoices or open orders respectively. The invoice full panel view had some search functionality to search invoice. 


Campaigns and Ad Groups

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java, MySQL, GWT, SmartGWT, Google AdWords API and MSN AdCenter API

This project aims to provide an interface/portal to the users to create campaigns in MSN and ad groups in MSN and Google. It has been developed using GWT. It uses Google AdWords API and MSN AdCenter API to communicate with Google AdWords and MSN AdCenter respectively. The application also has a feature to edit existing campaigns and ad groups. The most important feature and advantage of this application is that it has a single interface to manage both MSN and Google accounts. The application also provides a feature to copy campaigns and ad groups across accounts in Google or MSN and from Google to MSN.

This application also uses SmartGWT for some of its UI needs. Apart from creating and managing accounts in Google and MSN, the application also stores the information locally for faster access and to create a replica of the hierarchy and information in the application as in Google and MSN.


Financial Management System for Restaurant

Client:
Food and Support Services Company
Industry:
Food and Support Services
Technologies:
Java, Spring, Hibernate, DB2, Eclipse, Maven, Ajax, JQuery

This web application presents a set of web pages to accommodate the complete accounting process used for quantitative information of finances.

This provides interface to prepare the transaction's source document such as a purchase order or invoice. It records the transaction by making entries in the appropriate journal, such as the sales journal, purchase journal, cash receipt or disbursement journal, or the general journal. Such entries are made in chronological order. It prepares closing journal entries and post-closing entries to ledger accounts.

It has the inventory module which includes a screen for inventory entry, lists a precise number of items on their shelves and storage areas in order to place orders or control losses. Managers need to know how many units of their products are available for customer orders, what is the current supply and menu needs. Inventory count sheets are implemented to provide answers to all these questions on which the business rely.

The application uses JQuery and Ajax to fetch all the related information from the Database and represent in a proper way.


Currency Trading Application

Industry:
Trading
Technologies:
Java Swing, MYSQL

This is a swing based currency trading application to automatically trade currencies in the Forex API trading platform. User can able to schedule order  in advance that will get executed (placed) in Forex trading platform on desired time, based on the current market price for selected currency pair at that time.

This application also offers trading in variable currencies. Users are free to bid in any currencies they want. The application also handles multiple currency type bidding in the same time.

The application runs a process as a windows task in every one minute which in real time place the orders in the Forex trading platform.

The application consists of a division where user can "view" and "edit" the unplaced scheduled orders. User can also check status of the placed orders at any time.


Google Integration

Client:
Cloud-based CRM providers
Industry:
Software
Technologies:
Java, Security Assertion Markup Language(SAML),Google Data API,Java Cryptography Architecture (JCA)

We developed this application which provides Single Sign on Facility with Google from any web application. User will login into their own Google web app and from there he/she  can easily navigate to any Google app, say, Gmail (Inbox/Compose Mail), Google calender etc, in a new tab or pop up clicking any links to Google apps or directly in a new browser window. User will not be required to go through any other authentication or sign-in page. User is now flexible to retrieve information from Google Apps account.

                                                      The second phase of this application we developed provides facility to create an event in Google calender from own application submitting data required to create an event at Google.

    The third phase of the application we are working on currently provides process to retrieve all Google contacts for user and events for a specific date range from calender via the application.


Books Management - Administration Interface

Client:
Software Service Provider
Industry:
Education
Technologies:
Java, MySQL, GWT

This application provides a web-based interface to manage the content of its front end website. The front end website is an educational software which displays books for a particular grade. By the use of this application the user can easily add or edit the content of books and manage their details. It also has an option to upload the data from CSV files with a predefined structure. The UI is AJAX based and developed using GWT.


Customized Application for Dukascopy jForex Trading Platform

Industry:
Trading
Technologies:
Java Swing, MYSQL

This is a swing based currency trading application to automatically trade currencies in the Dukascopy jforex API trading platform. User can able to schedule order  in advance that will get executed (placed) in Dukascopy jforex  trading platform on desired time, based on the current market price for selected currency pair at that time.

This application also offers trading in variable currencies. Users are free to bid in any currencies they want. The application also handles multiple currency type bidding in the same time.

The application runs a process as a windows task in every one minute which in real time place the orders in the Dukascopy JForex trading platform.

The application consists of a division where user can "view" and "edit" the unplaced scheduled orders. User can also check status of the placed orders at any time.


Student/Class Registration System

Client:
Education
Industry:
Education
Technologies:
Java, MySQL, Java Script, jQuery

This application provides a registration module for a school. The administrator creates a subject and manages user details. An instructor then assigns a subject to his class and issues secret code for students to register in a class. The student then uses the code to join the class before the registration ends. This module also has a forum space for each class, in which all class members can interact. It also has a web-service where all user personal details are uploaded to a more secure MySql server and is removed from the current hosted server.


Scan Manager

Client:
Software Service Provider
Industry:
Network Solutions
Technologies:
Java, Swing, FTP, MYSQL

Scan Manager is a java desktop application using which a user can log in to a FTP Server by providinghis FTP account credentials, and it shows him all the files he has previously uploaded and allows him to download or delete the files. Its important feature is its facility to scan a document and upload it to the FTP server, symultaneouly it makes an entry in a central database for every uploaded document against the user. The user can also search for a document by providing a word in search box, which will look for all the documents uploaded by the user in all its folders for document name as well as document key word, and the result will be show in a list .

The user can also create new folder or delete an existing folder from the FTP serverby using the functions provided in task bar.


Peering Manager

Client:
Software Service Provider
Industry:
Network Solutions
Technologies:
Java, Swing, Java Web Start, Java Socket Programming

Peering Manager is a standalone desktop applicationdeveloped in java. It manages the overall activities of a peer component, which isanapplication developed in C andrunningin the same machine. This application exchanges information with the peer component through CPS (Content Provider Service) listening on certain port, employed by the peer component. From this application one can start/stop the peer component, list out all the peers according todomain, inject new peer instance etc.

This application can be installed either from a setup.exe or directly from a web site by web start technology. It bundles the C application and all its dependents with in a jar file and extracts them to respective folder upon installation.


XML Parser

Client:
Online E-Book Service
Industry:
Publishing
Technologies:
Java and MySQL 5

It is a command line application which takes either 4 or 6 parameter. Parameteres are "--c" with "application config file", optional "--d" with "database config file" and "--x" with "Xml file".

It parses whole XML file contents and inserts contents in two different MySql database with different needs.

It also handles duplicate products present in the XML file while inserting them into database. If it finds same product in the database while inserting product in the database, it updates old product with the new product based on unique product number or duplicate product name.

It inserts product using unique product number in one database and using unique product name in other database.

It stores all the product related information in different tables for different purpose.


ACS - AdvancedUploader

Client:
Online E-Book Service
Industry:
Publishing
Technologies:
JAVA, JAVA SWING, Adobe Content Server (ACS) Web Services, ImageMagick 6.6.2.6

AdvancedUploader is an EPUB / PDF genuine e-book uploader for Adobe Content Server (ACS). AdvancedUploader and ACS services needs three files for each e-book, one EPUB / PDF file, one information XML file and another JPG file. The user of the application needs to browse the folder with the source e-books (ie EPUBs / PDFs , XMLs, JPGs). Features of the applications are listed below:

  1. Indicates if any EPUB / PDF or XML or JPG files are missing for a particular item.
  2. Functionality to generate missing XMLs in the selected directory automatically.
  3. Generate thumbnails of three different sizes (ie small, medium and large) automatically from the available JPG. ( Application has the ability to handle both CMYK & RGB images. ImageMagick is used for this feature.)
  4. Ability to upload hundreds of e-books at a time.
  5. Feature to transfer all recently uploaded e-books to different distributors with LOAN rights.
  6. List all items available in ACS in a custom table grid with Transfer (with LOAN rights) feature.
  7. Feature to update LOAN rights of all items under all distributors at one go. It also has the functionality to update LOAN rights to of all items under a particular distributor.
  8. Functionality to export All items XML for each distributor.
  9. Feature to replace any existing e-book on ACS.
  10. Settings and Configuration options for custom server settings.


Assisted Conversion Tracking

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Core Java, Google APIs, Mysql

Assisted Conversion Tracker is a module of Lead Management System and developed using Java language. This project aims at collecting information about the assisted visits by a lead to the on line contact form of a target site.

Assisted visit OR Assisted conversion is a Google Analytics terminology. This describes the visits by a lead to the target site before the actual conversion happens. If a lead visited the target site five times and converted(contacted) on the 5th visit then all the previous four visits are considered as assisted visits. This application takes into consideration only the first visit among all the visits as the assisted visit. 

The application is run by a system scheduler. It first fetches all the leads from the local DB for the supplied date range and then loops each of the lead to fetch its assisted conversion (if present) from Google Analytics. The key here is the gavisitorid, which is there in DB as well as GA. The application fetches all the visits corresponding to a particular gavisitorid, among all the visits it picks the first one and parses it for valid data and stores in the DB against the Lead that have the corresponding gavisitorid.


Lead Management/Tracking System

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
J2EE, Core Java, JavaScript, JSON Parsing, Google APIs, MYSQL

Lead Management System (LMS) is a Java project developed for an esteemed client of ours in the Internet marketing space. This project was developed to collect Lead information through their contact form and also the traffic source. By traffic source such as e.g. Google search, Google AdWords, Yahoo search etc. This application is using Google Analytics to track the Lead.

The end user(henceforth refereed to as Lead) may come to the contact form from various sources. Once s/he is on the contact form s/he needs to fill up the form and submit. On submit the form data along with traffic source is then saved in the server. Later on, the saved lead traffic source is integrated with Google Analytics to fetch other required data.

This application has two modules, LMSWeb that is responsible for saving the Lead data on the server database and LMSIntegrator module is responsible for integrating the lead traffic source on server with Google Analytics. For better transparency and ease of deployment these two modules are developed as separate projects.

LMSWeb is the web part of LMS application. It provides interface for clients to down load source code for contact form and other needed resources as zip file. It also provides service to which  the Lead form data and traffic source details are submitted in JSON format. It also maintains the tracking code that is needed for tracking a Lead and this Javascript tracking code will be directly loaded to the Lead's system, when s/he visits the contact form.

LMSIntegrator is a standalone Java application that will be scheduled to run every day. This application first gets all the Lead for a particular date (usually two days before). Then it fetches  all the required Lead information  for that day from Google Analytics. Compares the two lists and saves the relevant Google Analytics information in local database.


Keyword Tagging Tool

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java, GWT

Affiliate marketing requires tracking of source of ad to optimize marketing performance and it is passed on to as landing page tag. Since most affiliate marketing providers return sales data along with source of promotion by adverting source URL, Google's keyword landing page URL needs to carry keyword id in the form of tag value.

Since this process of adding the keyword id to keyword landing page URL takes long, it needs to be programmed. This tool automates the process to adding tag value to Google sponsored search keyword destination URL.


External conversion data

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java, GWT

This is an application to track conversion performance of paid search campaigns and thus import external source of data daily. There are three sources from where data has to be imported. First is Manual Import, where data is imported manually from a web based UI. Second is Email Import, where data is imported from email attachment files. And the third one is Remote Source where data is imported from FTP/SFTP/HTTP/HTTPS sources. Email Import is scheduled to run daily and all new emails are read. There is a feature to schedule Remote data Import on daily, weekly or monthly basis.


Java Library as Wrapper to Webservice

Client:
Software Service Provider
Industry:
Retail Industry
Technologies:
Java, Webservice client, Netbeans

This project aims to provide a Java library which is used as a wrapper for a webservice. The library is a JAR file, which consumes the web service and provides functionalities as per the requirements. The webservice includes various online retail transactions like Earn Loyalty, Redeem Pre-Pay etc. The java library can be used in Java applications, other libraries and Android applications.


Record Reader

Client:
Software Service Provider
Industry:

Technologies:
Core Java, Amazon WebService, XML Parsing, Apache log4j, MYSQL

RecordReader is a standalone java application, intend to recides on Amazon EC2 and use WebServices provided by Amazon.  The application starts by reading a configuration properties file and parsing it to find user provided  values for application properties. The properties includes log4j settings, Mysql credentials ,Amazon SQS credentials etc. If the credentials are validated, it then creates two threads to do the main job.

Application does its job in a loop. It first fetches a string message in XML format from Amazon SimpleQueueService, then parses the XML message using XOM library to get its contents to create a Record entity which presents one record entry of a car repairing shop.  A Record entity have some properties and Item entities again each Item entity have some  properties and SubItem entities and each SubItem have some property.  After creating a Record, the application then persists the Record's content along with the contents of all its Items and SubItems  to Mysql database mounted on Amazon RDS. Any errors if arising during this process will be persisted to database along with the record number and also written to log file. Also each important step of  the application is logged to a log file, which is created in a daily basis. After persisting one record or any exception the application deletes the retrieved message from the SQS Queue and continues with fetching another message from Queue. If no  message is available in the Queue, it sleeps for  some minutes provided  by the user in config file as application sleep time.

From the two threads created by the application, one does the above task, while other waits for shut down command given over Socket connection. On receiving a shut down command it initiates a shut down process by interrupting the above executing thread, which then does some house keeping job and leaves the loop to end the application.


Preferred Share Tracker

Client:
Insurance
Industry:
Insurance
Technologies:
Java 6, Struts2, Java Mail API, Apache log4j, jQuery

This is a web based project developed using Java Struts2 MVC architecture. This application provides an interface to track shares and maintain their details. Here different level of users are defined  such as investor, advisor /broker and administrator.

Administrator account will have access to setup total shares and share price and dividend percentage. Also there is an option for set dividend calculation date range, which will calculate all  investor's investments dividend amount based on their investment amount. There are different types of functionality like event, follow ups are available for administrator and advisor/broker account to follow up investors.

Administrator account can assign advisor/broker against any investor. Advisor/broker account can login to their account and check their investor list along with their follow ups, if any. Also Investor account also can login and check their investment details.


Campaign Extension

Client:
Internet Marketing Agency
Industry:
Sales and Marketing
Technologies:
Java, GWT

Google AdWords Campaign has some extension features such as Location Extension, Location Sync Extension(addresses from Google places), Sitelinks extension. These extension enhance the properties of an AdWords campaign. It gives more meaning to an ad. Along with these AdWords has its own Conversion tracking feature. This project deals with adding these features to the existing Google AdWords management module.


Books Management

Client:
Software Service Provider
Industry:
Education
Technologies:
Java, MySQL, GWT

This application provides a web-based interface to manage the content of its front end website. The front end website is an educational software which displays books for a particular grade.

By the use of this application the user can easily add or edit the content of books and manage their details. It also has an option to upload the data from CSV files with a predefined structure. The UI is AJAX based and developed using GWT.


Order Delivery System (ODS)

Client:
Windows And Doors Manufacturer
Industry:
Manufacturing Industry
Technologies:
Java, JSP, Servlet, Struts Framework

The ODS is designed to be handled by direct dealers of various products offered by the production farm. All dealers can create their own admin account using their valid account number and thereafter they can create user under them. Dealers can set permission, pricing preferences and product preferences for their corresponding users. Users will work with the ODS to place QUOTE or BID or ORDER for a particular product with in their respective authorities or permissions. Dealers or the admins of a particular account will have the authority to setup or modify users.

In the user part, a user can place a QUOTE or BID or ORDER for any product as per the permission granted to them by the dealer or admin. While placing an order, to view the product for the given dimension will be displayed by the system, which is generated dynamically. After the user accepts the view it goes to the pricing section where the pricing for that particular order is done. There after the final acceptance from user it moves to the checkout for billing purpose. A user can view any placed order and can take a dynamically generated receipt printout at any time. One can also edit an incomplete order at any time. A user can check the status of the order placed as they are in process in the production farm. While placing a QUOTE or BID or ORDER, user can choose the shipping type from few options provided by the farm.  

The ODS also provides a rapid response window for their users, which opens during the working hours of the production farm. This window works with urgent orders or quotes and helps the users to get quick response from the production farm.

On the user end two new features have been implemented . Those are International sales and CPD# return to online feature.  

The International sales feature provides the capability of using International zipcodes in the ODS This enables the usage of Canadian zipcodes as well as US zipcodes while placing the QUOTE, BID or ORDER. This feature also provides appropriate validation rules for the international zip codes .

The CPD# return to online feature shows the values of UValue, SHGC, VT, CR, CPD# and Energy Star Regions in the ODS.  These values are visible for each of the windows and are available on the display screens as well as on the PDF s in printable formats.


Student/Class Registration System 

Client:
Education
Industry:
Education
Technologies:
Java, MySQL, Java Script, jQuery

This application provides a registration module for a school. The administrator creates a subject and manages user details. An instructor then assigns a subject to his class and issues secret code for students to register in a class. The student then uses the code to join the class before the registration ends. This module also has a forum space for each class, in which all class members can interact. It also has a web-service where all user personal details are uploaded to a more secure MySQL server and is removed from the current hosted server.


VB DLL

Client:
Software Testing Company
Industry:
IT/SW
Technologies:
Java (JNI), C++, VB 6.0

We created an C++ dll to act as an interface between Java application and VB dll.

The Java application accesses the C++ dll by the use of JNI. The Java application provides inputs to C++ dll through JNI which then calls the VB dll, provides inputs taken from Java application and transfers the result back to Java application. So the C++ dll acts as a mediator between Java application and VB dll and JNI acts as a mediator between Java application and C++ dll. This is used where there is a need to access the native code in Java application and vice-versa.


XML Parser

Client:
Online E-Book Service
Industry:
Publishing
Technologies:
Java and MySQL 5

We developed a command line application which takes either 4 or 6 parameters. Parameteres are "--c" with "application config file", optional "--d" with "database config file" and "--x" with "Xml file". It parses whole XML file content and inserts content in two different MySql database with different needs.

It also handles duplicate products present in the XML file while inserting them into database. If it finds same product in the database while inserting product in the database, it updates old product with the new product based on unique product number or duplicate product name.  

It inserts product using unique product number in one database and using unique product name in other database. It stores all the product related information in different tables for different purposes.


ACS – Advanced Uploader

Client:
E-Book Service
Industry:
Publishing
Technologies:
JAVA, JAVA SWING, Adobe Content Server (ACS) Web Services, ImageMagick 6.6.2.6

AdvancedUploader is an EPUB / PDF genuine e-book uploader for Adobe Content Server (ACS). AdvancedUploader and ACS services needs three files for each e-book, one EPUB / PDF file, one information XML file and another JPG file.

The user of the application needs to browse the folder with the source e-books (ie EPUBs / PDFs , XMLs, JPGs). Features of the applications are listed below:

1. Indicates if any EPUB / PDF or XML or JPG files are missing for a particular item.
2. Generates missing XMLs in the selected directory automatically.
3. Generates thumbnails of three different sizes (i.e. small, medium and large) automatically from the available JPG.( Application has the ability to handle both CMYK & RGB images. ImageMagick is used for this feature).
4. Uploads hundreds of e-books at a time.
5. Transfers all recently uploaded e-books to different distributors with LOAN rights.
6. Lists all items available in ACS in a custom table grid with Transfer (with LOAN rights) feature.
7. Updates LOAN rights of all items under all distributors at one go. It also has the functionality to update LOAN rights to of all items under a particular distributor.
8. Exports all items XML for each distributor.
9. Replaces any existing e-book on ACS.
Also has Settings and Configuration options for custom server settings.


Java Robot Application for Automates polling solution

Industry:
Education
Technologies:
Java, Apache FTP Server, MacOS 

We developed a java command line application which automates the polling process by reading poll time from file and start and stop poll at specified times.  Poll time can be changed or added in the poll time code file as needed. It also generates report of the poll done at specified time during the poll by reading polling data from file, sort the data and creates images from sorted data and send images to remote video server.


BI for Performance Management

Client:
Management Consultant
Industry:
Telecom (Customer Service)
Technologies:
Java, Pentaho Report Engine, Pentaho Kettle, Liferay 

This is an application which shows near to real time reports to end users. Analytical data is collected from several end users. This raw data is then processed by Pentaho data Integration (Kettle) to carry out the ETL process to persist the aggregated data in a data warehouse. The aggregated data is used in the reports. Reports are prepared using Pentaho Report designer and integrated in a Liferay portlet using Pentaho Report Engine.


JSON Query

Client:
Korea
Industry:
Software Services
Technologies:
Java Swing, JavaScript, jQuery

This is swing based standalone application for PC, which is used to create the JSON data from html files. The user can select a directory where the html files are present,  all the html files will be displayed in a list. Users can view and read the content of each html file and able to generate corresponding JSON data. The JSON data will be saved in "search.js" file.

We designed a search module on web manual which runs on Android-enabled smartphones and tablets as well as PC. User can search by entering a text in the input search field. The search results page will display title and associated paragraph of found search phase, which is retrieved from the JSON file(search.js). Users can view the details of a html page on selecting an item on the list as search results.


Java - Blackbox

Client:
Education
Industry:
Education
Technologies:
Java Swing, Java Sound API, Java Mail API, Apache log4j, MySql 

Blackbox is a GUI based desktop application developed in java and designed to run on both windows as well as Linux platform. Java Swing API is used to provide a nice user interface. This application is unique in the way it handles mp3 files. Unique, because java provides minimal functionality for splitting sound files and natively does not supports mp3. Blackbox mainly consists of two modules i.e. segmentation module and customer management module.

The segmentation module is responsible for splitting a large mp3 file into smaller clips based on silence as a separator between the clips. It then matches each clip to a unique text line from a text file and names the clip as per the text line and stores the clip as an individual mp3 file in the physical file system.

It also makes database entry for each clip with details such as storage location, base mp3 file etc. The duration of silence & destination to store mp3 files is specified by the user in a configuration file. And base mp3 file and text files are browsed by the user through the UI. The user can also manage the mp3 files so processed, like he can play an mp3 file or delete it. An mp3 file is played through java Sound API.

The customer management module is where the administrator can create new customer and manage existing customers. When a new customer is created an introductory e-mail will be sent by the application to the customer, the message will consists of all the customer's needs to access the service i.e the credentials. For sending mail the application uses java Mail API. Blackbox uses Apache log4j for logging various activities by the user into a log file.


Chat App testing

Client:
Messaging App
Industry:
Mobile
Technologies:
Java

This is a group messaging app which allows users to have one-to-one and group conversations on any network in India. It allows users to send a fixed number of SMS per day, allowing them to chat with users who do not have the app installed on their mobile phones. The app allows users to share media in form of photos, videos and audio content as well as location sharing facility. The app supports IP messaging and incorporates cloud storage for SMS and media messages sharing. It also allows Facebook and Twitter integration. The app enhances the user experience by adding contextual information to user conversations, allowing them to find a nearby hangout place, check out the latest sports score or book a movie ticket. Our QA team was involved in performing the GUI, Functional, Usability and Performance testing of the chat application with complete reporting of steps performed and bugs encountered. It also reported screen-shots and logs captured during the course of the testing. The QA team followed a blend of scenario based and test case driven approach to test the app installation, sign-up, conversation management, media sharing, location sharing, contact management, notifications, profile and account information management. Besides reporting bugs in the app, a number of enhancements were suggested to improve the app's usability and to tune it according to the targeted markets.


Marketing Automation System

Client:
Online Marketing Automation
Industry:
Publishing
Technologies:
JAVA 6, WebObjects, Webservice(SOAP), Apache Axis, Apache Commons Exec, MySQL5, InDesign CS5

This website deals with pre-press process in an efficient manner. There are several modules, which handles InDesign document processing for storing, formatting, media templates, users etc. It also defines and brings the scope to manage workflow, which handles the media approval process. This system mainly works on InDesign documents, which is provided by users according to their requirement. Document will be uploaded via InDesign plugins, which is a custom product developed by the client who uses java SOAP web service for exchanging data in XML form generated by InDesign.

We have implemented new features such as:
• Version compare, which compares different versions of a documents(InDesign) on the fly using third party tool ImageMagick.
• Measuring tool, which calculates the original distance between two selected points on an indesign document,
• Added Advanced pricing option to their existing excel plugins..


Reports for Healthcare

Client:
Healthcare Service
Industry:
Healthcare
Technologies:
Java, Jasper Reports, Sybase

The project dealt in transforming Java Reports (which were previously deployed in the client's application) into Jasper Reports. The reports created in this project used custom datasources as well as customizations handled through Java using Scriptlets. The backend was supported by Sybase, and the data was pulled out from database using Java Beans and loaded into the custom Datasource which in turn was used in the Jasper Report.

The report type can be broadly categorized into four types-
1. Simple Jasper Report – these reports were dependent on a direct SQL Query for the datasource and the parameters created for these reports catered as the filter for the report.

2. Report with Custom Datasource – These report were which had custom Datasource set via custom JR Datasource and Java Beans. To customize some portions of the data Scriptlets have also been used.

3. Reports designed especially for XLS Export – These were special reports which were optimized for the XLS Preview, cutting the titles and the logo from the normal report

4. Reports to generate Form – These were special reports in which the forms were generated (both blank as well as filled forms). They were specially designed to incorporate a form type view.


Liferay – Aperte Workflow Integration

Client:
Software Service Provider
Industry:
IT
Technologies:
JAVA, J2EE, Liferay, Aperte, Vaadin, MySQL

The basic idea of the application is to gather information from the companies who are interested to take part in the Job Fair. It's a kind of step-by-step form filling and validation application. After filling up the form the set of information is assigned to the administrator for checkup and validation. If accepted, the registration is successful and the data is saved in the database. If rejected, then the data is again assigned back to the User for modification.

Technically a workflow is designed to achieve the same using Aperte Workflow. Basic forms are designed in Aperte Workflow itself but lots of functionalities are developed using Vaadin custom widgets. For example, 1. Image Uploader Widget - This uploads company logo to Liferay document library.
2. Profile Contacts Widget - This widget adds multiple contact information for the particular profile.
3. Profile Job Widget - This widget adds multiple Jobs for a particular profile.
4. Save Record Widget - This widget stores all the data in the Liferay expando table.
5. Generate Report Widget – This widget generates jasper reports based on the user data input.
6. Select Assignee Widget – This widget helps the admin to assign a particular task to a user.

Here the entire Aperte Workflow is customized. Lots of new feature are added in Aperte. The entire i18n functionalities are customized. Here are few elements that are added to Aperte Wokflow,
1. Embedded Widget Element - This helps to view Image directly from process attributes.
2. Twin Column Multi-select Element - This is a multi-select widget.
3. Country Combo-box Element - This is a Combo-box to list all country names from Liferay.

Contact Aperte Workflow: This is basically a contact form for user. Here user can place any contact request to the admin. When user place a contact request, the application stores the data in an expando and trigger an email with the information to both the Admin and User. User here also gets an option to upload any file.

Survey Aperte Workflow: This is basically a Survey workflow for users. Here user can take part in a survey, but only once. When user enters the input for the survey, that data is stored in a expando. After placing the survey once, if the user opens the link again, the final preview page with all the data will be shown.


Liferay - Event Portlet

Industry:
Software
Technologies:
JAVA, J2EE, Liferay, MySQL

Here we have customized Liferay's Calendar portlet using Hooks. New event types are added to the portlet. We have added few detail fields on event entry section using expando bridge. In configuration section we have also implemented a new settings part, where administrator can choose which event types to be allowed / restrict.

User can only add events for permitted event types.

Event portlet is totally based on Liferay's calendar portlet. The events that are added by users in the Calendar portlet are listed on the event portlet in a search container. Here a filtration based on Event Types, Categories and Subcategories are implemented. All the permitted / allowed event types are listed in the type combo-box. On selection of any one item, it refreshes the event list. For e.g. if the user select "Birthday" from the Type combo-box, then the process search all event with the particular event type and refresh the list. Now the list will show all the "Birthday" events. The mechanism is same for both Categories and Subcategories filter section. Categories are loaded from Liferay Categories using vocabulary name. When a user selects a particular category, then the process loads all subcategories for that category.
The search technique used here is default Liferay search. All required parameters are passed from the application.

In the event portlet's preference section, administrator can modify event type permission settings. These settings will only restrict event portlet from processing restricted event types. These settings will not hold any effect on Calendar portlet.


Liferay - SolrSearch Portlet

Client:
Software Service Provider
Industry:
Software
Technologies:
JAVA, J2EE, Liferay, Solr, MySQL

Solr is the popular, blazing fast open source enterprise search platform from the Apache Lucene project. Its major features include powerful full-text search, hit highlighting, faceted search, near real-time indexing, dynamic clustering, database integration, rich document (e.g., Word, PDF) handling, and geospatial search. Solr is highly reliable, scalable and fault tolerant, providing distributed indexing, replication and load-balanced querying, automated fail over and recovery, centralized configuration and more. Solr powers the search and navigation features of many of the world's largest internet sites.

The portlet we have created is based on Solr engine. It is basically a kind of search engine with lots of other feature which works with in Liferay. To achieve the same we integrate Solr engine on Liferay 6.1.1, which handles the search portion.


Gaming Application

Client:
Software Products Provider
Industry:
Gaming
Technologies:
JavaSE 7, SmartFoxServer2X(2.9), SmartFox Java Client API (1.3.2), Spring Core 4.0, ZMQ 3, jZMQ 4, Maven, Junit, TMX, Swing, Eclipse Juno, NetBean 7.3, GIT, Linux Ubuntu 12, Oracle Virtual Machine 4.3

Developed a gaming application, where users can change avatar, join different rooms, sit, jump, fly, swim, place bomb, cast spell, filters and do lot more things. We made use of the SmartFoxServer software which provides lots of gaming in-built functionalities like create zone, room(static, dynamic), room capacity, users, players, spectators, NPC, invitation, buddy, kick, ban user etc.

We worked on SmartFoxServer extension to customize some of its base event requests, and along with that also added some new client request service on it. This custom extension helped to customize/intercept request and/or response coming to and from the game engine. Parsing TMX file was done to get the game room map details and check for user each movement. From this java extension one can access PHP API via ZMQ.

Along with that created a separate standalone service(API-Connector) to listen to any update from web portal like Server Push notification. This API-Connector uses SFS JavaSE client API to interact with the game server.

Also worked on a simple load testing tool for this application using SmartFoxServer JAVA Client API(1.3.2). It provides options like enter the number of clients, server details and events(specific or sequence of events). For the interface we used Swing.


Online Offline Content Management Application

Client:
Software Services Provider
Industry:
Software
Technologies:
Java, JSP, Tomcat, Backbone.js, JQuery,  Cloud (GCP)

This application is a cloud based application that enables the user to manage information across contexts and provides work-space to store all the information which is accessible both in online and offline mode . This can include important office or personal documents that are used in day to day life. It  also enables online collaboration and sharing of information between users  in a secure, reliable and scalable manner.

The application consists of a web application and a toolbar that facilitates easy access and management of all your information including web searches, bookmarks, files, notes, and more.  It consists of the following features:

1. Stream/Project Management: This allows the user to create a project which can be thought of as an alias for a desktop folder wherein he can manage all his documents. He can add or bookmark important URLs under this stream, create new documents, upload files to this stream.

2. Links and Attachment Management: This deals with the file upload functionality of the application. A user can upload multiple files in various formats to the streams/projects he has. The files get uploaded to the current project that has been selected. The application also facilitates adding references to links or URLs to a stream.

3. Tabs Management: This feature helps in better organizing all the contents of a stream/project. Tabs automatically organize information into various sub-folder kind of structures.You can also create custom tabs and move the contents of one tab to another.

4. Notes Management: This module enables a user user to add important information to the project context. This is in the form of notes. A note can contain text, images, tables and has drag and drop and clipper functionality. The URL references automatically get added to the end of a note when some information has been added from a URL.

5. Contacts Management: This allows the user to add other application users as contacts and he can share information with them. The application allows sharing of streams and all its content with other users.
It also has a chat module where the user can connect with his contacts and can also collaborate over emails.

6. Notification Management: This keeps the user up to date with all the recent activities that have been going  on in his projects/streams. The web application provides real time notifications to the user for the activities in his inbox.

7. Form Builder:This feature of the browser application helps create highly customizable forms with drag and drop feature wherein you can drag a form element and drop it into the container. The form is available to users after publishing.

8. Online/Offline Workspace Management: This provides ability to work in both online and offline mode,  and enables the user to use the product  like he his Personal computer. Instead of creating folders and sub-folders on his desktop, he can create stream and arrange information across tabs. The user can make some changes in offline mode and the application asks him to sync the changes when in online mode.

The application has a toolbar which provides you with all the key features and can be added as a plug-in and users can view their inbox, download items, post comments, view and comment on notes and much more through the browser application using any browser including Internet Explorer, Firefox, Chrome, Safari or Opera.


Order & Process Management

Client:
Software Services Provider
Industry:
Business Consulting
Technologies:
Angular Js, UI frameworks(Ionic Framework, Bootstrap), RESTful web services with Java (Jersey / JAX-RS), Hibernate, JPA, JasperReport

This project have features to display orders and processes. User can add and edit the processes, operations, consumes and produce. API were used to get , post and update the data. Following functionalities has been implemented:

- Order Checklists: Shows the list of orders with add, update, import, search and select.
- Order Checklist Detail: Shows the order detail, with delete and print options.
- Manufacture Process List: Shows the list of manufacture processes with add, update, search and select.
- Manufacture Process Detail: Shows the manufacture detail, with delete and print options.
- Operation form: In this form user can edit the operation code, description and can add the consume and produce of operation.
- Consume and Produce Modal: This modal has designed to edit and add the operation consume and produce.

The project is to develop APIs to generate various PDF reports based on the data as provided by the data APIs, and also to secure the report APIs with access tokens.

The reports are developed in Jasper Report using JasperSoft Studio. Auth Tokens are used so that various client applications can have assess the reports securely. Each Auth Token is associated with an user , and the user must have the read permission to the reports resource to view the reports using the Auth Token. The client application must call the report APIs with the Auth Token, and the Auth Token is validated to have the required permission before providing the reports to the client application. The Auth Token APIs and the report APIs are developed using RESTful web services with Java (Jersey / JAX-RS).


Form Sweeper

Client:
Internet Marketing Agency
Industry:
Santa Clara, CA
Technologies:
Javascript, JQuery, Java, JSP, Servlet

This application builds marketing forms and buttons. The form built by this application is highly customizable with features like choosing form templates, applying manually created style sheets, customizing CSS, field and form properties etc. The most important feature is that the form can also include various marketing scripts. It has the vendor marketing script included by default.

The button builder generates buttons with marketing tags included in the destination URL, so that the destination can obtain the source and various other marketing information. The button built by this app is also highly customizable with features like editing style, image, text and also it provides various social buttons for social apps. The customized buttons can also be included in the form built by form builder application.


Finance Application

Client:
Enterprise Software Solution Provider
Industry:
Finance
Technologies:
Java, Spring, Hibernate, DbVisualizer, Maven, Ajax, jQuery,Advanced Object Oriented Javascript

Designed and developed a finance application that had functionalities like Data reviews, inventory management  profit and loss definitions for a food chain.

It consisted of a Budget Application which is primarily a web application that provides a robust functionality as is expected from a financial web application. This application provide means for reviewing business unit performance by storing records for inventory, finance, Advanced Payments etc. It allows managers to quickly review, evaluate and provide feedback on the performance of the individual units through out the organization.

Designed an application to quickly review data by managers by looking at different reports for any branch of the food chain. You can also review data for a region having multiple branches and summing those up. It also granted different roles to Managers like Regional manager, Sector manager and District Manager and thus the data review capability.

A task list setup project was developed which has functionalities like Sub GL Setup, Template Setup, Automated Close, Unit Type Setup, Task List Setup. Task List Assignment, Client Vendor Setup, Client Account Setup, Client Invoice Processing. It uses spring and hibernate for backend development. It maintains the front end by HTML, CSS, Advanced Object Oriented JavaScript. The application uses jQuery and Ajax to fetch all the related information from the Database and represent in a proper way.


Project Management Application

Client:
Software Services Provider
Industry:
Information Technology
Technologies:
Servoy, Java, HTML, CSS, JavaScript, PostgreSQL

The application is mainly consists of mainly four modules, i.e. contacts, project, time-tracking and wiki.

Contact module manages all companies and organizations such as prospects, customers and suppliers. It also manages all information related to employees/staffs and easy way to find skilled people to be associated with projects. Contact profiles are integrated to view their LinkedIn profile.

Project module is build to manage projects, including internal projects, leads, opportunities, staff association, etc. Projects are managed with the flexibility to breakdown work in different structures as its demands, by applying different cost types, such as internal laboratory, external laboratory, material costs, travel costs and other user defined costs. It also has provision to divide the projects into multiple project elements by mapping to different project structures easily.

Time-tracking module is an add-on to project module, to easily track the time consumed by staffs for all activities related to project and billing accordingly. It also has the capability to auto-manage holidays for 14 different countries based on certain calculations, which helps to manage staff allocation better.

Order module used to manage proposals, orders, purchase orders, customer invoices, suppliers billing, etc.

Wiki module is designed to help users get information related to features associated with the application along with the snapshots. An additional key feature implemented within the application to collaborate between staff members. It includes, text communication, image sharing, etc.


Retail Platform

Client:
Software Product
Industry:
Retail
Technologies:
Java, J2EE, JSP, Apache Wicket, BIRT, MySql, Maven, Bootstrap

The platform consists of 3 major modules, i.e. Online Order Placement and Accounting, Online Sales Tracking and Customer Relationship Management.

Online order placement and accounting module enables placement of orders online. The following are the main four functional sections:

- Administration helps to manage products, pricing, inventory, customers, users, setting/configuration
- Order section enables users to derive quotes, placing/fulfill of orders, managing recurring orders, handling back-orders, manage wish-lists, etc.
- Accounting helps to manage invoices, A/R aging
- Reporting section provides various reports in related to order, accounts, etc.

Online sales tracking helps sales person/managers to track their customers (groups, which combines many customers together) sales statistics. Sales manager have ability to track activities/performance of each sales person associated with him/her. Dashboards are implemented  for each user group to help them seeing summarized statistics at one place, where the Google Chart APIs are being used.

Customer relationship management module is created to manage leads, opportunities, projects, activities/to-do. There are multiple reports in every section of the application which are done in BIRT.


Business Process Management Application

Client:
Software Products
Industry:
Publication
Technologies:
Lasso, Java, PHP, MySQL

This is a business process management application for a publication company. The application has a 2-tier architecture with Project and Product(SKU) associated with Project. There are several users in the system who are responsible for different tasks like upload artwork, assign users, review artwork, etc. There is annotation module integrated with the application which is used to view the uploaded artwork with many features like add / edit annotation, zoom in / out, pan, rotate, approve / reject etc.

There is a SOAP service which helps to add project / sku from third party application and also calls third party service when status changes in the application. Some other modules of the application are task dashboard, asset management, advanced search, task delegation, user/role management, reporting such as work in progress report, late reports including emails etc.


Management Information System

Client:
Software Product
Industry:
Publication
Technologies:
Java, Spring MVC 4, ExtJS 5, MySQL

This application is built as an internal support system to help processing the estimates / costs for producing art-work. It is integrated with a business process management system, ability to synchronize project/SKU level data. It have features to dynamically generating reports which helps in making high level decision.

There are other modules like asset management, advanced search, bookmarks, history etc. Built into this application. It is developed using ExtJS for all UI components and Restful services using Java, SpringMVC.


Print Management System

Client:
Software Product
Industry:
Printing
Technologies:
Java, Servlet, JSP, ExtJS, MySQL

This application keeps track of the approved artworks related to project/sku printed in the organization with the estimates and invoices. Project and related SKU records are created in the system. The cost associated with SKUs are recorded. The estimate is generated for each Project / SKU. After completing of SKU, Invoice is generated individually or collectively. There are asset management module, advance search module and reporting modules in the application. User can view reports and download them in CSV format.


News & Updates

  • January 17

    DDM IT Quiz, Inspired by Mindfire, is Spreading its Wings!

  • December 16

    Santa in a different Avatar- International vacations gifted to All Mindfireans!

Let us Connect!

Related Pages

  • Our Java Skills
  • Our Mac OS X Skills
  • Our SQL Server Skills
  • Our Web Development Skills
  • Our Development Skills

Awards and Achievements

Red Herringcolor DeloitteFast50 DB ZInnov1   Nascome  DB Stpi

This site uses cookies. We respect your privacy.copyright (c) Mindfire Solutions 2007-2018. Login